找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 5609|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

一文讀懂PIC單片機(jī)的技術(shù)特性和優(yōu)勢(shì)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
對(duì)于電子工程師而言,PIC單片機(jī)是非常重要的一個(gè)產(chǎn)品。PIC單片機(jī)是一種用來(lái)開(kāi)發(fā)的去控制外圍設(shè)備的集成電路,一種具有分散作用(多任務(wù))功能的CPU,與人類(lèi)相比,大腦就是CPU,PIC共享的部分相當(dāng)于人的神經(jīng)系統(tǒng)。



PIC單片機(jī)的特點(diǎn)


PIC 單片機(jī)是一個(gè)小的計(jì)算機(jī),PIC單片機(jī)有計(jì)算功能和記憶內(nèi)存像CPU并由軟件控制運(yùn)行。然而,處理能力—般,存儲(chǔ)器容量也很有限,這取決于PIC的類(lèi)型。但是它們的最高操作頻率大約都在20MHz左右,存儲(chǔ)器容量用做寫(xiě)程序的大約1K—4K字節(jié)。時(shí)鐘頻率與掃描程序的時(shí)間和執(zhí)行程序指令的時(shí)間有關(guān)系。但不能僅以時(shí)鐘頻率來(lái)判斷程序處理能力,它還隨處理裝置的體系結(jié)構(gòu)改變。如果是同樣的體系結(jié)構(gòu),時(shí)鐘頻率較高的處理能力會(huì)較強(qiáng)。


因?yàn)镻IC單片機(jī)可以把計(jì)算部分、內(nèi)存、輸入和輸出等都做在一個(gè)芯片內(nèi)。所以它工作起來(lái)效率很高、功能也自由定義還可以靈活的適應(yīng)不同的控制要求,而不必去更換不同的IC。這樣電路才有可能做的很小巧。


PIC單片機(jī)的優(yōu)勢(shì)


PIC最大的特點(diǎn)是不搞單純的功能堆積,而是從實(shí)際出發(fā),重視產(chǎn)品的性能與價(jià)格比,靠發(fā)展多種型號(hào)來(lái)滿足不同層次的應(yīng)用要求。就 實(shí)際而言,不同的應(yīng)用對(duì)單片機(jī)功能和資源的需求也是不同的。比如一個(gè)摩托車(chē)的點(diǎn)火器需要一個(gè)I/O較少、RAM及程序存儲(chǔ)空間不大、可靠性較高的小型單 片機(jī),若采用40腳且功能強(qiáng)大的單片機(jī),投資大不說(shuō),使用起來(lái)也不方便。PIC系列從低到高有幾十個(gè)型號(hào),可以滿足各種需要。其中,PIC12C508單 片機(jī)僅有8個(gè)引腳,是世界上最小的單片機(jī)。


該型號(hào)有512字節(jié)ROM、25字節(jié)RAM、一個(gè)8位定時(shí)器、一根輸入線、5根I/O線,市面售價(jià)在3-6元人人民幣。這樣一款單片機(jī)在象摩托車(chē)點(diǎn) 火器這樣的應(yīng)用無(wú)疑是非常適合。PIC的高檔型號(hào),如PIC16C74(尚不是最高檔型號(hào))有40個(gè)引腳,其內(nèi)部資源為ROM共4K、192字節(jié)RAM、 8路A/D、3個(gè)8位定時(shí)器、2個(gè)CCP模塊、三個(gè)串行口、1個(gè)并行口、11個(gè)中斷源、33個(gè)I/O腳。這樣一個(gè)型號(hào)可以和其它品牌的高檔型號(hào)媲美。


精簡(jiǎn)指令使其執(zhí)行效率大為提高。PIC系列8位CMOS單片機(jī)具有獨(dú)特的RISC結(jié)構(gòu),數(shù)據(jù)總線和指令總線分離的哈佛總線(Harvard)結(jié)構(gòu),使指令具有單字長(zhǎng)的特性,且允許指令碼的位數(shù)可多于8位的數(shù)據(jù)位數(shù),這與傳統(tǒng)的采用CISC結(jié)構(gòu)的8位單片機(jī)相比,可以達(dá)到2:1的代碼壓縮,速度提高4倍。


