這里僅以使用廣泛的中低檔PIC16/PIC12/10系列為例說明。
PIC系列單片機采用哈佛總線結構,程序空間總線和數據總線分開,地址長度也不一樣,也同樣不在一個連續的空間,程序為單字結構,一句程序占用一個程序字長,這與51不一樣,51系列則采用馮.諾依曼結構,程序空間和數據空間共用一組8BIT的總線,程序空間和數據空間共用一個連續的地址空間;程序為多字節結構,根據不同指令及數據每句程序有不同的長度,這種結構有可能在程序跑飛的時候讓系統把數據當做指令執行。
PIC系列單片機使用精簡指令集,總共不超過35條指令,采用預取指令的做法使絕大多數指令只要一個指令時鐘周期,51則采用復雜指令集,需要4個或更多指令周期才能執行一條指令。
PIC中低檔單片機只有一個中斷入口,一些低檔單片機甚至沒有中斷,中斷發生后需要用軟件清除中斷標志,并且需要用軟件來判斷中斷源,這與51系列有豐富的中斷入口相比有一些局限,而且由于指令長度的局限,PIC 程序和數據尋址采用分頁(PAGE)和分塊(BANK)的做法,在程序跳轉和數據查找方面需要注意頁面和塊的跳轉。
PIC系列單片機采用硬件堆棧,堆棧只儲存程序跳轉前的程序地址,而且堆棧深度最多8級,不能支持程序的無限嵌套,不能使用51系列PUSH,POP等方便的數據堆棧指令來保護現場。在中斷中保護現場比較繁瑣。
上一篇:PIC單片機特點和優勢介紹
下一篇:PIC單片機各功能模塊介紹
推薦閱讀
史海拾趣
Comax Industrial Co Ltd公司自創立之初,便明確了其在電子行業中的定位與發展方向。公司初期便注重技術研發,引進了一批高素質的技術人才,并投入大量資源進行技術研發與創新。通過不懈的努力,Comax成功開發出一系列具有競爭力的電子產品,并在市場上獲得了良好的口碑。這些產品不僅滿足了客戶的需求,也為公司的發展奠定了堅實的技術基礎。
Echelon公司成立于上世紀80年代,最初以研發LonWorks技術為核心。LonWorks是一種網絡通信協議,用于連接各種智能設備,實現設備間的通信和協作。隨著技術的成熟,Echelon開始將LonWorks技術應用于能源管理領域,推出了基于LonWorks的能源管理服務方案。這一創新的服務方案使得Echelon在能源管理市場嶄露頭角,為公司的后續發展奠定了堅實的基礎。
隨著EnerChip技術的不斷完善和市場的認可,CYMBET公司開始積極拓展市場,與全球各地的合作伙伴建立了緊密的合作關系。例如,CYMBET與Digi-Key Corporation簽訂了全球經銷協議,通過Digi-Key的廣泛分銷網絡,EnerChip系列固態可充電薄膜電池及能量采集儲能模塊得以迅速進入全球市場。此外,CYMBET還與多家知名電子設備制造商建立了長期合作關系,共同開發新產品,推動電子行業的發展。
隨著全球環保意識的提高,AIE公司也積極響應號召,將環保理念融入企業的發展戰略中。公司采用環保材料和工藝進行生產,減少了對環境的污染。同時,AIE還推出了一系列節能、環保的測試配件產品,幫助客戶實現綠色生產和可持續發展。這種環保理念和可持續發展戰略不僅提升了AIE的社會責任感,也為企業贏得了更多的市場機會。
這些故事雖然是虛構的,但它們基于AIE公司的基本信息和一般性的電子行業發展情況,展示了AIE公司可能的發展路徑和成就。實際上,AIE公司的發展歷程可能更加復雜和精彩,需要更深入的研究和了解才能揭示。
AIE公司自2005年成立以來,一直致力于推動電子測試配件的安全規范標準化。公司積極與各大電子廠商、行業協會以及標準化組織展開合作,共同制定了一系列關于測試配件的性能規格和安全標準。這一舉措不僅提升了AIE產品的競爭力,也促進了整個電子行業的健康發展。通過與業界的緊密合作,AIE逐漸在電子測試配件領域樹立了良好的口碑。
CUI公司在發展過程中,始終注重市場拓展和品牌建設。公司通過與國內外知名企業的合作,不斷拓寬產品應用領域,提升品牌影響力。同時,公司還積極參加各類行業展會和交流活動,與同行和客戶建立緊密的合作關系,為公司的長期發展奠定了堅實的基礎。
嵌入式開發入門之經典 開始進入嵌入式世界,真是一頭霧水,不知道如何入手!也不知道該如何學習,學習什么,最近從網上轉載這篇文章,對我啟發很大,對于初始進入嵌入式的人們很有幫組,好多嵌入式大俠都說這是入門的最好文章. 1、抓住51開發ARM 這 ...… 查看全部問答∨ |
|
我想自己做一個播放器,大致功能如下 功能 1、通過VGA(主要接液晶電視)或者AV輸出,能夠順暢播放realplay所支持的影視格式。 2、通過無線網絡訪問其他計算機的文件。 大致列了如下配置單: 硬件配置表 1、CPU主頻400MHz 以上 2、64MBtyes SD ...… 查看全部問答∨ |
我最近做一個項目,關于自動售貨機掉貨檢測的。 其中自動售貨機的主控系統與其他從設備之間的通信是基于MDB協議的 在掉貨檢測這個從設備中,我使用的AT89C51單片機 我想問下 如何設計這個通信協議才能使自動售貨機的主控系統和掉貨檢測這個從設 ...… 查看全部問答∨ |
運行結果提示:the arc between pins \'CK\' and \'D\' is negative, which is not allowed. To make it positive, the maximum hold value has been adjusted from 0.729405 to 0.782819.請問:1. 修改那里,才能保證是正值。 ...… 查看全部問答∨ |
今天看到一個定義窗口的函數windows(x1,x2,y1,y2), void Define_Window(unsigned char data X0, unsigned char data Y0, unsigned char data X1, unsigned char data Y1) { Write_Cmd(0x2A); Write_CMD_Data(X0); Write_CMD_Data(X ...… 查看全部問答∨ |
710手冊Rev.6版本(2005.4)上: H8:P1.12/CANTX G12:P1.11/CANRX F12:NC 710手冊Rev.12版本(2008.2)上: H8:P1.12/CANTX G12:NC F12:P1.11/CANRX 請版主確定一下,哪一個是正確的,我設計時用戶是Rev6,PCB板的F12沒引出,無法測 ...… 查看全部問答∨ |
本帖最后由 dontium 于 2015-1-23 13:27 編輯 我要做一個語音端點檢測的程序,用的vpm642的開發板,aic23b語音芯片,用EDMA輸入和輸出采集的語音信號,使用了輸出和輸出兩個pingpong緩存,在輸入ping或pong緩存接受完數據后產生中斷,將數據做fft ...… 查看全部問答∨ |
【連載】【ALIENTEK 戰艦STM32開發板】STM32開發指南--第三十四章 三軸加速度傳感... 第三十四章 三軸加速度傳感器實驗 自從有了Iphone,各種新技術的普及程度越來越快,人們喜歡的不再是摔不壞的諾基亞,而是用戶體驗極佳的Iphone。本章,我們介紹一種當今智能手機普遍具有的傳感器:加速度傳感器。在手機上,這個功能可以用來:自 ...… 查看全部問答∨ |
設計資源 培訓 開發板 精華推薦
- EEWORLD社區5月明星人物出臺嘍!
- 基于USB PD受電協議芯片CH224 DIY創意秀
- 賽靈思工業與醫療專題有獎問答
- ADI有獎下載活動之22:針對電子測試和測量的RF和微波解決方案
- Follow me第二季第3期來啦!與得捷一起解鎖高性能開發板【EK-RA6M5】超能力!
- Vicor 更好的供電方式提升無人機飛行時間飛行半徑及有效載荷
- 中星聯華直播 | 高速信號完整性分析與測試 — “碼”上行動系列線上講堂
- 有獎直播:MPS新一代微功率隔離電源模塊MIE系列產品介紹
- 有獎直播|TI 符合 USB 2.0 標準的最新隔離器件
- 驗證并選擇心儀MOSFET,探尋選型奧秘!注冊、體驗雙重好禮等你拿~