




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1第2章 MCS-51單片機(jī)結(jié)構(gòu)及原理 本章內(nèi)容: (1)MCS-51系列的8051的基本結(jié)構(gòu); (2)存儲(chǔ)器結(jié)構(gòu)及其配置; (3)P0、P1、P2、P3四個(gè)I/O口的基本工作原理 和操作特點(diǎn); (4)單片機(jī)的時(shí)序 (5)復(fù)位22.1.1 MCS-51的基本組成 MCS-51單片機(jī)(以8051為例,Intel產(chǎn)品)l1個(gè)8位CPU;l1個(gè)片內(nèi)振蕩器及時(shí)鐘電路;l128字節(jié)RAM(數(shù)據(jù)存儲(chǔ)器);l4K字節(jié)ROM(程序存儲(chǔ)器);l2個(gè)16位定時(shí)器/計(jì)數(shù)器;l32條可編程的I/O線(四個(gè)8位并行I/O端口);l1個(gè)全雙工串行口;l5個(gè)中斷源;3振蕩電路外部中斷CPU中斷控制4K字節(jié)ROM128字節(jié)R
2、AM定時(shí)/計(jì)數(shù)器1定時(shí)/計(jì)數(shù)器0總線控制4個(gè) I/0口串行口計(jì)數(shù)器輸入P0P2P1P3RXDTXDEARESETXTAL1XTAL2OSCC1C2PSENALE 地址/數(shù)據(jù)總線4邏輯符號(hào)引腳分配5(1)電源線 5V供電VCC (40)5V GND (20) 地引腳分配P0(2)晶體振蕩器信號(hào)輸入輸出XTAL1(18)晶體振蕩器信號(hào)輸入XTAL1(19)晶體振蕩器信號(hào)輸出(3)輸入/輸出線 P0.0P0.7 P0口P1.0P1.7 P1口P2.0P2.7 P2口P3.0P3.7 P3口P1P2P36(4)控制信號(hào)線l ALE(30)地址鎖存控制信號(hào) (Address Latch Enable),
3、 ALE用于將地址總線的低八位鎖存。該信號(hào)頻率為晶振頻率 的1/6,可作為外部定時(shí)或時(shí)鐘使用。引腳分配PSEN (29)外部程序存儲(chǔ)器讀選通信號(hào)( Program Store Enable)該信號(hào)為低電平時(shí),CPU從外部程序存儲(chǔ)器單元讀取指令。7l (31)內(nèi)外程序存儲(chǔ)器選擇控制 (External Access Enable) 0,CPU對(duì)程序存儲(chǔ)器的操作僅限于單片機(jī)外部程序存儲(chǔ)器。 1, CPU對(duì)程序存儲(chǔ)器的操作從單片機(jī)內(nèi)部程序存儲(chǔ)器開始,并可延伸到單片機(jī)的外部程序存儲(chǔ)器。EAEAEA(4)控制信號(hào)線(續(xù))引腳分配 RESET(9) 復(fù)位信號(hào)。 RESET持續(xù)2個(gè)機(jī)器周期以上的高電平,單片
4、機(jī)復(fù)位。8(5)部分引腳的第二功能(復(fù)用,同一個(gè)引腳被雙重定義)第二功能RXD 串行輸入T1 定時(shí)器1外部計(jì)數(shù)信號(hào)輸入T0 定時(shí)器0外部計(jì)數(shù)信號(hào)輸入INT1 外部中斷1,輸入TXD 串行輸出INT0 外部中斷0,輸入WR 外部數(shù)據(jù)存儲(chǔ)器寫選通信號(hào),輸出端口引腳P3.0P3.2P3.1P3.3P3.4P3.5P3.6P3.7RD 外部數(shù)據(jù)存儲(chǔ)器讀選通信號(hào),輸出9(5)部分引腳的第二功能l程序存儲(chǔ)器固化所需的信號(hào) 編程脈沖 ALE/PROG 編程電壓 /VPPl 備用電源引入 RESET/VPD: 當(dāng)電源電壓下降到某個(gè)給定下限時(shí),備用電源由該引腳向單片機(jī)芯片內(nèi)部RAM供電,以保護(hù)內(nèi)部RAM的內(nèi)容不
5、丟失。2.1.2 MCS-51單片機(jī)的引腳與功能EA10TMP1TMP2ALUPSW4K字節(jié)ROMACCSPB寄存器RAM地址寄存器地址譯碼器與128字節(jié)RAMP2口鎖存器P2口驅(qū)動(dòng)器P3口鎖存器P3口驅(qū)動(dòng)器P1口鎖存器P1口驅(qū)動(dòng)器P0口鎖存器P0口驅(qū)動(dòng)器程序地址寄存器PCPC加1寄存器緩沖器DPTRPCONSCON TMOD TCONTH0TL0TH1TL1SBUFIEIP中斷模塊 串行口模塊定時(shí)器/計(jì)數(shù)器模塊指令寄存器定時(shí)與控制電路PSENALERESETEAXTAL1XTAL2OSCC1C2P2.0P2.7P0.0P0.7P3.0P3.7P1.0P1.7VccGND振蕩器總線 數(shù)據(jù)存儲(chǔ)器
6、 程序存儲(chǔ)器 特殊功能 寄存器 I/O口 I/O口 運(yùn)算器 控制器2.1.3 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)11(一) 中央處理器(CPU) CPU由運(yùn)算器和控制器組成,它是單片機(jī)的核心,完成運(yùn)算和控制操作。 2.1.3 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)1. 運(yùn)算器組成: 算術(shù)邏輯運(yùn)算器ALU,算術(shù)累加器ACC,寄存器B,暫存器TMP1,暫存器TMP2,布爾累加器Cy等功能:進(jìn)行移位、算術(shù)運(yùn)算和邏輯運(yùn)算;MCS-51運(yùn)算器還包含有一個(gè)布爾(位)處理器,用來(lái)處理位操作。12 (1)累加器A(8位) 功能:暫存操作數(shù)及保存運(yùn)算結(jié)果; A是MCS-51單片機(jī)中最繁忙的寄存器; (2)寄存器B(8位) 功能
7、:用于乘法、除法運(yùn)算,對(duì)于其它指令可作為一個(gè)寄存器使用; (3 )程序狀態(tài)字寄存器PSW(8位) 功能:存放累加器A在運(yùn)算過(guò)程標(biāo)志位(P,OV,AC,Cy)的狀態(tài);指出CPU所使用的當(dāng)前工作寄存器組。2.1.3 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)13CYACF0RS0OVPRS1PSW.7PSW.0 CY (PSW.7) 進(jìn)位/借位標(biāo)志位。 若ACC在運(yùn)算過(guò)程中發(fā)生了進(jìn)位或借位,則CY=1;否則=0。它也是布爾處理器的位累加器,可用于布爾操作。 AC(PSW.6)半進(jìn)位/借位標(biāo)志位。 若ACC在運(yùn)算過(guò)程中,D3位向D4位發(fā)生了進(jìn)位或借位,則CY=1,否則=0。機(jī)器在執(zhí)行“DA A”指令時(shí)自動(dòng)要判斷這
8、一位,我們可以暫時(shí)不關(guān)心它。 F0 (PSW.5) 用戶標(biāo)志位。PSW.6 PSW.52.1.3 MCS-51單片機(jī)內(nèi)部結(jié)構(gòu)PSW142.1.3 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)PSW.7PSW.0 RS1(PSW.4)、RS0(PSW.3)工作寄存器組選擇位。RS1,RS0 = 0 1 則選擇了工作寄存器組 1 區(qū)R0R7分別代表08H 0FH單元。RS1,RS0 = 1 0 則選擇了工作寄存器組 2 區(qū) R0R7分別代表10H 17H單元。RS1,RS0 = 1 1 則選擇了工作寄存器組 3 區(qū)R0R7分別代表18H 1FH單元。CYACF0RS0OVPRS1PSW.4 PSW.3RS1,RS
9、0 = 0 0 則選擇了工作寄存器組 0 區(qū)R0R7分別代表08H 0FH單元。PSW15CYACF0RS0OVPRS1PSW.7PSW.0OV (PSW.2)溢出標(biāo)志位。 OV=1時(shí)特指累加器在進(jìn)行帶符號(hào)數(shù)(-128+127)運(yùn)算時(shí)出錯(cuò)(超出范圍);OV=0時(shí)未出錯(cuò)。PSW.1 未定義。P (PSW.0)奇偶標(biāo)志位。 P=1表示累加器中“1”的個(gè)數(shù)為奇數(shù) P=0表示累加器中“1”的個(gè)數(shù)為偶數(shù) CPU隨時(shí)監(jiān)視著ACC中的“1”的個(gè)數(shù),并反映在PSW中PSW.2 PSW.12.1.3 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)PSW16(4)布爾處理器Cy 實(shí)現(xiàn)各種位邏輯運(yùn)算和傳送;MCS-51具有一個(gè)位尋址
10、空間。 (5) TMP1和TMP2為8位暫存寄存器 存放參與預(yù)算的操作數(shù)。2.1.3 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)MCS-51僅能實(shí)現(xiàn)兩個(gè)8位二進(jìn)制數(shù)的算術(shù)邏輯運(yùn)算! 17 2. 控制器l組成: 定時(shí)與控制部件,復(fù)位電路,程序計(jì)數(shù)器(PC),指令寄存器、指令譯碼器,數(shù)據(jù)指針(DPTR),堆棧指針(SP)等l作用:產(chǎn)生計(jì)算機(jī)所需的時(shí)序,控制程序自動(dòng)執(zhí)行。CPU程序存儲(chǔ)器指令寄存器外外RAM,EPROM,外外I/O指令譯碼器控制單片機(jī)各部分的運(yùn)行,產(chǎn)生ALE,PSEN, RD/WR2.1.3 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)18l程序計(jì)數(shù)器PC(16位)程序計(jì)數(shù)器PC用來(lái)存放即要執(zhí)行的指令地址,共16
11、位,低8位經(jīng)P0 口輸出,高8位經(jīng)P2口輸出。CPU每取一次機(jī)器碼,PC內(nèi)容自動(dòng)加一, CPU執(zhí)行一條指令,PC內(nèi)容自動(dòng)增加該指令的長(zhǎng)度。CPU復(fù)位后,PC內(nèi)容為0000H,它標(biāo)志著程序從頭開始執(zhí)行。 PC的內(nèi)容變化決定程序的流向。l指令寄存器(8位) 指令寄存器中存放將要執(zhí)行的指令代碼,通過(guò)指令譯碼器,將指令代碼轉(zhuǎn)化為電信號(hào)控制信號(hào)ALE等。 2.1.3 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)192.1.3 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)l數(shù)據(jù)指針DPTR(16位) 用于訪問(wèn)外部RAM或外部I/O口,提供十六位地址。用于程序存儲(chǔ)器的查表和程序散轉(zhuǎn)指令,作為基地址寄存器,提供十六位基地址。堆棧指針寄存器S
12、P(8位) 用于管理堆棧,指出棧頂位置。 MCS-51單片機(jī)復(fù)位后, (SP)=07H 202.1.3 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)(二)存儲(chǔ)器 1.內(nèi)部數(shù)據(jù)存儲(chǔ)器單片機(jī)的內(nèi)部數(shù)據(jù)存儲(chǔ)器由RAM地址寄存器、地址譯碼器以及128個(gè)單元的RAM構(gòu)成,用于存放可讀寫的數(shù)據(jù)。2. 內(nèi)部程序存儲(chǔ)器 MCS-51系列單片機(jī)(8031除外)的內(nèi)部程序存儲(chǔ)器由程序地址寄存器、地址譯碼器以及4K(4096)個(gè)單元的ROM構(gòu)成,用于存放程序的機(jī)器代碼和常數(shù)。 2 . 特殊功能寄存器(Special Function Register,SFR) MCS-51系列單片機(jī)有21個(gè)可以尋址的特殊功能寄存器,包括單片機(jī)內(nèi)的
13、I/O口、串行口、定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)等相關(guān)的數(shù)據(jù)寄存器(或緩沖器)以及控制寄存器和狀態(tài)寄存器,用于存放相應(yīng)功能部件的控制命令、狀態(tài)和數(shù)據(jù)。21 2.1.3 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)(三)并行口(Parallel Port) 有4個(gè)并行的I/O口:P0、P1、P2、P3,每根口線都可獨(dú)立地用作輸入或輸出。(四)串行口(Serial Port) 有1個(gè)全雙工的串行口,用于串行通信。串行口由發(fā)送緩沖器SBUF、接收緩沖器SBUF、移位寄存器和串行口控制邏輯等部分組成。(五) 定時(shí)/計(jì)數(shù)器(Timer/Counter) 有2個(gè)16位的定時(shí)/計(jì)數(shù)器T0和T1,T0由TH0和TL0構(gòu)成,T1由TH
14、1和TL1構(gòu)成,定時(shí)/計(jì)數(shù)器方式寄存器TMOD選擇定時(shí)/計(jì)數(shù)器的工作模式和方式,定時(shí)/計(jì)數(shù)器控制寄存器TCON控制T0和T1的啟動(dòng)和停止,同時(shí)反映T0和T1的溢出狀態(tài)。(六)中斷系統(tǒng)(Interrupt System) 有5個(gè)中斷源,分別為2個(gè)外部中斷、2個(gè)定時(shí)/計(jì)數(shù)器溢出產(chǎn)生的中斷、1個(gè)串行口接收/發(fā)送產(chǎn)生的中斷,提供2個(gè)中斷優(yōu)先級(jí)。222.2 MCS51單片機(jī)的存儲(chǔ)器 MCS-51單片機(jī)的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開設(shè)置,地址空間相互獨(dú)立。MCS51存儲(chǔ)器地址空間可分為以下5類:(1)程序存儲(chǔ)器,最大空間64K;(2)片內(nèi)數(shù)據(jù)存儲(chǔ)器,128個(gè)單元;(3)特殊功能寄存器,共21個(gè);(4)位尋址
15、空間,211位;(5)外部數(shù)據(jù)寄存器,最大空間64K。這些資源與單片機(jī)應(yīng)用的關(guān)系密切,下面我們介紹上述5類存儲(chǔ)空間的功能。 232.2.1 程序存儲(chǔ)器程序存儲(chǔ)器用來(lái)存放程序和常數(shù),最大尋址空間64K單元。MCS51系列產(chǎn)品按程序存儲(chǔ)器配置類型分為3類:8051芯片含有4k個(gè)單元的ROM;8751芯片含有4k個(gè)單元的EPROM;8031中無(wú)程序存儲(chǔ)器,需要擴(kuò)展程序存儲(chǔ)器。在實(shí)際應(yīng)用中,用戶既可使用芯片內(nèi)部的程序存儲(chǔ)器,也可以使用芯片外部的程序存儲(chǔ)器,但最大空間為64k,程序存儲(chǔ)器的地址空間構(gòu)成與引腳的 接法有關(guān)。EA242.2.1 程序存儲(chǔ)器(1)芯片內(nèi)部含有程序存儲(chǔ)器的單片機(jī)( 8051/87
16、51 )當(dāng) =1(接高電平)時(shí),8051/8751的程序存儲(chǔ)器結(jié)構(gòu)如圖: EA00000FFF1000FFFF00010FFEFFFE 1001芯片內(nèi)部的4K 芯片外部的60K程序存儲(chǔ)器結(jié)構(gòu)鎖存器P0P2ALEPSENEAVccR片外ROMDBOE AB8751/8051程序存儲(chǔ)器連接電路252.2.1 程序存儲(chǔ)器(1)芯片內(nèi)部含有程序存儲(chǔ)器的單片機(jī)(8051/8751)當(dāng) =0(接低電平)時(shí),8051/8751的程序存儲(chǔ)器結(jié)構(gòu)如圖: EA0000FFFFFFFE0001 芯片外部的64K程序存儲(chǔ)器結(jié)構(gòu)鎖存器P0P2ALEPSENEAROMDBOE AB8751/8051程序存儲(chǔ)器連接電路26
17、2.2.1 程序存儲(chǔ)器(1)芯片內(nèi)部不含有程序存儲(chǔ)器的單片機(jī)( 8031 ) 必須接地,8031的程序存儲(chǔ)器結(jié)構(gòu)如圖: 0000FFFFFFFE0001 芯片外部的64K程序存儲(chǔ)器結(jié)構(gòu) 不論哪一種MCS-51單片機(jī),如果 接地,其內(nèi)部的程序存儲(chǔ)器將被CPU忽略。EAEA鎖存器P0P2ALEPSENEAROMDBOE AB8751/8051程序存儲(chǔ)器連接電路8031272.2.1 程序存儲(chǔ)器在單片機(jī)的程序存儲(chǔ)器中,有5個(gè)特殊的單元地址被定義為中斷入口地址,分別為:外部中斷入口地址0003H,外部中斷入口地址0013H,定時(shí)/計(jì)數(shù)器T0入口地址000BH,定時(shí)/計(jì)數(shù)器T1入口地址001BH,串行口
18、中斷入口地址0023H。0000000100020003000B0013001B0023復(fù)位INT0中斷入口INT1中斷入口T0中斷入口T1中斷入口串行口中斷入口中斷入口地址映射 282.2.2 片內(nèi)數(shù)據(jù)存儲(chǔ)器MCS-51單片機(jī)的片內(nèi)RAM按照功能可分為3個(gè)區(qū)域:001FH:32個(gè)單元為工作寄存器區(qū)202FH:16個(gè)單元為位尋址區(qū)307FH:80個(gè)單元為數(shù)據(jù)緩沖區(qū)000102031F202F7F數(shù)據(jù)緩沖區(qū)(80個(gè)單元)位尋址區(qū)工作寄存器區(qū)30 (16個(gè)單元)(32個(gè)單元)片內(nèi)RAM分區(qū)示意圖29(一)工作寄存器區(qū)(Register Bank)(00-1FH) 0001020304050607R
19、0R1R2R3R4R5R6R7080F1017181FR0R7R0R7R0R7BANK0BANK1BANK2BANK3工作寄存器組分區(qū) 工作寄存器區(qū)也稱為通用寄存器區(qū)。工作寄存器區(qū)包含4個(gè)工作寄存器組,每個(gè)工作寄存器組中包含8個(gè)工作寄存器R0R7: BANK0(0007H) BANK1(080FH) BANK2(1017H) BANK3(181FH)2.2.2 片內(nèi)數(shù)據(jù)存儲(chǔ)器30 表工作寄存器組的工作寄存器R0R7與內(nèi)RAM單元的對(duì)應(yīng)關(guān)系PSW.4(RS1)PSW.3(RS0)寄存器區(qū)R0R1R2R3R4R5R6R700BANK000H01H02H03H04H05H06H07H01BANK10
20、8H09H0AH0BH0CH0DH0EH0FH10BANK210H11H12H13H14H15H16H17H11BANK318H19H1AH1BH1CH1DH1EH1FH2.2.2 片內(nèi)數(shù)據(jù)存儲(chǔ)器312.2.2 片內(nèi)數(shù)據(jù)存儲(chǔ)器(二)位尋址區(qū)(Bit Addressable Area)(202FH) MCS-51單片機(jī)的片內(nèi)RAM中, 202FH單元被開辟為位尋址區(qū);這些單元的每一位都具有一個(gè)自己的位地址,共168128位。位尋址區(qū)位地址范圍為007FH,CPU可以對(duì)每一位直接操作。 322.2.2 片內(nèi)數(shù)據(jù)存儲(chǔ)器單元地址 D7 D6 D5 D4 D3 D2 D1 D02C67666564636
21、261602B5F5E5D5C5B5A59582A5756555453525150294F4E4D4C4B4A4948284746454443424140273F3E3D3C3B3A3938263736353433323130252F2E2D2C2B2A2928242726252423222120231F1E1D1C1B1A1918221716151413121110210F0E0D0C0B0A09082D6F6E6D6C6B6A69682007060504030201002E77767574737271702F7F7E7D7C7B7A7978內(nèi)部RAM中202FH的位地址映射33l202F單
22、元的位地址區(qū)的使用: (I)在片內(nèi)RAM中只有202FH單元的位能夠進(jìn)行位操作,我們經(jīng)常表示為20H.0,它與位地址00H是等價(jià)的。 (II)位尋址區(qū)16個(gè)單元也可以按單元訪問(wèn),所以,當(dāng)位尋址區(qū)16個(gè)單元的128位未完全使用時(shí),其剩余單元也可作為RAM單元使用。2.2.2 片內(nèi)數(shù)據(jù)存儲(chǔ)器34(三) 數(shù)據(jù)緩沖區(qū)(Data Buffer Area)(307FH)(1)數(shù)據(jù)緩沖區(qū)的作用作為數(shù)據(jù)緩沖、數(shù)據(jù)暫存、作為堆棧區(qū)使用;這些單元只能按單元訪問(wèn)。(2)堆棧堆棧是為了保護(hù)CPU執(zhí)行程序的現(xiàn)場(chǎng),在存儲(chǔ)器中開辟了一個(gè)“先進(jìn)后出”(后進(jìn)先出)的區(qū)域;堆棧的操作:入棧,出棧;操作規(guī)則:先進(jìn)后出;堆棧由堆棧指
23、針SP管理,它始終指向棧頂位置,一般情況下,將堆棧設(shè)在30H單元之后。程序設(shè)計(jì)時(shí),最好設(shè)在片內(nèi)RAM的末端,如 MOV SP, #60H, 以避免堆棧向上生成時(shí)覆蓋所存儲(chǔ)的數(shù)據(jù)。2.2.2 片內(nèi)數(shù)據(jù)存儲(chǔ)器352.2.3 特殊功能寄存器(SFR) MCS-51芯片內(nèi)部有21個(gè)可尋址的SFR(具有地址),它們離散的分布在片內(nèi)RAM 80HFFH范圍內(nèi),并與內(nèi)RAM統(tǒng)一編址。 MCS-51芯片內(nèi)部還有1個(gè)不可尋址的SFR程序計(jì)數(shù)器PC。 對(duì)可尋址的SFR只能采用直接尋址方式,即按單元地址訪問(wèn)的模式; 可尋址的SFR中部分SFR (單元地址能夠被8整除)具有位尋址功能。362.2.3 特殊功能寄存器S
24、FR符號(hào)符號(hào)SFR名稱名稱SFR對(duì)應(yīng)單元對(duì)應(yīng)單元ACC累加器E0HBB寄存器F0HPSW程序狀態(tài)字寄存器D0HDPTR數(shù)據(jù)指針83H /82HSP堆棧指針81HP0P0口80HP1P1口90HP2P2口A0HP3P3口B0HIP中斷優(yōu)先級(jí)B8HIE中斷允許控制A8HSFR符號(hào)符號(hào)SFR名稱名稱SFR對(duì)應(yīng)單元對(duì)應(yīng)單元TMODTimer工作方式89HTCONTimer控制寄存器88HTH0T0計(jì)數(shù)寄存器(H)8CHTL0T0計(jì)數(shù)寄存器(L)8AHTH1T1計(jì)數(shù)寄存器(H)8DHTL1T0計(jì)數(shù)寄存器(L)8BHSCON串行口控制寄存器98HSBUF串行口緩沖器99HPCON電源控制寄存器87H 37
25、2.2.3 特殊功能寄存器特殊功能寄存器(SFR)的位地址空間凡是SFR的地址能被8整除的SFR(單元地址的末位是0或8)都具有位尋址功能,MCS-51單片機(jī)共有11個(gè)SFR具有位尋址功能,這些寄存器(單元)的每一位都有一個(gè)位地址。位地址空間:80FFH。特殊功能寄存器(SFR)的位地址空間的特點(diǎn):(1)SFR對(duì)應(yīng)的單元地址為該SFR最低位的位地址。(2)SFR的位尋址區(qū)地址是不連續(xù)的。382.2.3 特殊功能寄存器 SFR位尋址空間地址映射SFR D7 D6 D5 D4 D3 D2 D1 D0ACCE7E6E5E4E3E2E1E0BF7F6F5F4F3F2F1F0單元地址PSWD7D6D5D
26、4D3D2D1D0IPBFBEBDBCBBBAB9B8B8P3B7B6B5B4B3B2B1B0B0IEAFAEADACABAAA9A8A8P2A7A6A5A4A3A2A1A0A0SCON9F9E9D9C9B9A999898P19796959493929190TCON8F8E8D8C8B8A8988P08786858483828180908880D0E0F0CyACF0RS1RS0OVPPSPT1PX1PT0PX0P3.7P3.6P3.5P3.4P3.3P3.2P3.1P3.0EAESET1EX1ET0EX0P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0SM0SM1SM2REN
27、TB8RB8TIRITF1TR1TF0TR0IE1IT1IT0IE0392.2.3 特殊功能寄存器MCS-51單片機(jī)SFR的使用:(1)對(duì)于SFR以單元形式訪問(wèn)時(shí),只能采用直接尋址方式。 如: MOV SBUF, A MOV 99H, A 二者是等價(jià)的。(2)對(duì)于80FFH區(qū)間未定義的單元,用戶不得使用。同樣,對(duì)于未定義位地址所對(duì)應(yīng)的位操作也是無(wú)效的。(3)在編程時(shí),最好不要采用SFR作為中間寄存器暫存中間結(jié)果。因?yàn)閺?fù)位時(shí),多數(shù)SFR被清0.402.2.4 MCS-51單片機(jī)的位尋址空間 MCS-51單片機(jī)的位尋址空間由兩部分組成,位地址范圍為00 FFH。MCS-51位尋址空間片內(nèi)RAM中2
28、0-2FH單元的128位,占用位地址范圍: 007FH;地址能被8整除的SFR具有位尋址功能,占用位地址范圍:80FFH412.2.5 外部數(shù)據(jù)存儲(chǔ)器 MCS51系列單片機(jī)的外部數(shù)據(jù)存儲(chǔ)器是一個(gè)獨(dú)立的物理空間,外部數(shù)據(jù)存儲(chǔ)器和外部I/O口共同占用這個(gè)空間,最大可以擴(kuò)展到64k,地址范圍為:0000HFFFFH。外部數(shù)據(jù)存儲(chǔ)器一般由靜態(tài)RAM構(gòu)成,簡(jiǎn)稱外部RAM。鎖存器P0P2ALEEARAM或I/O口DBOE AB8751/8051RDWEWRVccP3.6P3.70000FFFFFFFE0001 芯片外部64kRAM及I/O口(1)外部RAM和外部I/O口與單片機(jī)的連接 外部RAM和外部I/
29、O口結(jié)構(gòu)映射42一、單片機(jī)I/O的作用單片機(jī)芯片上的輸入輸出口有4個(gè),P0,P1,P2和P3。它們的作用與單片機(jī)是否擴(kuò)展有較大關(guān)系: (1)8051/8751不進(jìn)行存儲(chǔ)器和I/O口擴(kuò)展時(shí) P0:I/O口; P1:I/O口;P2:I/O口; P3:I/O口,也可以作為第二功能使用;當(dāng)P3口某些引腳作為第二功能使用時(shí),不可再作為I/O口線使用。如 P3.0和P3.1作為RXD和TXD時(shí),不可再作為I/O口線使用。2.3 MCS-51單片機(jī)的I/O口 43(2) 8031及8051/8751進(jìn)行存儲(chǔ)器和I/O口擴(kuò)展時(shí) P0:低八位地址總線/數(shù)據(jù)總線 P2:高八位地址總線 P1:I/O口 P3:I/O
30、口或第二功能,當(dāng)P3口某些引腳作為第二功能使用時(shí),不可再作為I/O口線使用。2.3 MCS-51單片機(jī)的I/O口 一、單片機(jī)I/O的作用44(一)P0.0P0.7:雙向I/O (內(nèi)置場(chǎng)效應(yīng)管上拉) 訪問(wèn)外部程序存儲(chǔ)器時(shí)分時(shí)作為雙向8位數(shù)據(jù)口和輸出低8位地址復(fù)用口;不接外部程序存儲(chǔ)器時(shí)可作為8位準(zhǔn)雙向I/O口使用。引腳P0.X21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)據(jù) 控制34Vcc2.3 MCS-51單片機(jī)的I/O口二、單片機(jī)I/O的工作原理452.3 MCS-51單片機(jī)的I/O口21DQCK/Q讀引腳 =1讀鎖存器=0寫鎖存器內(nèi)部總線地址/數(shù)據(jù) 控制引腳P0.X34控制=0 時(shí)
31、,此腳作輸入口(事先必須對(duì)它寫“1”)00100截止截止=0Vcc(1)P0.0P0.7做輸入口,事先必須先寫1,然后再讀引腳的狀態(tài)。二、單片機(jī)I/O的工作原理462.3 MCS-51單片機(jī)的I/O口21DQCK/Q讀引腳 =0讀鎖存器=0寫鎖存器內(nèi)部總線地址/數(shù)據(jù) 控制引腳P0.X34控制=0 時(shí),此腳作輸出口(外接上拉電阻)00100截止截止=0Vcc (2)P0.0P0.7作為輸出口,引腳應(yīng)外接上拉電阻。二、單片機(jī)I/O的工作原理VccR(外接)輸出輸出=14721DQCK/Q讀引腳 =0讀鎖存器=0寫鎖存器內(nèi)部總線地址/數(shù)據(jù) 控制=1引腳P0.X34控制=1時(shí),此腳作地址/數(shù)據(jù)復(fù)用口:
32、(1)輸出地址/數(shù)據(jù) =0 時(shí)1011=0導(dǎo)通截止=0Vcc(3)P0.0P0.7作為雙向8位數(shù)據(jù)口和輸出低8位地址復(fù)用口 【 輸出0】2.3 MCS-51單片機(jī)的I/O口二、單片機(jī)I/O的工作原理482.3 MCS-51單片機(jī)的I/O口(4)P0.0P0.7作為雙向8位數(shù)據(jù)口和輸出低8位地址復(fù)用口【輸出1】21DQCK/Q讀引腳 =0讀鎖存器=0寫鎖存器內(nèi)部總線引腳P0.X34控制=1時(shí),此腳作地址/數(shù)據(jù)復(fù)用口:(2)輸出地址/數(shù)據(jù) =1 時(shí)1100=1截止導(dǎo)通=1地址/數(shù)據(jù) 控制=1VccVcc二、單片機(jī)I/O的工作原理492.3 MCS-51單片機(jī)的I/O口 (二)P2.0P2.7: 雙
33、向I/O (內(nèi)置了上拉電阻) 外部程序存儲(chǔ)器時(shí)輸出高8位地址;不接外部程序存儲(chǔ)器時(shí)可作為8位準(zhǔn)雙向I/O口使用。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線地址高8位 控制引腳 P2.X3內(nèi)部上拉電阻Vcc二、單片機(jī)I/O的工作原理502.3 MCS-51單片機(jī)的I/O口(1)P2.0P2.7作為8位準(zhǔn)雙向I/O口使用【輸出】。21DQCK/Q讀引腳 =1讀鎖存器=0寫鎖存器內(nèi)部總線地址高8位 控制 引腳P2.X控制=0時(shí),此腳作通用輸出口: 輸出=1時(shí)110截止3內(nèi)部上拉電阻11Vcc=1=0二、單片機(jī)I/O的工作原理512.3 MCS-51單片機(jī)的I/O口21DQCK/Q讀引腳 =1讀鎖
34、存器=0寫鎖存器內(nèi)部總線地址高8位 控制 引腳P2.X控制=0時(shí),先寫1,此腳作通用輸入口10截止3內(nèi)部上拉電阻11Vcc=0二、單片機(jī)I/O的工作原理(2)P2.0P2.7作為8位準(zhǔn)雙向I/O口使用【輸入】。522.3 MCS-51單片機(jī)的I/O口21DQCK/Q讀引腳 =0讀鎖存器=0寫鎖存器內(nèi)部總線地址高8位 控制=1 引腳P2.X01導(dǎo)通3內(nèi)部上拉電阻0=0=0控制=1 時(shí),此腳作高8位地址A8A15輸出口:當(dāng)輸出 =0 時(shí)二、單片機(jī)I/O的工作原理(3)P2.0P2.7作為高八位地址總線【輸出地址】。Vcc532.3 MCS-51單片機(jī)的I/O口 (三)P3.0P3.7: 雙功能口(
35、內(nèi)置了上拉電阻) 具有特定的第二功能。在不使用它的第二功能時(shí)它就是普通的通用準(zhǔn)雙向I/O口。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線第二功能輸出引腳 P3.X3內(nèi)部上拉電阻Vcc第二功能輸入4二、單片機(jī)I/O的工作原理542.3 MCS-51單片機(jī)的I/O口 (1)P3.0P3.7作為第二功能【輸出RD/RW/TXD】。21DQCK/Q讀引腳讀鎖存器=0寫鎖存器內(nèi)部總線第二功能輸出(WR,RD,TxD)引腳 P3.X3內(nèi)部上拉電阻Vcc4第二功能輸出時(shí),內(nèi)部自動(dòng) D=1111反相器二、單片機(jī)I/O的工作原理552.3 MCS-51單片機(jī)的I/O口21DQCK/Q讀引腳=0讀鎖存器=0寫鎖
36、存器內(nèi)部總線第二個(gè)能輸出此端自動(dòng)1引腳 P3.X3內(nèi)部上拉電阻Vcc 第二功能輸入(RxD/T0/T1/INT0/INT1)4第二功能輸入時(shí),信號(hào)經(jīng)緩沖器4 直接進(jìn)入內(nèi)總線1110截止 (2)P3.0P3.7作為第二功能【輸入RXD/T0/INT0】。二、單片機(jī)I/O的工作原理562.3 MCS-51單片機(jī)的I/O口 (3)P3.0P3.7作為通用I/O口【輸入】。二、單片機(jī)I/O的工作原理21DQCK/Q讀引腳=1讀鎖存器=0寫鎖存器內(nèi)部總線引腳 P3.X3內(nèi)部上拉電阻Vcc 第二功能輸入4先寫1,再讀引腳1110截止第二個(gè)能輸出此端自動(dòng)1572.3 MCS-51單片機(jī)的I/O口 (4)P3
37、.0P3.7作為通用I/O口【輸出】。二、單片機(jī)I/O的工作原理21DQCK/Q讀引腳 = 0讀鎖存器=0寫鎖存器內(nèi)部總線引腳 P3.X3內(nèi)部上拉電阻Vcc 第二功能輸入4輸出1的操作1110截止1第二個(gè)能輸出此端自動(dòng)1輸出輸出1582.3 MCS-51單片機(jī)的I/O口 (四) P1.0P1.7: 準(zhǔn)雙向I/O口(內(nèi)置了上拉電阻)21DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻二、單片機(jī)I/O的工作原理592.3 MCS-51單片機(jī)的I/O口 (1)P1.0P1.7作為輸出口【輸出1】21DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)
38、部上拉電阻輸出數(shù)據(jù) = 1 時(shí)110截止=1二、單片機(jī)I/O的工作原理602.3 MCS-51單片機(jī)的I/O口21DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸出數(shù)據(jù) = 0 時(shí)001=0導(dǎo)通 (2)P1.0P1.7作為輸出口【輸出0】二、單片機(jī)I/O的工作原理612.3 MCS-51單片機(jī)的I/O口21DQCK/Q讀引腳 =1讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸入數(shù)據(jù)時(shí),要先對(duì)其寫“1”110截止 (3)P1.0P1.7作為輸入口二、單片機(jī)I/O的工作原理622.3 MCS-51單片機(jī)的I/O口21DQCK/Q讀引腳 =0讀鎖存器寫
39、鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻 (五)讀單片機(jī)I/O口寄存器(以P1口為例)二、單片機(jī)I/O的工作原理=163(1)驅(qū)動(dòng)能力: P0:雙向,8個(gè)TTL P1、 P2和 P3:準(zhǔn)雙向,4個(gè)TTL (2)作為輸入口使用,必須先寫1,再讀引腳狀態(tài)。 (3)由于P0口為內(nèi)置場(chǎng)效應(yīng)管上拉,作為輸出口時(shí),上拉的場(chǎng)效應(yīng)截止,輸出引腳與電源Vcc之間呈現(xiàn)開路狀態(tài),因此,為了保證輸出口能夠輸出標(biāo)準(zhǔn)的高低電平,其輸出引腳應(yīng)上拉電阻。2.3 MCS-51單片機(jī)的I/O口三、單片機(jī)I/O的使用642.4 MCS-51單片機(jī)的時(shí)鐘電路與時(shí)序2.4.1 MCS-51單片機(jī)的時(shí)鐘電路 時(shí)鐘電路用來(lái)產(chǎn)生CPU工
40、作所需的時(shí)鐘控制信號(hào)。時(shí)鐘的頻率直接影響單片機(jī)的速度,時(shí)鐘電路的質(zhì)量直接影響單片機(jī)系統(tǒng)的穩(wěn)定性。 時(shí)鐘電路的設(shè)計(jì)形式:內(nèi)部方式和外部方式(一)內(nèi)部方式: 原理:借助于單片機(jī)內(nèi)部電路(反相放大器)外接晶體振蕩器和微調(diào)電容構(gòu)成自激振蕩器,提供時(shí)鐘信號(hào)。 OSC:1.2M12MHz C1、C2:530pF 內(nèi)部方式內(nèi)部方式XTAL2XTAL18051C1C2OSC652.4.1 MCS-51單片機(jī)的時(shí)鐘電路XTAL1XTAL2外部振蕩源外部方式外部方式8051VCCR(2)外部方式 直接使用外部振蕩脈沖信號(hào)。(常用于多CPU系統(tǒng),以保持各個(gè)CPU同步工作)外部振蕩脈沖信號(hào)為滿足一定的幅寬的方波,頻率
41、不大于12MHz。66 在計(jì)算機(jī)中,一條指令可分解為若干個(gè)基本的微操作,這些微操作所對(duì)應(yīng)的脈沖信號(hào)在時(shí)間上有嚴(yán)格的先后次序,即為計(jì)算機(jī)的時(shí)序。 (一)機(jī)器周期與指令周期 與時(shí)序有關(guān)的周期:時(shí)鐘周期、機(jī)器周期、指令周期。 振蕩周期(T)為晶體振蕩器(晶振)的振蕩周期2.4.2 MCS-51單片機(jī)的時(shí)序oscfT1 機(jī)器周期(TM) : CPU完成一個(gè)基本操作所用的時(shí)間。 MCS-51單片機(jī)的1個(gè)機(jī)器周期包含12個(gè)振蕩周期oscfT12M指令周期(TI):執(zhí)行一條指令所用的時(shí)間; MCS-51:1TI = 1 4 TM67682.4.2 MCS-51單片機(jī)的時(shí)序MCS-51單片機(jī)的機(jī)器周期(TM)狀態(tài)P1相P2相TMTM692.4.2 MCS-51單片機(jī)的時(shí)序(二) 典型指令的時(shí)序04XXXXXXXXXXXXXX程序存儲(chǔ)器2000H2002H2003H2004H2005H2006H2007H2001HINC A 的機(jī)器碼P1相P2相讀機(jī)器碼讀下一個(gè)機(jī)器碼,丟棄CPU執(zhí)行指令 I NC A(PC)加加1(PC)不加不加1(1)單字節(jié)單周期指令70 (2)雙字節(jié)單周期指令2.4.2 MCS-51單片機(jī)的時(shí)序2450XXXXXXXXXXXX程序存儲(chǔ)器2
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 大學(xué)生體像認(rèn)知與醫(yī)學(xué)美容態(tài)度的關(guān)系調(diào)查
- 山東省濟(jì)南市2024-2025學(xué)年高三上學(xué)期期末學(xué)習(xí)質(zhì)量檢測(cè)英語(yǔ)試題【含答案】
- 室內(nèi)廚房設(shè)計(jì)施工方案
- 挖碴裝車施工方案
- 地坪施工訂做方案范本
- 5年級(jí)學(xué)霸數(shù)學(xué)筆記
- 2025年規(guī)劃數(shù)學(xué)試題及答案
- 等邊三角形電荷電場(chǎng)線
- c.d級(jí)危房安全風(fēng)險(xiǎn)隱患問(wèn)題及短板
- 接口處防水施工方案
- 2025年蛇年年度營(yíng)銷日歷營(yíng)銷建議【2025營(yíng)銷日歷】
- 2024年黑龍江哈爾濱“丁香人才周”(秋季)事業(yè)單位引才招聘2074人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- ISO22301新版標(biāo)準(zhǔn)翻譯(中英對(duì)照)
- 學(xué)術(shù)論文的撰寫方法與規(guī)范
- 建設(shè)工程施工合同農(nóng)民工工資補(bǔ)充協(xié)議
- 智研咨詢發(fā)布:汽車雨刮器總成產(chǎn)業(yè)百科(附行業(yè)現(xiàn)狀、相關(guān)政策及發(fā)展驅(qū)動(dòng)因素分析)
- DL∕T 2577-2022 軸流轉(zhuǎn)漿式水輪發(fā)電機(jī)組檢修規(guī)程
- 2023年四川省綿陽(yáng)市中考數(shù)學(xué)試卷
- 《統(tǒng)編教材背景下小學(xué)語(yǔ)文整本書閱讀策略的研究》中期報(bào)告
- (正式版)JBT 2930-2024 低壓電器產(chǎn)品型號(hào)編制方法
- 【課件】2024屆新高考英語(yǔ)語(yǔ)法填空專項(xiàng).解題技巧課件
評(píng)論
0/150
提交評(píng)論