版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
(優(yōu)選)第章單片機(jī)引腳及其功能當(dāng)前1頁,總共138頁。第2章89C51單片機(jī)硬件結(jié)構(gòu)和原理§2.1 89C51單片機(jī)芯片內(nèi)部結(jié)構(gòu)及特點(diǎn)§2.2 89C51單片機(jī)引腳及其功能§2.3 89C51單片機(jī)存儲(chǔ)器配置§2.4 時(shí)鐘電路及89C51CPU時(shí)序§2.5 復(fù)位操作§2.6 89C51單片機(jī)的低功耗工作方式§2.7 輸出/輸入端口結(jié)構(gòu)當(dāng)前2頁,總共138頁?!?.1 89C51單片機(jī)芯片內(nèi)部結(jié)構(gòu)及特點(diǎn)§2.1.189C51單片機(jī)的基本組成§2.1.289C51單片機(jī)芯片內(nèi)部結(jié)構(gòu)當(dāng)前3頁,總共138頁?!?.1.189C51單片機(jī)的基本組成89C51CPU振蕩器和時(shí)序OSC64KB總線擴(kuò)展控制器數(shù)據(jù)存儲(chǔ)器256BRAM/SFR2×16位定時(shí)器/計(jì)數(shù)器可編程I/O程序存儲(chǔ)器4KBFLASHROM可編程全雙工串行口外中斷內(nèi)中斷控制并行口串行通信外部時(shí)鐘源外部事件計(jì)數(shù)當(dāng)前4頁,總共138頁。2.1.189C51單片機(jī)的基本組成另外89C51是用靜態(tài)邏輯來設(shè)計(jì)的,其工作頻率可下降到0Hz,并提供兩種可用軟件來選擇的省電方式
1.在空閑方式中,CPU停止工作,而RAM、定時(shí)器/計(jì)數(shù)器、串行口和中斷系統(tǒng)都繼續(xù)工作。此時(shí)的電流可降到大約為正常工作方式的15%。
2.在掉電方式中,片內(nèi)振蕩器停止工作,由于時(shí)鐘被“凍結(jié)”,使一切功能都暫停,故只保存片內(nèi)RAM中的內(nèi)容,直到下一次硬件復(fù)位為止。
這種方式下的電流可降到15μA以下,最小可降到0.6μA。當(dāng)前5頁,總共138頁。2.1.189C51單片機(jī)的基本組成89C51單片機(jī)還有一種低電壓的型號(hào),即89LV51,除了電壓范圍有區(qū)別之外,其余特性與89C51完全一致。89C51/LV51是一種低功耗/低電壓、高性能的8位單片機(jī)。它采用了CMOS工藝和高密度非易失性存儲(chǔ)器(NURAM)技術(shù),而且其輸出引腳和指令系統(tǒng)都與MCS51兼容;片內(nèi)的FlashROM允許在系統(tǒng)內(nèi)改編程序或用常規(guī)的非易失性存儲(chǔ)器編程器來編程。因此89C51/LV51是一種功能強(qiáng)、靈活性高,且價(jià)格合理的單片機(jī),可方便地應(yīng)用在各種控制領(lǐng)域。當(dāng)前6頁,總共138頁?!?.1.289C51單片機(jī)芯片內(nèi)部結(jié)構(gòu)一、結(jié)構(gòu)圖二、結(jié)構(gòu)組成當(dāng)前7頁,總共138頁。一、結(jié)構(gòu)圖由中央處理單元(CPU)、存儲(chǔ)器(ROM及RAM)和I/O接口組成。89C51單片機(jī)內(nèi)部結(jié)構(gòu)如圖2-2所示。當(dāng)前8頁,總共138頁。P0驅(qū)動(dòng)器P2驅(qū)動(dòng)器P0鎖存器P2鎖存器RAM地址寄存器128BRAM4KBROMB寄存器暫存器1暫存器2ACCSP程序地址寄存器緩沖器PC增1PCDPTR中斷、串行口和定時(shí)器PSWP1鎖存器P1驅(qū)動(dòng)器P3鎖存器P3驅(qū)動(dòng)器定時(shí)控制指令寄存器指令譯碼器OSCALUP0.0-P0.7P2.0-P2.7P3.0-P3.7P1.0-P1.7XTAL1XTAL2PSENALEEARESET89C51單片機(jī)內(nèi)部結(jié)構(gòu)圖返回運(yùn)算器控制器存儲(chǔ)器I/O接口當(dāng)前9頁,總共138頁。二、結(jié)構(gòu)組成(一)、中央處理單元(CPU)(二)、存儲(chǔ)器(三)、I/O接口返回當(dāng)前10頁,總共138頁。1、中央處理單元(89C51CPU)1)運(yùn)算器返回2)控制器當(dāng)前11頁,總共138頁。1)運(yùn)算器
(1)8位的ALU:可對(duì)4位、8位、16位數(shù)據(jù)進(jìn)行操作。(2)8位累加器ACC(A):它經(jīng)常作為一個(gè)運(yùn)算數(shù)經(jīng)暫存器2進(jìn)入ALU的輸入端,與另一個(gè)來自暫存器1的運(yùn)算數(shù)進(jìn)行運(yùn)算,運(yùn)算結(jié)果又送回ACC。(3)8位程序狀態(tài)寄存器PSW:指示指令執(zhí)行后的狀態(tài)信息供程序查詢和判別用。(4)8位寄存器B:在乘除運(yùn)算時(shí),用來存放一個(gè)操作數(shù)也用來存放運(yùn)算后的一部分結(jié)果;如不能做乘除運(yùn)算時(shí),作為通用寄存器(5)布爾處理器:專門用于處理位操作的,以PSW中的C為其累加器。(6)2個(gè)8位暫存器:ALU的兩個(gè)入口處當(dāng)前12頁,總共138頁。2)控制器(1)程序計(jì)數(shù)器PC(16位)(2)指令寄存器IR及指令譯碼器ID(3)振蕩器和定時(shí)電路返回當(dāng)前13頁,總共138頁。(1)程序計(jì)數(shù)器PC(16位)由兩個(gè)8位計(jì)數(shù)器PCH、PCL組成。PC是程序的字節(jié)地址計(jì)數(shù)器,PC內(nèi)容為將要執(zhí)行的指令地址。改變PC內(nèi)容,改變執(zhí)行的流向。PC可對(duì)64KB的ROM直接尋址,也可對(duì)89C51片內(nèi)RAM尋址。返回當(dāng)前14頁,總共138頁。(2)指令寄存器IR及指令譯碼器ID由PC中的內(nèi)容指定ROM地址取出來的指令經(jīng)IR送至ID由ID對(duì)指令譯碼產(chǎn)生一定序列的控制信號(hào),以執(zhí)行指令所規(guī)定的操作。返回當(dāng)前15頁,總共138頁。(3)振蕩器和定時(shí)電路89C51單片機(jī)片內(nèi)有振蕩電路,只需外接石英晶體和頻率微調(diào)電容(2個(gè)30pF左右),其頻率范圍為1.2MHz~12MHz。該信號(hào)作為89C51工作的基本節(jié)拍即時(shí)間的最小單位。返回當(dāng)前16頁,總共138頁。2、存儲(chǔ)器1)程序存儲(chǔ)器(ROM)2)數(shù)據(jù)存儲(chǔ)器(RAM)返回當(dāng)前17頁,總共138頁。1)程序存儲(chǔ)器(ROM)89C51片內(nèi)為4KBFlashROM。地址從0000H開始。用于存放程序和表格常數(shù)。返回當(dāng)前18頁,總共138頁。2)數(shù)據(jù)存儲(chǔ)器(RAM)89C51RAM均為128B,地址為00H~7FH。用于存放運(yùn)算的中間結(jié)果、數(shù)據(jù)暫存以及數(shù)據(jù)緩沖等。這128B的RAM中有32個(gè)字節(jié)單元可指定為工作寄存器。片內(nèi)還有21個(gè)特殊功能寄存器(SFR),它們同128字節(jié)RAM統(tǒng)一編址,地址為80H~FFH。后面詳細(xì)介紹。返回當(dāng)前19頁,總共138頁。3、I/O接口89C51有四個(gè)8位并行I/O接口P0~P3。它們都是雙向端口,每個(gè)端口各有8條I/O線。P0-P3口四個(gè)鎖存器同RAM統(tǒng)一編址,可作為SFR來尋址。當(dāng)前20頁,總共138頁?!?.2.1 89C51單片機(jī)引腳圖2-3是89C51/LV51的引腳結(jié)構(gòu)圖,有雙列直插封裝(DIP)方式和方形封裝方式。當(dāng)前21頁,總共138頁。圖2-389C51/LV51的引腳結(jié)構(gòu)
當(dāng)前22頁,總共138頁。一、電源引腳:Vcc和Vss1.Vcc(40腳):電源端,為+5V。2.Vss(20腳):接地端。當(dāng)前23頁,總共138頁。二、時(shí)鐘電路引腳:XTAL1和XTAL2XTAL2(18腳):片內(nèi)它是振蕩電路反向放大器的輸出端XTAL1(19腳):在片內(nèi)它是振蕩電路反向放大器的輸入端當(dāng)前24頁,總共138頁。三、控制信號(hào)引腳:
RST、ALE、PSEN和EARST/VPD(9腳):RST:復(fù)位信號(hào)輸入端,高電平有效。當(dāng)此輸入端保持兩個(gè)機(jī)器周期的高電平時(shí),就可以完成復(fù)位操作。當(dāng)前25頁,總共138頁。三、控制信號(hào)引腳:
RST、ALE、PSEN和EAALE/PROG(30腳):ALE:地址鎖存允許信號(hào)端。當(dāng)89c51上電正常后,ALE引腳不斷向外輸出正脈沖信號(hào),此頻率為震蕩頻率的1/6可以用作對(duì)外輸出的時(shí)鐘或定時(shí)信號(hào)。CPU訪問片外存儲(chǔ)器時(shí),該引腳輸出信號(hào)作為鎖存低8位地址的控制信號(hào)。PROG:對(duì)片內(nèi)帶有4KBFlashROM的89C51單片機(jī)編程寫入時(shí),作為編程脈沖輸入端。當(dāng)前26頁,總共138頁。三、控制信號(hào)引腳:
RST、ALE、PSEN和EAPSEN(29腳):程序存儲(chǔ)器允許信號(hào)輸出端。當(dāng)89C51由片外程序存儲(chǔ)器取指令時(shí),每個(gè)機(jī)器周期兩次PSEN有效(即輸出2個(gè)脈沖。)但在此期間內(nèi)每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的PSEN信號(hào)將部出現(xiàn)。在訪問片外ROM時(shí),定時(shí)輸出負(fù)脈沖作為讀片外ROM的選通信號(hào),接片外ROM
的OE端。它的負(fù)載能力為8個(gè)LS型TTL負(fù)載。當(dāng)前27頁,總共138頁。三、控制信號(hào)引腳:
RST、ALE、PSEN和EAEA/Vpp(31腳):EA:
外部程序存儲(chǔ)器地址允許輸入端。當(dāng)該引腳接高電平時(shí),CPU訪問片內(nèi)ROM并執(zhí)行片內(nèi)程序存儲(chǔ)器中的指令,但當(dāng)PC值超過0FFFH(片內(nèi)ROM為4KB)時(shí),將自動(dòng)轉(zhuǎn)向執(zhí)行片外ROM中的程序。當(dāng)該引腳接低電平時(shí),CPU只訪問片外ROM并執(zhí)行外部程序存儲(chǔ)器中的程序。當(dāng)前28頁,總共138頁。EA/Vpp(31腳):Vpp:對(duì)89C51片內(nèi)
FlashROM固化編程時(shí),編程電壓輸入端(12-21V)。三、控制信號(hào)引腳:
RST、ALE、PSEN和EA當(dāng)前29頁,總共138頁。四、輸入/輸出端口P0、P1、P2、P3準(zhǔn)雙向當(dāng)I/O口作為輸入時(shí),應(yīng)先向此口鎖存器寫入全1,此時(shí)該口引腳浮空,可作高阻抗輸入。當(dāng)前30頁,總共138頁。漏極開路的8位準(zhǔn)雙向I/O口,每位能驅(qū)動(dòng)8個(gè)LS型TTL負(fù)載。在CPU訪問片外存儲(chǔ)器時(shí),P0口為分時(shí)復(fù)用的低8位地址總線和8位數(shù)據(jù)總線。在FlashROM編程時(shí),P0端口接受指令字節(jié);而在校驗(yàn)程序時(shí),則輸出指令字節(jié)。1、P0口:當(dāng)前31頁,總共138頁。2、P1口:帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O端口,每位能驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。用做輸入口時(shí),需對(duì)端口寫1,通過內(nèi)部上拉電阻把端口拉到高電位。在對(duì)FlashROM編程和校驗(yàn)時(shí),接收低8位地址當(dāng)前32頁,總共138頁。3、P2口:P2口:帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O端口,每位能驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。在CPU訪問片外存儲(chǔ)器時(shí),它輸出高8位地址。在對(duì)FlashROM編程和校驗(yàn)時(shí),接收高位地址和控制信號(hào)當(dāng)前33頁,總共138頁。4、P3口:帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O端口,每位能驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。P3口除作為一般I/O口外,每個(gè)引腳都有第二功能。在對(duì)FlashROM編程和校驗(yàn)時(shí),接收控制信號(hào)當(dāng)前34頁,總共138頁。表2-1P3端口引腳與復(fù)用功能表當(dāng)前35頁,總共138頁?!?.3 89C51存儲(chǔ)器配置§2.3.1 89C51存儲(chǔ)器分類§2.3.2 程序存儲(chǔ)器地址空間§2.3.3 數(shù)據(jù)存儲(chǔ)器地址空間當(dāng)前36頁,總共138頁。1、普林斯頓結(jié)構(gòu)一般的微機(jī)結(jié)構(gòu):通常只有一個(gè)地址空間,而ROM和RAM可以隨意安排在一個(gè)地址范圍內(nèi)的不同空間,即ROM和RAM的地址在同一個(gè)隊(duì)列里的分配不同的地址空間,CPU訪問時(shí)一個(gè)地址對(duì)應(yīng)唯一的一個(gè)存儲(chǔ)單元,可以是ROM也可以是RAM,并用同類訪問指令。2.3.1 89C51存儲(chǔ)器分類當(dāng)前37頁,總共138頁。2、89C51-物理結(jié)構(gòu)(哈佛結(jié)構(gòu))片內(nèi)程序存儲(chǔ)器片外程序存儲(chǔ)器片內(nèi)數(shù)據(jù)存儲(chǔ)器片外數(shù)據(jù)存儲(chǔ)器89C51存儲(chǔ)器程序存儲(chǔ)器ROM數(shù)據(jù)存儲(chǔ)器RAM2.3.1 89C51存儲(chǔ)器分類當(dāng)前38頁,總共138頁。3、用戶角度2.3.1 89C51存儲(chǔ)器分類從用戶角度89C51存儲(chǔ)器分為3類片內(nèi)外統(tǒng)一編址0000H~FFFFH的64KB程序存儲(chǔ)器地址空間(用16位地址)64KB片外數(shù)據(jù)存儲(chǔ)器地址空間,地址也從0000H~FFFFH編址256字節(jié)數(shù)據(jù)存儲(chǔ)器地址空間用8位地址當(dāng)前39頁,總共138頁。3、用戶角度-存儲(chǔ)器的空間配置片外FFFF0FFF0000EA=0片外EA=1片內(nèi)PSEN
片外RAM&I/O端口FFFF0000片內(nèi)SFRRAM007F80FFRDWR2.3.1 89C51存儲(chǔ)器分類程序存儲(chǔ)器數(shù)據(jù)存儲(chǔ)器當(dāng)前40頁,總共138頁。1、片內(nèi)、外統(tǒng)一編址的64K程序存儲(chǔ)器地址空間。CPU訪問片內(nèi)、片外ROM指令用MOVC。2、64K的片外數(shù)據(jù)存儲(chǔ)器地址空間。訪問片外RAM指令用MOVX。3、256字節(jié)的片內(nèi)數(shù)據(jù)存儲(chǔ)器地址空間。訪問片內(nèi)RAM指令用MOV。當(dāng)前41頁,總共138頁。一、用途:二、編址:三、尋址方式:當(dāng)前42頁,總共138頁。一、用途:用于存放編好的程序和表格常數(shù)。程序存儲(chǔ)器通過16位程序計(jì)數(shù)器尋址?!?.3.2程序存儲(chǔ)器地址空間二、編址:89C51片內(nèi)FlashROM的容量為4KB。地址為0000H~0FFFH。片外最多可擴(kuò)至64KBROM/EPROM,地址為1000H~FFFFH。片內(nèi)外統(tǒng)一編址。當(dāng)前43頁,總共138頁。三、尋址方式:1、當(dāng)EA=“1”時(shí):89C51的PC在0000~0FFFH范圍內(nèi)執(zhí)行片內(nèi)ROM中的程序,當(dāng)指令地址超過0FFFH后就自動(dòng)轉(zhuǎn)向片外ROM中取指令。2、當(dāng)EA=”0”時(shí):89C51片內(nèi)ROM不起作用,CPU只能從片ROM/EPROM中取指令。可以從0000H
開始尋址。由于8031片內(nèi)不帶ROM
,所以使用時(shí)必須EA=”0”。當(dāng)前44頁,總共138頁。片外FFFF0FFF0000EA=0EA=1PSEN片內(nèi)片外當(dāng)前45頁,總共138頁。三、尋址方式:3、89C51從片內(nèi)ROM和片外ROM取指的速度相同。當(dāng)前46頁,總共138頁。三、尋址方式:4、程序存儲(chǔ)器低地址的40多個(gè)單元是保留存儲(chǔ)單元,是留給系統(tǒng)使用的。如表2-2所示。
表2-2保留的存儲(chǔ)單元當(dāng)前47頁,總共138頁。三、尋址方式:1、0000H~0002H三個(gè)單元:用作89C51上電復(fù)位后引導(dǎo)程序的存放單元。因?yàn)閺?fù)位后PC的內(nèi)容為0000H,CPU總是從0000H開始執(zhí)行程序。將轉(zhuǎn)移指令存放到這三個(gè)單元,程序就被引導(dǎo)到指定的程序存儲(chǔ)器空間去執(zhí)行。當(dāng)前48頁,總共138頁。三、尋址方式:(2)0003H~002AH單元:均分為五段,每段8個(gè)字節(jié),用作5個(gè)中斷服務(wù)程序的入口。當(dāng)前49頁,總共138頁。四.執(zhí)行外部程序時(shí)硬件連接圖89C51
P1P0EAALEP3P2PSEN74HC373片外程序存儲(chǔ)器指令
地址OE當(dāng)前50頁,總共138頁。一、用途:用于存放運(yùn)算的中間結(jié)果、數(shù)據(jù)暫存和緩沖、標(biāo)志位等。分為片內(nèi),片外數(shù)據(jù)存儲(chǔ)器
片外RAM&I/O端口FFFF0000片內(nèi)SFRRAM007F80FFRDWR§2.3.3數(shù)據(jù)存儲(chǔ)器地址空間當(dāng)前51頁,總共138頁。二、片外RAM:(一)片內(nèi)RAM地址空間(二)低128字節(jié)RAM(00H~7FH)(三)高128字節(jié)RAM(80H~FFH):
——特殊功能寄存器SFR區(qū)§2.3.3數(shù)據(jù)存儲(chǔ)器地址空間當(dāng)前52頁,總共138頁。1.片內(nèi)128字節(jié)RAM:用MOV指令尋址2.片外64KB空間RAM:用MOVX指令89C51
P1P0EAALE
WDP3WR鎖存器RAM
地址數(shù)據(jù)
6116I/O頁面地址WEOEVCCP2當(dāng)前53頁,總共138頁。(1)片內(nèi)RAM地址空間尋址:用指令MOV最大可尋址256個(gè)單元。低128B(00H-7FH):真正RAM區(qū)高128B(80H-FFH):特殊功能寄存器(SFR)區(qū)地址:00H-FFH二、片內(nèi)RAM:§2.3.3數(shù)據(jù)存儲(chǔ)器地址空間當(dāng)前54頁,總共138頁。FFH80H7FHSFR只通過直間尋址方式訪問RAM可通過直間和間接尋址方式訪問高128字節(jié)區(qū)低128字節(jié)區(qū)0二、片內(nèi)RAM:§2.3.3數(shù)據(jù)存儲(chǔ)器地址空間當(dāng)前55頁,總共138頁。(2)工作寄存器區(qū)(00H~1FH)由四組(32個(gè))工作寄存器組成,每組8個(gè)寄存器(R0-R7),共占32個(gè)單元。見表2-4。通過程序狀態(tài)寄存器PSW中RS1、RS0兩位設(shè)定來選擇CPU的當(dāng)前工作寄存器組。復(fù)位時(shí),第0組為當(dāng)前的工作寄存器。若不需要四組,則其余可作為一般RAM單元。二、片內(nèi)RAM-低128位RAM:§2.3.3數(shù)據(jù)存儲(chǔ)器地址空間當(dāng)前56頁,總共138頁。低128字節(jié)RAM(00H~7FH)787068605850484038302820181008003組2組1組797169615951494139312921191109017A726A625A524A423A322A221A120A027B736B635B534B433B332B231B130B037C746C645C544C443C342C241C140C047D756D655D554D453D352D251D150D057E766E665E564E463E362E261E160E067F776F675F574F473F372F271F170F07通用的RAM位地址字節(jié)地址R7R0R7R0R7R0R7R0缺省寄存器組(0組)7F302F2E2D2C2B2A292827262524232221201F1817100F080700可位尋址RAM區(qū)域SP復(fù)位值通用工作寄存器當(dāng)前57頁,總共138頁。表2-4工作寄存器地址表當(dāng)前58頁,總共138頁。低128字節(jié)RAM-尋址方式訪問128個(gè)位地址用位尋址方式訪問128個(gè)字節(jié)單元用直接尋址和間接尋址。這樣就能區(qū)分開00H-7FH是位地址還是字節(jié)地址這些可尋址位,通過執(zhí)行指令可直接對(duì)某一位操作,如置0,清0,或判1,判0等,可用作軟件標(biāo)志位或用于位(布爾)處理當(dāng)前59頁,總共138頁。(3)高128字節(jié)RAM(80H~FFH)有21個(gè)特殊功能功能寄存器。地址分布在80H~FFH的RAM空間。尋址時(shí)只允許使用直接尋址方式二、片內(nèi)RAM-高128位RAM:§2.3.3數(shù)據(jù)存儲(chǔ)器地址空間當(dāng)前60頁,總共138頁。F0E0D0B8B0A8A0不可尋址位9890不可尋址位不可尋址位不可尋址位不可尋址位不可尋址位88不可尋址位不可尋址位不可尋址位不可尋址位80F1E1\B9B1A9A199918981F2E2D2BAB2AAA29A928A82F3E3D3BBB3ABA39B938B83F4E4D4BCB4ACA49C948C84F5E5D5\B5\A59D958D85F6E6D6\B6\A69E968E86F7E7D7\B7AFA79F978F87圖2-9高128字節(jié)RAM區(qū)(SFR區(qū),特殊功能寄存器區(qū))字節(jié)地址
FFF0E0D0B8B0A8A09998908D8C8B8A89888783828180BACCPSWIPP3IEP2SBUFSCONP1TH1TH0TL1TL0TMDTCONPCONDPHDPLSPP0當(dāng)前61頁,總共138頁。(三)高128字節(jié)RAM(80H~FFH)-尋址方式訪問特殊功能的寄存器只允許用直接尋址方式21個(gè)特殊功能寄存器中字節(jié)地址可被8整除的具有11個(gè),這11個(gè)寄存器具有位尋址能力。二、片內(nèi)RAM-高128位RAM:當(dāng)前62頁,總共138頁。部分特殊功能寄存器介紹累加器ACC(E0H):用A作為ACC的助記符。用于存放第一個(gè)操作數(shù)及運(yùn)算結(jié)果。在乘法運(yùn)算中存放一個(gè)乘數(shù)和乘積的低八位數(shù)在除法運(yùn)算中存放被除數(shù)和商。二、片內(nèi)RAM-高128位RAM:當(dāng)前63頁,總共138頁。部分特殊功能寄存器介紹寄存器B(F0H):在乘法指令中,B用于存放乘數(shù)和乘積的高8位。在除法指令中用于存放除數(shù)和余數(shù)。在其它指令中用作一般的寄存器或RAM單元。二、片內(nèi)RAM-高128位RAM:當(dāng)前64頁,總共138頁。部分特殊功能寄存器介紹PSW程序狀態(tài)寄存器(D0H):PSW是一個(gè)8位特殊功能的寄存器,包含了程序執(zhí)行后的狀態(tài)信息,供程序查詢或判斷用。二、片內(nèi)RAM-高128位RAM:ACCYP—OVRS0RS1F0PSW(D0H)D7D6D5D4D3D2D1D0表2-6PSW程序狀態(tài)字奇/偶保留溢出寄存器組選擇用戶標(biāo)定鋪進(jìn)進(jìn)、借位地址位名稱位意義當(dāng)前65頁,總共138頁。PSW各位的含義(1)CY位(PSW.7):進(jìn)(借)位標(biāo)志位。執(zhí)行加法(減法)運(yùn)算指令時(shí),如運(yùn)算結(jié)果最高位(D7)向前有進(jìn)位(借位),CY=1;否則,CY=0。在布爾處理器中以CY為其累加器,專門用于處理位操作,如可執(zhí)行置位、位清0、位取反、位等于1轉(zhuǎn)移,位等于0轉(zhuǎn)移、位等于1轉(zhuǎn)移并清0,以及位累加器C與其他可位尋址的空間之間進(jìn)行信息傳送等位操作,也可使C與其他可尋址位之間進(jìn)行邏輯與、邏輯或、操作,結(jié)果存放在進(jìn)位標(biāo)志位中。二、片內(nèi)RAM-高128位RAM:當(dāng)前66頁,總共138頁。PSW各位的含義(2)AC位(PSW.6):半進(jìn)位標(biāo)志位(輔助進(jìn)位標(biāo)志)。執(zhí)行加法(減法)運(yùn)算指令時(shí),如運(yùn)算結(jié)果(和或差)的低半字節(jié)(D3)向高半字節(jié)有進(jìn)位(借位),AC=1;否則,AC=0。二、片內(nèi)RAM-高128位RAM:當(dāng)前67頁,總共138頁。PSW各位的含義(3)FO位(PSW.5):用戶標(biāo)志。用戶可根據(jù)自己的需求對(duì)F0賦予一定的含義由用戶自己定義、置位、復(fù)位,以作為軟件標(biāo)志。二、片內(nèi)RAM-高128位RAM:當(dāng)前68頁,總共138頁。PSW各位的含義(4)RS0、RS1位(PSW.3和PSW.4):工作寄存器組選擇控制位。由用戶用軟件改變RS0和RS1的值,以切換當(dāng)前選用的工作寄存器組。RS0,RS1的組合關(guān)系如表2-8
所示。上電復(fù)位時(shí),(RS0)=(RS1)=0,CPU自然選擇第0組為當(dāng)前工作寄存器組。根據(jù)需求,可利用傳送指令對(duì)PSW整字節(jié)操作或用位操作指令改變RS1和RS2的狀態(tài)二、片內(nèi)RAM-高128位RAM:當(dāng)前69頁,總共138頁。RS1 RS0 寄存器組 片內(nèi)RAM地址0 0 第0組 00H~07H 0 1 第1組 08H~0FH 1 0 第2組 10H~17H 1 1 第3組 18H~1FH 表2-8RS0,RS1的組合關(guān)系當(dāng)前70頁,總共138頁。PSW各位的含義(5)OV位(PSW.2):溢出標(biāo)志位。如有溢出,即運(yùn)算結(jié)果超出-128~+127的范圍時(shí),OV=1;無溢出時(shí),OV=0。(由硬件自動(dòng)設(shè)置)返回二、片內(nèi)RAM-高128位RAM:當(dāng)前71頁,總共138頁。PSW各位的含義(6)P位(PSW.0):奇偶檢驗(yàn)位。每條指令執(zhí)行后,該位始終跟蹤指示累加器A中1的個(gè)數(shù)。A中“1”的個(gè)數(shù)為奇數(shù),則P=1;否則,P=0。常用于校驗(yàn)串行通信中的數(shù)據(jù)傳送是否出錯(cuò)。當(dāng)前72頁,總共138頁。部分特殊功能寄存器介紹堆棧指針SP(81H):8位特殊功能寄存器,SP的內(nèi)容可指向片內(nèi)RAM00H—7FH的任何單元。系統(tǒng)復(fù)位時(shí),SP初始化為07H,即指向07H的RAM單元堆棧:在片內(nèi)的RAM中專門開辟出來一個(gè)區(qū)域,數(shù)據(jù)的存取是以‘后進(jìn)先出的方式處理,好像沖鋒槍壓入子彈,這種數(shù)據(jù)結(jié)構(gòu)方式對(duì)于處理中斷,調(diào)用子程序非常方便。二、片內(nèi)RAM-高128位RAM:當(dāng)前73頁,總共138頁。堆棧有兩中操作:數(shù)據(jù)壓入,數(shù)據(jù)彈出若有8個(gè)RAM單元,每個(gè)單元都在其右面編有地址,棧頂由堆棧指針SP自動(dòng)管理。每次進(jìn)行壓入彈出操作后,堆棧指針便自動(dòng)調(diào)整以保持指示堆棧頂部的位置。棧底:在使用堆棧之前部分特殊功能寄存器介紹二、片內(nèi)RAM-高128位RAM:當(dāng)前74頁,總共138頁。A2A1堆棧操作676665646362616061A3A2A1A5A4A3A2A167666564636261606766656463626160SP6264A16766656463626160A4A3A2A16766656463626160SPSPSPSP6361二、片內(nèi)RAM-高128位RAM:部分特殊功能寄存器介紹當(dāng)前75頁,總共138頁。部分特殊功能寄存器介紹數(shù)據(jù)指針DPTR(83H,82H):DPTR是一個(gè)16位的特殊功能寄存器。高位字節(jié)寄存器用DPH(83H),低位字節(jié)用DPL(82H)組成。DPH,DPL可以單獨(dú)使用。主要是對(duì)片外的64KB片外數(shù)據(jù)存儲(chǔ)器做間接尋址二、片內(nèi)RAM-高128位RAM:當(dāng)前76頁,總共138頁。部分特殊功能寄存器介紹返回I/O端口P0、P1、P2、P3(80H、90H、A0H、B0H):分別為四個(gè)并行端口的鎖存器,每一個(gè)口鎖存器還有位地址,所以每一條I/O線可獨(dú)立輸入或輸出。輸出時(shí),可以鎖存;輸入時(shí),可以緩沖。二、片內(nèi)RAM-高128位RAM:當(dāng)前77頁,總共138頁。F0E0D0B8B0A8A0不可尋址位9890不可尋址位不可尋址位不可尋址位不可尋址位不可尋址位88不可尋址位不可尋址位不可尋址位不可尋址位80F1E1\B9B1A9A199918981F2E2D2BAB2AAA29A928A82F3E3D3BBB3ABA39B938B83F4E4D4BCB4ACA49C948C84F5E5D5\B5\A59D958D85F6E6D6\B6\A69E968E86F7E7D7\B7AFA79F978F87圖2-9高128字節(jié)RAM區(qū)(SFR區(qū),特殊功能寄存器區(qū))字節(jié)地址
FFF0E0D0B8B0A8A09998908D8C8B8A89888783828180BACCPSWIPP3IEP2SBUFSCONP1TH1TH0TL1TL0TMDTCONPCONDPHDPLSPP0當(dāng)前78頁,總共138頁?!?.4 時(shí)鐘電路及89C51CPU時(shí)序§2.4.1片內(nèi)時(shí)鐘信號(hào)的產(chǎn)生§2.4.2 CPU取指、執(zhí)指時(shí)序
微機(jī)從FlashROM中取出指令和執(zhí)行指令過程中的各種微操作都是按一定節(jié)拍有序進(jìn)行的,片內(nèi)的振蕩脈沖電路就是這個(gè)節(jié)拍的發(fā)生器當(dāng)前79頁,總共138頁?!?.4.1 片內(nèi)時(shí)鐘信號(hào)的產(chǎn)生返回89C51芯片內(nèi)部有一個(gè)高增益反相放大器,用于構(gòu)成振蕩器。反相放大器的輸入端為XTAL1,輸出端為XTAL2,兩端跨接石英晶體及兩個(gè)電容就可以構(gòu)成穩(wěn)定的自激振蕩器。電容器C1和C2通常取30pF左右,可穩(wěn)定頻率并對(duì)振蕩頻率有微調(diào)作用。振蕩脈沖頻率范圍為fOSC=0~24MHz。晶體振蕩器的頻率為fOSC,振蕩信號(hào)從XTAL2端輸入到片內(nèi)的時(shí)鐘發(fā)生器上,如圖2-12所示。當(dāng)前80頁,總共138頁。電容器C1和C2通常取30pF左右,可穩(wěn)定頻率并對(duì)振蕩頻率有微調(diào)作用。振蕩脈沖頻率范圍為fOSC=0~24MHz。圖2-2189C51的片內(nèi)振蕩器及時(shí)鐘發(fā)生器§2.4.1片內(nèi)時(shí)鐘信號(hào)的產(chǎn)生高增益反向放大器晶體振蕩器的頻率為fOSC,振蕩信號(hào)從XTAL2端輸入到片內(nèi)的時(shí)鐘發(fā)生器上,如圖2-12所示。當(dāng)前81頁,總共138頁?!?.4.1 片內(nèi)時(shí)鐘信號(hào)的產(chǎn)生1、節(jié)拍與狀態(tài)周期
2、機(jī)器周期和指令周期3、基本時(shí)序定時(shí)單位當(dāng)前82頁,總共138頁。1、節(jié)拍與狀態(tài)周期
時(shí)鐘發(fā)生器是一個(gè)2分頻的觸發(fā)器電路,它將振蕩器的信號(hào)頻率fOSC除以2,向CPU提供兩相時(shí)鐘信號(hào)P1和P2。時(shí)鐘信號(hào)的周期稱為機(jī)器狀態(tài)周期S(STATE),是振蕩周期的2倍。在每個(gè)時(shí)鐘周期(即機(jī)器狀態(tài)周期S)的前半周期,相位1(P1)信號(hào)有效,在每個(gè)時(shí)鐘周期的后半周期,相位2(P2,節(jié)拍2)信號(hào)有效。每個(gè)時(shí)鐘周期(以后常稱狀態(tài)S)有兩個(gè)節(jié)拍(相)P1和P2,CPU就以兩相時(shí)鐘P1和P2為基本節(jié)拍指揮89C51單片機(jī)各個(gè)部件協(xié)調(diào)地工作。§2.4.1 片內(nèi)時(shí)鐘信號(hào)的產(chǎn)生當(dāng)前83頁,總共138頁。圖2-1289C51的片內(nèi)振蕩器及時(shí)鐘發(fā)生器當(dāng)前84頁,總共138頁。2、機(jī)器周期和指令周期一個(gè)機(jī)器周期是指CPU訪問存儲(chǔ)器一次所需的時(shí)間。例如,取指令、讀存儲(chǔ)器、寫存儲(chǔ)器等等。他是執(zhí)行一條指令所需時(shí)長的單位一個(gè)機(jī)器周期包括12個(gè)振蕩周期,分為6個(gè)S狀態(tài):S1~S6。每個(gè)狀態(tài)又分為兩拍,稱為P1和P2。因此,一個(gè)機(jī)器周期中的12個(gè)振蕩周期表示為S1P1,S1P2,S2P1,···,S6P1,S6P2。若采用6MHz晶體振蕩器,則狀態(tài)周期及機(jī)器周期各為多少?§2.4.1 片內(nèi)時(shí)鐘信號(hào)的產(chǎn)生當(dāng)前85頁,總共138頁。2、機(jī)器周期和指令周期指令周期:執(zhí)行一條指令所需的時(shí)間。每條指令的指令周期都由一個(gè)或幾個(gè)機(jī)器周期組成。有單周期指令、雙周期指令、和四周期指令。機(jī)器周期數(shù)少則執(zhí)行速度快。其中四周期指令包括乘除指令。其余都為單周期或雙周期?!?.4.1 片內(nèi)時(shí)鐘信號(hào)的產(chǎn)生當(dāng)前86頁,總共138頁。3、基本時(shí)序定時(shí)單位綜上所述,89C51或其他80C51單片機(jī)的基本時(shí)序定時(shí)單位有如下4個(gè)振蕩周期:晶振的振蕩周期,為最小的時(shí)序單位。狀態(tài)周期:振蕩頻率經(jīng)單片機(jī)內(nèi)的二分頻器分頻后提供給片內(nèi)CPU的時(shí)鐘周期。因此,一個(gè)狀態(tài)周期包含2個(gè)振蕩周期。機(jī)器周期(MC):1個(gè)機(jī)器周期由6個(gè)狀態(tài)周期即12個(gè)振蕩周期組成,是計(jì)算機(jī)執(zhí)行一種基本操作的時(shí)間單位。指令周期:執(zhí)行一條指令所需的時(shí)間。一個(gè)指令周期由1~4個(gè)機(jī)器周期組成,依據(jù)指令不同而不同,見附錄A?!?.4.1 片內(nèi)時(shí)鐘信號(hào)的產(chǎn)生當(dāng)前87頁,總共138頁。4種時(shí)序單位中,振蕩周期和機(jī)器周期是單片機(jī)內(nèi)計(jì)算其他時(shí)間值(例如,波特率、定時(shí)器的定時(shí)時(shí)間等)的基本時(shí)序單位。4個(gè)時(shí)序單位從小到大依次是節(jié)拍(振蕩脈沖周期,1/fOSC)、狀態(tài)周期(時(shí)鐘周期)、機(jī)器周期和指令周期,如圖2-13所示。單片機(jī)外接晶振頻率12MHz時(shí)的各種時(shí)序單位的大小。3、基本時(shí)序定時(shí)單位§2.4.1 片內(nèi)時(shí)鐘信號(hào)的產(chǎn)生當(dāng)前88頁,總共138頁?!?.4.2 CPU取指、執(zhí)指時(shí)序每條指令的執(zhí)行都可以包括取指和執(zhí)指兩個(gè)階段。在取指階段,CPU從內(nèi)部或外部ROM中取出指令操作碼及操作數(shù),然后再執(zhí)行這條指令。根據(jù)各種操作的繁簡(jiǎn)程度,單字節(jié)和雙字節(jié)的指令都可能是單機(jī)器周期或雙周期,而三字節(jié)指令都是雙周期的,只有乘、除指令占四周期。CPU取指、執(zhí)指時(shí)序如
圖2-14所示當(dāng)前89頁,總共138頁。當(dāng)前90頁,總共138頁?!?.5 復(fù)位操作§2.5.1 復(fù)位操作的主要功能§2.5.2 復(fù)位信號(hào)及其產(chǎn)生§2.5.3 復(fù)位電路當(dāng)前91頁,總共138頁。§2.5.1 復(fù)位操作的主要功能一、復(fù)位是單片機(jī)的初始化操作。二、主要功能:三、寄存器的復(fù)位狀態(tài):當(dāng)前92頁,總共138頁。2.5.1復(fù)位操作主要功能復(fù)位是單片機(jī)的初始化操作(使CPU及各部件處于確定的初態(tài),并從初態(tài)開始工作)程序地址指針PC初始化為0000H,使單片機(jī)從0000H單元開始執(zhí)行程序當(dāng)由于程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)死鎖狀態(tài)時(shí),為擺脫困境,也需要按復(fù)位鍵重新啟動(dòng)。當(dāng)前93頁,總共138頁。表2-8各特殊寄存器的復(fù)位值當(dāng)前94頁,總共138頁。§2.5.2 復(fù)位信號(hào)及其產(chǎn)生一、復(fù)位信號(hào):RST引腳為復(fù)位信號(hào)輸入端。當(dāng)RST引腳為高電平,且有效時(shí)間持續(xù)24個(gè)振蕩周期以上,才能復(fù)位。二、產(chǎn)生復(fù)位信號(hào)的電路邏輯圖:如圖2-15所示。當(dāng)前95頁,總共138頁?!?.5.3 復(fù)位電路1、上電自動(dòng)復(fù)位:是通過外部復(fù)位電路的電容充電實(shí)現(xiàn)。如圖2-16(a)所示。2、手動(dòng)復(fù)位:手動(dòng)復(fù)位方式:如圖2-16(b)所示。當(dāng)前96頁,總共138頁。圖2-16(a)上電復(fù)位電路VCCCRVCCRST/VPDVSS1KΩ22μF89C511)復(fù)位過程2)復(fù)位條件:只要Vcc的上升時(shí)間不超過1ms,就自動(dòng)上電復(fù)位,即接通電源就完成了系統(tǒng)復(fù)位。3)參數(shù)選擇:1、上電自動(dòng)復(fù)位OSC=6MHZC=22uFR=1KΩOSC=12MHZC=10UFR=8.2KΩ當(dāng)前97頁,總共138頁。1)復(fù)位方式:通過使復(fù)位端經(jīng)電阻與VCC電源接通而實(shí)現(xiàn)。VCCCR2VCCRST/VPDVSS1KΩ22μF89C51R1200ΩRESET2.手動(dòng)復(fù)位圖2-16(b)按鍵電平復(fù)位電路當(dāng)前98頁,總共138頁?!?.5.3 復(fù)位電路復(fù)位電路具有非常重要作用,一個(gè)單片機(jī)能否正常運(yùn)行,首先檢查是否復(fù)位成功。初步檢查可用示波器監(jiān)視RST引腳,按下復(fù)位鍵,觀察是否有足夠幅度的波形輸出(瞬時(shí)的),還可以通過改變復(fù)位電路電阻容量。當(dāng)前99頁,總共138頁?!?.6 89C51單片機(jī)的低功耗工作方式89C51屬于CHMOS的單片機(jī),運(yùn)行時(shí)耗電少,而且還提供兩種節(jié)電工作方式,即空閑(等待、待機(jī))方式和掉電(停機(jī))工作方式,以進(jìn)一步降低功耗。圖2-17所示為實(shí)現(xiàn)這兩種方式的內(nèi)部電路。由圖2-17可見,若IDL=0,則89C51將進(jìn)入空閑運(yùn)作方式。掉電方式下(PD=1),振蕩器凍結(jié)。當(dāng)前100頁,總共138頁?!?.689C51單片機(jī)的低功耗工作方式圖2-17
空閑和掉電方式控制電路圖2-17中,PD和IDL均為PCON中PD和IDL觸發(fā)器的輸出端。當(dāng)前101頁,總共138頁?!?.6.1 方式的設(shè)定空閑方式和掉電方式是通過對(duì)SFR中的PCON(地址87H)相應(yīng)位置1而啟動(dòng)的。圖2-18所示為89C51電源控制寄存器PCON各位的分布情況。HMOS器件的PCON只包括一個(gè)SMOD位,其他4位是CHMOS器件獨(dú)有的。3個(gè)保留位用戶不得使用,因?yàn)橛布]有做出安排,可能在今后的MCS51新產(chǎn)品中代表某特定的功能。圖2-18電源控制寄存器PCON當(dāng)前102頁,總共138頁。圖2-18中各符號(hào)的名稱和功能如下。SMOD:波特率倍頻位。若此位為1,則串行口方式1、方式2和方式3的波特率加倍。GF1和GF0:通用標(biāo)志位。PD:掉電方式位。此位寫1即啟動(dòng)掉電方式。由圖217可見,此時(shí)時(shí)鐘凍結(jié)。IDL:空閑方式位。此位寫1即啟動(dòng)空閑方式。這時(shí)CPU因無時(shí)鐘控制而停止運(yùn)作。如果同時(shí)向PD和IDL兩位寫1,則PD優(yōu)先。89C51中PCON的復(fù)位值為0×××0000B。§2.6.1 方式的設(shè)定圖2-18電源控制寄存器PCON當(dāng)前103頁,總共138頁?!?.6.2 空閑(等待、待機(jī))工作方式當(dāng)CPU執(zhí)行完置IDL=1(PCON.1)的指令后,系統(tǒng)進(jìn)入空閑工作方式。這時(shí),內(nèi)部時(shí)鐘不向CPU提供,而只供給中斷、串行口、定時(shí)器部分。CPU的內(nèi)部狀態(tài)維持,即包括堆棧指針SP、程序計(jì)數(shù)器PC、程序狀態(tài)字PSW、累加器ACC所有的內(nèi)容保持不變,端口狀態(tài)也保持不變。ALE和PSEN保持邏輯高電平。當(dāng)前104頁,總共138頁?!?.6.2 空閑(等待、待機(jī))工作方式進(jìn)入空閑方式后,有兩種方法可以使系統(tǒng)退出空閑方式。一是任何的中斷請(qǐng)求被響應(yīng)都可以由硬件將PCON.0(IDL)清0而中止空閑工作方式。當(dāng)執(zhí)行完中斷服務(wù)程序返回到主程序時(shí),在主程序中,下一條要執(zhí)行的指令將是原先使IDL置位指令后面的那條指令。PCON中的通用標(biāo)志位GF1和GF0可以用來指明中斷是在正常操作還是在待機(jī)方式期間發(fā)生的。在待機(jī)方式時(shí),除用指令使IDL=1外,還可先用指令使GF1或GF0置1。當(dāng)由于中斷而停止待機(jī)方式時(shí),在中斷服務(wù)程序中可以檢查這些標(biāo)志位,說明是從待機(jī)方式進(jìn)入中斷的。當(dāng)前105頁,總共138頁?!?.6.2 空閑(等待、待機(jī))工作方式另一種退出空閑方式的方法是硬件復(fù)位,由于在空閑工作方式下振蕩器仍然工作,因此硬件復(fù)位僅需2個(gè)機(jī)器周期便可完成。而RST端的復(fù)位信號(hào)直接將PCON.0(IDL)清0,從而退出空閑狀態(tài),CPU則從進(jìn)入空閑方式的下一條指令開始重新執(zhí)行程序。當(dāng)前106頁,總共138頁。當(dāng)CPU執(zhí)行一條置PCON.1位(PD)為1的指令后,系統(tǒng)進(jìn)入掉電工作方式。在這種工作方式下,內(nèi)部振蕩器停止工作。由于沒有振蕩時(shí)鐘,因此,所有的功能部件都停止工作。但內(nèi)部RAM區(qū)和特殊功能寄存器的內(nèi)容被保留,而端口的輸出狀態(tài)值都保存在對(duì)應(yīng)的SFR中,ALE和PSEN都為低電平?!?.6.3 掉電(停機(jī))工作方式當(dāng)前107頁,總共138頁?!?.6.3 掉電(停機(jī))工作方式退出掉電方式的惟一方法是由硬件復(fù)位,復(fù)位后將所有特殊功能寄存器的內(nèi)容初始化,但不改變片內(nèi)RAM區(qū)的數(shù)據(jù)。在掉電工作方式下,VCC可以降到2V,但在進(jìn)入掉電方式之前,VCC不能降低。而在準(zhǔn)備退出掉電方式之前,VCC必須恢復(fù)正常的工作電壓值,并維持一段時(shí)間(約10ms),使振蕩器重新啟動(dòng)并穩(wěn)定后方可退出掉電方式。當(dāng)前108頁,總共138頁。§2.7 輸出/輸入端口結(jié)構(gòu)I/O端口概述§2.7.1P1口§2.7.2P2口§2.7.3P0口§2.7.4P3口§2.7.5端口的負(fù)載能力和接口要求返回當(dāng)前109頁,總共138頁。 I/O端口概述返回1.89C51單片機(jī)有四個(gè)8位并行I/O端口:P0、P1、P2和P3。2.每個(gè)端口都是8位準(zhǔn)雙向口,共占32根引腳。3.每一條I/O線都能獨(dú)立地用作輸入或輸出。4.每個(gè)端口都包括一個(gè)鎖存器(即特殊功能寄存器P0~P3),一個(gè)輸出驅(qū)動(dòng)器和輸入緩沖器,作輸出是數(shù)據(jù)可以鎖存,作輸入時(shí)數(shù)據(jù)可以緩沖。當(dāng)前110頁,總共138頁?!?.7.1P1口一、P1口結(jié)構(gòu)二、P1口用作通用I/O當(dāng)前111頁,總共138頁。§2.7.1 P1口一、P1口結(jié)構(gòu):其電路結(jié)構(gòu)見圖2-19,輸出驅(qū)動(dòng)部分與P0口不同,內(nèi)部有上拉負(fù)載電阻與電源相連。實(shí)質(zhì)上,電阻是兩個(gè)場(chǎng)效應(yīng)管FET并在一起:一個(gè)FET為負(fù)載管,其電阻固定。另一個(gè)FET可工作在導(dǎo)通或截止兩種狀態(tài),使其總電阻值變化近似為0或阻值很大兩種情況。當(dāng)阻值近似為0時(shí),可將引腳快速上拉至高電平;當(dāng)阻值很大時(shí),P1口為高阻輸入狀態(tài)。返回當(dāng)前112頁,總共138頁。圖2-19
P1口某位的結(jié)構(gòu)當(dāng)前113頁,總共138頁?!?.7.1 P1口二、P1口用作通用I/OP1口也是一個(gè)準(zhǔn)雙向口。在端口用作輸入時(shí),也必須先向?qū)?yīng)的鎖存器寫入1,使FET截止。當(dāng)P1口輸出高電平時(shí),能向外提供拉電流負(fù)載,所以不必再接上拉電阻。返回當(dāng)前114頁,總共138頁?!?.7.2P2口一、P2口結(jié)構(gòu)二、P2口用作一般I/O口三、P2口用作高8位地址總線返回當(dāng)前115頁,總共138頁。一、P2口結(jié)構(gòu)如圖2-20所示,P2口某位的結(jié)構(gòu)與P0口類似,有MUX開關(guān)。驅(qū)動(dòng)部分與P1口類似,但比P1口多了一個(gè)轉(zhuǎn)換控制部分。返回當(dāng)前116頁,總共138頁。圖2-20
P2口某位的結(jié)構(gòu)圖返回當(dāng)前117頁,總共138頁。二、P2口用作一般I/O口1、當(dāng)執(zhí)行MOV指令(片內(nèi)的數(shù)據(jù)存儲(chǔ)器)或EA=1時(shí),執(zhí)行MOVC指令(片內(nèi)的程序存儲(chǔ)器)時(shí),由內(nèi)部硬件自動(dòng)使開關(guān)MUX倒向鎖存器的Q端,這時(shí),P2口為一般I/O口。2、當(dāng)執(zhí)行MOVX(片外的RAM)或EA=0時(shí)執(zhí)行MOVC指令(片外的ROM)時(shí),開關(guān)倒向地址端。輸出高8位地址。當(dāng)前118頁,總共138頁。二、P2口用作一般I/O口1.當(dāng)系統(tǒng)擴(kuò)展片外RAM和ROM時(shí),訪問片外的RAM和ROM接連不斷,所以P2口無法用作通用的輸入輸出口。2、在只需擴(kuò)展256B片外RAM的系統(tǒng)中,使用“MOVXA,@Ri”類指令訪問片外RAM時(shí),尋址范圍是256B,只需低8位地址線就可以實(shí)現(xiàn)。P2口不受該指令影響,仍可作通用I/O口。當(dāng)前119頁,總共138頁。二、P2口用作一般I/O口3、若擴(kuò)展的RAM容量超過256B,使用“MOVXA,@DPTR”類指令的尋址范圍是64KB,此時(shí),高8位地址總線用P2口輸出。在片外RAM讀/寫周期內(nèi),P2口鎖存器仍保持原來端口的數(shù)據(jù);在訪問片外RAM周期結(jié)束后,多路開關(guān)MUX自動(dòng)切換倒鎖存器Q端。由于CPU對(duì)RAM的訪問不是經(jīng)常的,在這種情況下,P2口在一定的限度內(nèi)仍可用作通用I/O口。當(dāng)前120頁,總共138頁?!?.7.3P0口一、結(jié)構(gòu)二、P0口作為一般I/O口使用三、P0口作為地址/數(shù)據(jù)總線使用返回當(dāng)前121頁,總共138頁。一、結(jié)構(gòu)P0口某位的結(jié)構(gòu)由一個(gè)輸出鎖存器、二個(gè)三態(tài)輸入緩沖器和輸出驅(qū)動(dòng)電路及控制電路組成。如圖2-21所示。當(dāng)C=0時(shí),開關(guān)MUX被控為如圖示位置,P0口為通用I/O口;當(dāng)C=1時(shí),開關(guān)撥向反相器3的輸出端,P0口分時(shí)作為地址/數(shù)據(jù)總線使用。當(dāng)前122頁,總共138頁。圖2-21
P0口某位的結(jié)構(gòu)圖當(dāng)C=0時(shí),開關(guān)MUX被控為如圖示位置,P0口為通用I/O口;當(dāng)C=1時(shí),開關(guān)撥向反相器3的輸出端,P0口分時(shí)作為地址/數(shù)據(jù)總線使用。當(dāng)前123頁,總共138頁。二、P0口作為一般I/O口使用1、P0口用作輸出口2、P0口作輸入口返回當(dāng)前124頁,總共138頁。1、P0口用作輸出口當(dāng)CPU執(zhí)行輸出指令時(shí),寫脈沖加在D鎖存器的CL上,這樣,與內(nèi)部總線相連的D端的數(shù)據(jù)取反后就出現(xiàn)在Q端上,又經(jīng)輸出級(jí)FET(T2)反相,在P0端口上出現(xiàn)的數(shù)據(jù)正好是內(nèi)部總線的數(shù)據(jù)。這是一般的數(shù)據(jù)輸出情況。返回當(dāng)前125頁,總共138頁。2、P0口作輸入口當(dāng)執(zhí)行一條由端口輸入的指令時(shí),“讀引腳”脈沖把三態(tài)緩沖器2打開,這樣,端口上的數(shù)據(jù)經(jīng)過緩沖器2讀入到內(nèi)部總線。在端口進(jìn)行輸入操作前,應(yīng)先向端口鎖存器寫入1,也就是使鎖存器Q=0。因?yàn)榭刂凭€C=0,因此T1和T2全截止,引腳處于懸浮狀態(tài),可作高阻抗輸入。當(dāng)前126頁,總共138頁。3、P0口作為地址/數(shù)據(jù)總線使用1.P0口用作輸出地址/數(shù)據(jù)總線以P0口引腳輸出低8位地址或數(shù)據(jù)信息,MUX開關(guān)把CPU內(nèi)部地址/數(shù)據(jù)線經(jīng)反向器3與驅(qū)動(dòng)場(chǎng)效應(yīng)管FET(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 專項(xiàng)消防設(shè)備增設(shè)協(xié)議樣本版A版
- 2025年度廠房裝飾裝修工程節(jié)能合同范本4篇
- 2025年度創(chuàng)新產(chǎn)業(yè)園廠房轉(zhuǎn)租服務(wù)合同標(biāo)準(zhǔn)4篇
- 做菜知識(shí)培訓(xùn)課件圖片
- 二零二五年度體育場(chǎng)館建設(shè)擔(dān)保協(xié)議3篇
- 2025年度高原地區(qū)柴油發(fā)電機(jī)組銷售及售后服務(wù)合同3篇
- 《社區(qū)調(diào)解實(shí)務(wù)講解》課件
- 2024年04月河南鄭州銀行信息科技部社會(huì)招考筆試歷年參考題庫附帶答案詳解
- 個(gè)人對(duì)公司長期借款合同(2024年版)
- 專業(yè)美甲技術(shù)勞務(wù)合作協(xié)議樣本(2024版)版B版
- 科室醫(yī)療質(zhì)量與安全管理小組工作制度
- 中華民族共同體概論課件第五講大一統(tǒng)與中華民族共同體初步形成(秦漢時(shí)期)
- 初二生地會(huì)考試卷及答案-文檔
- 私營企業(yè)廉潔培訓(xùn)課件
- 施工單位值班人員安全交底和要求
- 中國保險(xiǎn)用戶需求趨勢(shì)洞察報(bào)告
- 數(shù)字化轉(zhuǎn)型指南 星展銀行如何成為“全球最佳銀行”
- 中餐烹飪技法大全
- 靈芝孢子油減毒作用課件
- 現(xiàn)場(chǎng)工藝紀(jì)律檢查表
- 醫(yī)院品管圈與護(hù)理質(zhì)量持續(xù)改進(jìn)PDCA案例降低ICU病人失禁性皮炎發(fā)生率
評(píng)論
0/150
提交評(píng)論