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