一、pic單片機與51的區別在哪
pic單片機在日常中使用頻率較高,與pic單片機具備同等地位的還有51單片機,那(nei)么pic單片機和(he)51單片機有什么區別呢?
1、總線結構區別
51單片機的總線(xian)結(jie)構是(shi)馮-諾依曼型(xing),計算機在同(tong)(tong)(tong)一(yi)(yi)個存儲空間取指(zhi)令(ling)和數(shu)(shu)據(ju),兩(liang)者不能同(tong)(tong)(tong)時進行;而PIC單片機的總線(xian)結(jie)構是(shi)哈(ha)佛結(jie)構,指(zhi)令(ling)和數(shu)(shu)據(ju)空間是(shi)完全分開(kai)的,一(yi)(yi)個用(yong)于(yu)指(zhi)令(ling),一(yi)(yi)個用(yong)于(yu)數(shu)(shu)據(ju),由于(yu)可以(yi)(yi)(yi)對程(cheng)序(xu)(xu)和數(shu)(shu)據(ju)同(tong)(tong)(tong)時進行訪問,所以(yi)(yi)(yi)提高了數(shu)(shu)據(ju)傳輸效率(lv)。正因為在PIC系列單片機中采用(yong)了哈(ha)佛雙總線(xian)結(jie)構,所以(yi)(yi)(yi)與(yu)常見的微(wei)控制器不同(tong)(tong)(tong)的一(yi)(yi)點是(shi):程(cheng)序(xu)(xu)和數(shu)(shu)據(ju)總線(xian)可以(yi)(yi)(yi)采用(yong)不同(tong)(tong)(tong)的寬度。數(shu)(shu)據(ju)總線(xian)都是(shi)8位的,但指(zhi)令(ling)總線(xian)位數(shu)(shu)分別位12、14、16位。
2、寄存器組區別
PIC單片機的(de)所有寄存器(qi),包括I/O口,定(ding)時器(qi)和程序計數(shu)器(qi)等都采用RAM結構形式,而且都只需要一個(ge)指(zhi)令周期就可以完成訪問(wen)和操作;而51單片機需要兩個(ge)或兩個(ge)以上的(de)周期才能(neng)改(gai)變寄存器(qi)的(de)內(nei)容。
3、流水線結構區別
51單片(pian)機的取(qu)指(zhi)和執(zhi)行(xing)采(cai)用單指(zhi)令(ling)(ling)(ling)(ling)流(liu)水線結(jie)構,即取(qu)一條指(zhi)令(ling)(ling)(ling)(ling),執(zhi)行(xing)完(wan)后再取(qu)下一條指(zhi)令(ling)(ling)(ling)(ling);而(er)PIC單片(pian)機的取(qu)指(zhi)和執(zhi)行(xing)采(cai)用雙指(zhi)令(ling)(ling)(ling)(ling)流(liu)水線結(jie)構,當一條指(zhi)令(ling)(ling)(ling)(ling)被執(zhi)行(xing)時,允許下一條指(zhi)令(ling)(ling)(ling)(ling)同時被取(qu)出,這樣就實現了單周(zhou)期(qi)指(zhi)令(ling)(ling)(ling)(ling)。
二、pic單片機和51單片機哪個好
pic單(dan)片機(ji)(ji)和51單(dan)片機(ji)(ji)相(xiang)比,各有(you)各的(de)優缺點,并不一(yi)定哪種單(dan)片機(ji)(ji)更好,下面為大家對比一(yi)下兩(liang)種單(dan)片機(ji)(ji)的(de)優劣勢:
1、51單片機的優缺點
(1)優點
51單片(pian)機的(de)優點是(shi)它從內(nei)(nei)部的(de)硬件(jian)到(dao)軟件(jian)有(you)一(yi)(yi)套完整的(de)按位(wei)操作系(xi)統(tong),它的(de)處(chu)(chu)(chu)理對(dui)象不是(shi)字或字節而是(shi)位(wei),因此它不光能(neng)(neng)(neng)(neng)對(dui)片(pian)內(nei)(nei)某些特(te)殊功(gong)(gong)能(neng)(neng)(neng)(neng)寄存(cun)器的(de)某位(wei)進行處(chu)(chu)(chu)理,如傳送、置位(wei)、清零(ling)、測試(shi)等,還能(neng)(neng)(neng)(neng)進行位(wei)的(de)邏(luo)輯運(yun)算,其功(gong)(gong)能(neng)(neng)(neng)(neng)十分(fen)完備,使用起來(lai)得心(xin)應手。雖(sui)然其他種類的(de)單片(pian)機也具(ju)有(you)位(wei)處(chu)(chu)(chu)理功(gong)(gong)能(neng)(neng)(neng)(neng),但能(neng)(neng)(neng)(neng)進行位(wei)邏(luo)輯運(yun)算的(de)實屬少見。51單片(pian)機在片(pian)內(nei)(nei)RAM區間還特(te)別(bie)開辟(pi)了一(yi)(yi)個(ge)雙重功(gong)(gong)能(neng)(neng)(neng)(neng)的(de)地(di)址(zhi)區間,十六(liu)個(ge)字節,單元地(di)址(zhi)20H~2FH,它既(ji)可作字節處(chu)(chu)(chu)理,也可作位(wei)處(chu)(chu)(chu)理(作位(wei)處(chu)(chu)(chu)理時,合128個(ge)位(wei),相(xiang)應位(wei)地(di)址(zhi)為OOH~7FH),使用極(ji)為靈活。這一(yi)(yi)功(gong)(gong)能(neng)(neng)(neng)(neng)無疑(yi)給(gei)使用者提供了極(ji)大的(de)方便。
51單片機(ji)的(de)(de)另(ling)一個優點是乘(cheng)法和除法指(zhi)令(ling),這(zhe)給編程(cheng)也帶來了(le)便利。八(ba)(ba)位(wei)(wei)除以八(ba)(ba)位(wei)(wei)的(de)(de)除法指(zhi)令(ling),商為八(ba)(ba)位(wei)(wei),精度(du)嫌不(bu)夠(gou),用得不(bu)多(duo)。而八(ba)(ba)位(wei)(wei)乘(cheng)八(ba)(ba)位(wei)(wei)的(de)(de)乘(cheng)法指(zhi)令(ling),其積為十(shi)(shi)六位(wei)(wei),精度(du)還是能(neng)(neng)滿(man)足(zu)要求的(de)(de),用的(de)(de)較多(duo)。作乘(cheng)法時(shi),只需一條指(zhi)令(ling)即可。很多(duo)的(de)(de)八(ba)(ba)位(wei)(wei)單片機(ji)都不(bu)具備乘(cheng)法功能(neng)(neng),作乘(cheng)法時(shi)還得編上一段子程(cheng)序調(diao)用,十(shi)(shi)分不(bu)便。
還(huan)有就是,51系(xi)列的(de)I/O腳(jiao)的(de)設(she)置和使(shi)用(yong)非常簡(jian)單(dan),但高電平時無(wu)輸出能力,可謂有利有弊。其他系(xi)列的(de)單(dan)片機(如PIC系(xi)列、AVR系(xi)列等(deng))對I/O口進(jin)行(xing)了改進(jin),增加了方向寄存器以確定輸入或輸出,但使(shi)用(yong)也變(bian)得復雜(za)。
(2)缺點
51單片(pian)機(ji)的(de)(de)主要缺點(dian)是運行(xing)速(su)度(du)過慢,當晶振頻率為12MHz時(shi),機(ji)器周期達1μs,顯(xian)然適(shi)應(ying)不了(le)現代高速(su)運行(xing)的(de)(de)需要。
2、pic單片機的優缺點
(1)優點
PIC單(dan)片機(ji)CPU采用RISC結(jie)構(gou),分(fen)(fen)別有(you)33、35、58條(tiao)指(zhi)令(ling),屬精簡指(zhi)令(ling)集,比51單(dan)片機(ji)(111條(tiao)指(zhi)令(ling))精簡很多,因此運(yun)行(xing)速度更快;它能(neng)使程序存(cun)(cun)儲器的訪問(wen)和數據存(cun)(cun)儲器的訪問(wen)并行(xing)處理,這種指(zhi)令(ling)流水(shui)線結(jie)構(gou),在一(yi)個(ge)周期(qi)內完成兩部(bu)分(fen)(fen)工(gong)作(zuo)(zuo),一(yi)是(shi)(shi)執(zhi)行(xing)指(zhi)令(ling),二(er)是(shi)(shi)從程序存(cun)(cun)儲器取出下(xia)一(yi)條(tiao)指(zhi)令(ling),這樣(yang)總的看來每條(tiao)指(zhi)令(ling)只需(xu)一(yi)個(ge)周期(qi)(個(ge)別除外),這也(ye)是(shi)(shi)高效率運(yun)行(xing)的原因之(zhi)一(yi)。此外,它還具有(you)低工(gong)作(zuo)(zuo)電(dian)壓、低功(gong)耗(hao)、驅動能(neng)力強等特點。
另外,PIC系列(lie)單(dan)片機的(de)I/O口(kou)是雙向的(de),其(qi)輸(shu)(shu)出(chu)(chu)(chu)(chu)電(dian)(dian)(dian)路為CMOS互補推挽輸(shu)(shu)出(chu)(chu)(chu)(chu)電(dian)(dian)(dian)路。I/O腳(jiao)(jiao)增加了用于設(she)置(zhi)輸(shu)(shu)入或輸(shu)(shu)出(chu)(chu)(chu)(chu)狀態的(de)方向寄存器,從(cong)而(er)解決了51系列(lie)I/O腳(jiao)(jiao)為高(gao)(gao)電(dian)(dian)(dian)平(ping)時同為輸(shu)(shu)入和輸(shu)(shu)出(chu)(chu)(chu)(chu)的(de)狀態。當(dang)置(zhi)位(wei)(wei)1時為輸(shu)(shu)入狀態,且(qie)不管(guan)(guan)該腳(jiao)(jiao)呈高(gao)(gao)電(dian)(dian)(dian)平(ping)或低電(dian)(dian)(dian)平(ping),對(dui)外均呈高(gao)(gao)阻(zu)狀態;置(zhi)位(wei)(wei)0時為輸(shu)(shu)出(chu)(chu)(chu)(chu)狀態,不管(guan)(guan)該腳(jiao)(jiao)為何種電(dian)(dian)(dian)平(ping),均呈低阻(zu)狀態,有(you)相(xiang)當(dang)的(de)驅動能力,低電(dian)(dian)(dian)平(ping)吸人(ren)電(dian)(dian)(dian)流(liu)達25mA,高(gao)(gao)電(dian)(dian)(dian)平(ping)輸(shu)(shu)出(chu)(chu)(chu)(chu)電(dian)(dian)(dian)流(liu)可達20mA。相(xiang)對(dui)于51系列(lie)而(er)言,這是一(yi)個(ge)很大的(de)優點,它(ta)可以(yi)直接(jie)驅動數碼管(guan)(guan)顯(xian)示(shi)且(qie)外電(dian)(dian)(dian)路簡單(dan)。它(ta)的(de)A/D為10位(wei)(wei),能滿足精度要求(qiu)。
(2)缺點
在(zai)編程(cheng)(cheng)過程(cheng)(cheng)中(zhong)(zhong),少不了要與專用寄(ji)(ji)(ji)存器(qi)打交道,得(de)反復地選(xuan)擇對應的(de)(de)存儲體,也即對狀態寄(ji)(ji)(ji)存器(qi)STATUS的(de)(de)第(di)6位(RPl)和(he)第(di)5位(RPO)置位或(huo)清(qing)零。這(zhe)多少給編程(cheng)(cheng)帶來(lai)了一些麻煩。對于pic單(dan)(dan)片(pian)(pian)機(ji),它的(de)(de)位指令操作通(tong)常限制在(zai)存儲體0區間(00~7FH)。數據(ju)的(de)(de)傳送和(he)邏輯運(yun)算基本上都得(de)通(tong)過工作寄(ji)(ji)(ji)存器(qi)w(相(xiang)當于51單(dan)(dan)片(pian)(pian)機(ji)的(de)(de)累加器(qi)A)來(lai)進行,而51單(dan)(dan)片(pian)(pian)機(ji)還可以(yi)通(tong)過寄(ji)(ji)(ji)存器(qi)相(xiang)互(hu)之間直接傳送,因而PIC單(dan)(dan)片(pian)(pian)機(ji)的(de)(de)瓶頸現(xian)象比51單(dan)(dan)片(pian)(pian)機(ji)還要嚴重,這(zhe)在(zai)編程(cheng)(cheng)中(zhong)(zhong)很有感受。
綜合來(lai)看(kan)(kan),51單片(pian)機和(he)pic單片(pian)機相比,各有所(suo)長,如何選擇主要看(kan)(kan)實際使用需要。