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