PIC有優(yōu)越開(kāi)發(fā)環(huán)境。OTP單片機(jī)開(kāi)發(fā)系統(tǒng)的實(shí)時(shí)性是一個(gè)重要的指標(biāo),象普通51單片機(jī)的開(kāi)發(fā)系統(tǒng)大都 采用高檔型號(hào)仿真低檔型號(hào),其實(shí)時(shí)性不盡理想。PIC在推出一款新型號(hào)的同時(shí)推出相應(yīng)的仿真芯片,所有的開(kāi)發(fā)系統(tǒng)由專(zhuān)用的仿真芯片支持,實(shí)時(shí)性非常好。就 我個(gè)人的經(jīng)驗(yàn)看,還沒(méi)有出現(xiàn)過(guò)仿真結(jié)果與實(shí)際運(yùn)行結(jié)果不同的情況。


PIC的引腳具有防瞬態(tài)能力,通過(guò)限流電阻可以接至220V交流電源,可直接與繼電器控制電路相連,無(wú)須光電耦合器隔離,給應(yīng)用帶來(lái)極大方便。PIC以保密熔絲來(lái)保護(hù)代碼,用戶在燒入代碼后熔斷熔絲,別人再也無(wú)法讀出,除非恢復(fù)熔絲。目前,PIC采用熔絲深埋工藝,恢復(fù)熔絲的可能性極小。


PIC單片機(jī)與MCS-51系列單片機(jī)區(qū)別


一、總線結(jié)構(gòu)方面


MCS-51單片機(jī)的總線結(jié)構(gòu)是馮-諾依曼型,計(jì)算機(jī)在同一個(gè)存儲(chǔ)空間取指令和數(shù)據(jù),兩者不能 同時(shí)進(jìn)行;而PIC單片機(jī)的總線結(jié)構(gòu)是哈佛結(jié)構(gòu),指令和數(shù)據(jù)空間是完全分開(kāi)的,一個(gè)用于指令,一個(gè)用于數(shù)據(jù),由于可以對(duì)程序和數(shù)據(jù)同時(shí)進(jìn)行訪問(wèn),所以提高 了數(shù)據(jù)吞吐率。正因?yàn)樵赑IC單片機(jī)中采用了哈佛雙總線結(jié)構(gòu),所以與常見(jiàn)的微控制器不同的一點(diǎn)是:程序和數(shù)據(jù)總線可以采用不同的寬度。數(shù)據(jù)總線都是8位 的,但指令總線位數(shù)分別位12、14、16位。


二、流水線結(jié)構(gòu)方面


MCS-51單片機(jī)的取指和執(zhí)行采用單指令流水線結(jié)構(gòu),即取一條指令,執(zhí)行完后再取下一條指令;而PIC的取指和執(zhí)行采用雙指令流水線結(jié)構(gòu),當(dāng)一條指令被執(zhí)行時(shí),允許下一條指令同時(shí)被取出,這樣就實(shí)現(xiàn)了單周期指令。


三、寄存器組方面


PIC單片機(jī)的所有寄存器,包括I/O口,定時(shí)器和程序計(jì)數(shù)器等都采用RAM結(jié)構(gòu)形式,而且都只需要一個(gè)指令周期就可以完成訪問(wèn)和操作;而MCS-51單片機(jī)需要兩個(gè)或兩個(gè)以上的周期才能改變寄存器的內(nèi)容。


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:617981 發(fā)表于 2019-12-10 10:53 | 只看該作者
不錯(cuò)說(shuō)的很好
回復(fù)

使用道具 舉報(bào)

板凳
ID:410640 發(fā)表于 2019-12-20 17:27 | 只看該作者
PIC開(kāi)發(fā)環(huán)境很頭大,花里胡哨的的錯(cuò)誤,特別是新的IDE X賊不好用 8.x的版本又早就不支持更新,而且我頭一次見(jiàn)一個(gè)能放在任何位置運(yùn)行獨(dú)立函數(shù),在某個(gè)特定位置(同樣的引用方式同樣的代碼,在那一行就會(huì)出現(xiàn)這問(wèn)題 )會(huì)出現(xiàn)編譯后跑飛的情況,在前后哪怕是加上個(gè)I=1;都能避免跑飛,同樣的頭文件,還會(huì)出現(xiàn)IO口單獨(dú)初始化寄存器后不受控的情況,一開(kāi)始還以為是代碼問(wèn)題,還是用控制變量法一個(gè)一個(gè)試才發(fā)現(xiàn)的,還有IDE X設(shè)置保護(hù)EEPR后,程序完全讀不到參數(shù),手動(dòng)查看又能讀出,同事用舊版和我一樣設(shè)置,他的沒(méi)問(wèn)題。純粹吐槽,也很可能是我自己學(xué)藝不精,代碼不夠完善
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表