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