|
51單片機玩的差不多了,想想不能空著,所以繼續(xù)學PIC單片機,它采用了RISC(精簡指令)CPU,先比較下它與51單片機的區(qū)別(以下內(nèi)容摘自網(wǎng)絡(luò)):
(1)總線結(jié)構(gòu):MCS-51單片機的總線結(jié)構(gòu)是馮-諾依曼型,計算機在同一個存儲空間取指令和數(shù)據(jù),兩者不能同時進行;而PIC單片機的總線結(jié)構(gòu)是哈佛結(jié)構(gòu),指令和數(shù)據(jù)空間是完全分開的,一個用于指令,一個用于數(shù)據(jù),由于可以對程序和數(shù)據(jù)同時進行訪問,所以提高了數(shù)據(jù)吞吐率。正因為在PIC單片機中采用了哈佛雙總線結(jié)構(gòu),所以與常見的微控制器不同的一點是:程序和數(shù)據(jù)總線可以采用不同的寬度。數(shù)據(jù)總線都是8位的,但指令總線位數(shù)分別位12、14、16位。
(2)流水線結(jié)構(gòu):MCS-51單片機的取指和執(zhí)行采用單指令流水線結(jié)構(gòu),即取一條指令,執(zhí)行完后再取下一條指令;而PIC的取指和執(zhí)行采用雙指令流水線結(jié)構(gòu),當一條指令被執(zhí)行時,允許下一條指令同時被取出,這樣就實現(xiàn)了單周期指令。
(3)寄存器組:PIC單片機的所有寄存器,包括I/O口,定時器和程序計數(shù)器等都采用RAM結(jié)構(gòu)形式,而且都只需要一個指令周期就可以完成訪問和操作;而MCS-51單片機需要兩個或兩個以上的周期才能改變寄存器的內(nèi)容。
這次選取PIC16F877作為主芯片來學習,總共有40個引腳,具體情況參見它的datasheet。兩個比較重要的寄存器TRISn和PORTn,其中n代表端口號,如RA,RD;當TRISn的位設(shè)為1時代表輸入狀態(tài)(默認值),如要改變?yōu)檩敵鰻顟B(tài)則需將其對應(yīng)的位設(shè)為0;PORTn則是端口控制寄存器,來控制高低電平的輸出,應(yīng)當注意,RA4是漏極開路,如需輸出高電平則需接上拉電阻。
|
|