![STC89C51系列單片機(jī)的結(jié)構(gòu)和原理_第1頁](http://file4.renrendoc.com/view/7ea1a8bd904f17326f3d9cd941313499/7ea1a8bd904f17326f3d9cd9413134991.gif)
![STC89C51系列單片機(jī)的結(jié)構(gòu)和原理_第2頁](http://file4.renrendoc.com/view/7ea1a8bd904f17326f3d9cd941313499/7ea1a8bd904f17326f3d9cd9413134992.gif)
![STC89C51系列單片機(jī)的結(jié)構(gòu)和原理_第3頁](http://file4.renrendoc.com/view/7ea1a8bd904f17326f3d9cd941313499/7ea1a8bd904f17326f3d9cd9413134993.gif)
![STC89C51系列單片機(jī)的結(jié)構(gòu)和原理_第4頁](http://file4.renrendoc.com/view/7ea1a8bd904f17326f3d9cd941313499/7ea1a8bd904f17326f3d9cd9413134994.gif)
![STC89C51系列單片機(jī)的結(jié)構(gòu)和原理_第5頁](http://file4.renrendoc.com/view/7ea1a8bd904f17326f3d9cd941313499/7ea1a8bd904f17326f3d9cd9413134995.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第二章STC89C51系列單片機(jī)的結(jié)構(gòu)和原理2.2STC89C51系列單片機(jī)的內(nèi)部結(jié)構(gòu)2.3STC89C51系列單片機(jī)的主要組成部分2.1STC89C51如何控制流水燈2.4單片機(jī)的復(fù)位電路2.5單片機(jī)最小系統(tǒng)STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第1頁!2.1STC89C51如何控制流水燈任務(wù):使用單片機(jī)控制發(fā)光管按一定順序亮1.利用Proteus7連接電路圖STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第2頁!2.利用keilc軟件編寫程序#include<reg51.h>#include<stdio.h>unsignedinttemp1;voiddelay(unsignedinttemp)//延時(shí)程序{while(--temp);}STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第3頁!3.利用keilc軟件將C語言轉(zhuǎn)化成HEX文件4.將HEX文件添加到Proteus7軟件中,進(jìn)行仿真思考:單片機(jī)如何使用?STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第4頁!STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第5頁!RST(9腳):復(fù)位端。當(dāng)晶體在運(yùn)行時(shí),只要此引腳上出現(xiàn)2個(gè)機(jī)器周期高電平即可復(fù)位,內(nèi)部有擴(kuò)散電阻連接到Vss,僅需要外接一個(gè)電容到Vcc即可實(shí)現(xiàn)上電復(fù)位。ALE(30腳):地址鎖存使能。在訪問外部存儲(chǔ)器時(shí),輸出脈沖鎖存地址的低字節(jié),在正常情況下,ALE輸出信號(hào)恒定為1/6振蕩頻率。并可用作外部時(shí)鐘或定時(shí),注意每次訪問外部數(shù)據(jù)時(shí),一個(gè)ALE脈沖將被忽略。PSEN(29腳):程序存儲(chǔ)使能。讀外部程序存儲(chǔ)。當(dāng)從外部讀取程序時(shí),PSEN每個(gè)機(jī)器周期被激活兩次,在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)PSEN無效,訪問內(nèi)部程序存儲(chǔ)器時(shí)PSEN無效。EA/Vpp(31腳):外部尋址使能/編程電壓。在訪問整個(gè)外部程序存儲(chǔ)器時(shí),EA必須外部置低。如果EA為高時(shí),將執(zhí)行內(nèi)部程序。當(dāng)RST釋放后EA腳的值被鎖存,任何時(shí)序的改變都將無效。該引腳在對FLASH編程時(shí)用于輸入編程電壓(Vpp)。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第6頁!P3口(P3.0-P3.7,10-17腳):是帶內(nèi)部上拉的雙向I/O口。向P3口寫入1時(shí),P3口被內(nèi)部上拉為高電平,可用作輸入口。當(dāng)作為輸入腳時(shí),被外部拉低的P3口會(huì)因?yàn)閮?nèi)部上拉而輸出電流。P3口腳具有第二功能,表2-2介紹了P3口的第二功能??诰€第二功能類型名稱P3.0RxDI串行輸入口P3.1TxD0串行輸出口P3.2INT0I外部中斷0P3.3INT1I外部中斷1P3.4T0I定時(shí)器0外部輸入P3.5T1I定時(shí)器1外部輸入P3.6WRO外部數(shù)據(jù)存儲(chǔ)器寫信號(hào)P3.7RDO外部數(shù)據(jù)存儲(chǔ)器讀信號(hào)STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第7頁!ALU還有位操作功能,對位變量進(jìn)行位處理,如置“1”、清“0”、求補(bǔ)、測試轉(zhuǎn)移及邏輯“與”、“或”等。2.累加器A使用最頻繁的寄存器,可寫為Acc?!癆”與“Acc”
作用如下:(1)ALU單元的輸入數(shù)據(jù)源之一,又是ALU運(yùn)算結(jié)果存放單元。(2)數(shù)據(jù)傳送大多都通過累加器A,相當(dāng)于數(shù)據(jù)的中轉(zhuǎn)站。8STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第8頁!PSW中各個(gè)位的功能:(1)Cy(PSW.7)進(jìn)位標(biāo)志位可寫為C。在算術(shù)和邏輯運(yùn)算時(shí),若有進(jìn)位/借位,Cy=1;否則,Cy=0。在位處理器中,它是位累加器。(2)Ac(PSW.6)輔助進(jìn)位標(biāo)志位在BCD碼運(yùn)算時(shí),用作十進(jìn)位調(diào)整。即當(dāng)D3位向D4位產(chǎn)生進(jìn)位或借位時(shí),Ac=1;否則,Ac=0。(3)F0(PSW.5)用戶設(shè)定標(biāo)志位由用戶使用的一個(gè)狀態(tài)標(biāo)志位,可用指令來使它置1或清0,控制程序的流向。用戶應(yīng)充分利用。9STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第9頁!P=1,表示A中“1”的個(gè)數(shù)為奇數(shù)。
P=0,表示A中“1”的個(gè)數(shù)為偶數(shù)。
此標(biāo)志位對串行通信有重要的意義,常用奇偶檢驗(yàn)的方法來檢驗(yàn)數(shù)據(jù)串行傳輸?shù)目煽啃浴?/p>
10STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第10頁!PC中內(nèi)容變化軌跡決定程序流程。當(dāng)順序執(zhí)行程序時(shí)自動(dòng)加1;執(zhí)行轉(zhuǎn)移程序或子程序、中斷子程序調(diào)用時(shí),自動(dòng)將其內(nèi)容更改成所要轉(zhuǎn)移的目的地址。PC的計(jì)數(shù)寬度決定了程序存儲(chǔ)器的地址范圍。PC為16位,故可對64KB(=216B)尋址。11STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第11頁!2.程序的7個(gè)特殊入口地址操作入口地址復(fù)位0000H外部中斷00003H定時(shí)器/計(jì)數(shù)器0溢出000BH外部中斷10013H定時(shí)器/計(jì)數(shù)器1溢出001BH串行口中斷0023H定時(shí)器/計(jì)數(shù)器0溢出或T2EX端負(fù)跳變(52子系列)002BH表1MCS-51單片機(jī)復(fù)位、中斷入口地址STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第12頁!STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第13頁!低128字節(jié)(00H~7FH)其中真正用戶能用到得只有20H—7FH共96個(gè)字節(jié);故一般需要擴(kuò)展片外存儲(chǔ)器。其中20H—2FH為位尋址(重點(diǎn)),故可設(shè)位變量。sbitp20=P2^0;sbitp21=P2^1;Ifp20==1thenp21=0STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第14頁!表3SFR特殊功能寄存器地址表
STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第15頁!特殊功能寄存器(SFR)特殊功能寄存器(SFR)也稱專用寄存器,專門用于控制、管理片內(nèi)算術(shù)邏輯部件、并行I/O口、串行口、定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)等功能模塊的工作,用戶在編程時(shí)可以給其設(shè)定值,但不能移作它用。SFR離散地分布在片內(nèi)RAM的80H—FFH地址空間,與片內(nèi)數(shù)據(jù)存儲(chǔ)器統(tǒng)一編址。51子系列有18個(gè)特殊功能寄存器,其中3個(gè)為雙字節(jié)(DPTR、T0、T1),共占用21個(gè)字節(jié);其中11個(gè)可位尋址(僅83位有效)。凡是可位尋址的SFR,字節(jié)地址末位只能是0H或8H。52子系列有21個(gè)特殊寄存器,其中5個(gè)為雙字節(jié),共占用26個(gè)字節(jié)STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第16頁!序號(hào)特殊功能寄存器符號(hào)名稱字節(jié)地址位地址復(fù)位值1A(或Acc)累加器E0HE7H~E0H00H2BB寄存器F0HF7H~F0H00H3DPH數(shù)據(jù)指針DPTR高字節(jié)83H00H4DPL數(shù)據(jù)指針DPTR低字節(jié)82H00H5IE中斷允許控制寄存器A8HAFH~A8H00H6IP中斷優(yōu)先級(jí)控制寄存器B8HBFH~B8HX0000000B7P0P0口寄存器80H87H~80HFFH8P1P1口寄存器90H97H~90HFFH9P2P2口寄存器A0HA7H~A0HFFH10P3P3口寄存器B0HB7H~B0HFFH11PCON電源控制寄存器87H00XXX000B12PSW程序狀態(tài)字寄存器D0HD7H~D0H00H13SBUF串行發(fā)送數(shù)據(jù)緩沖器99H-XXXXXXXXB14SCON串行控制寄存器98H9FH~98H00H15SP堆棧指針81H07H16TCON定時(shí)器/計(jì)數(shù)器控制寄存器88H8FH~88H00H17TL0定時(shí)器/計(jì)數(shù)器0(低字節(jié))8AH00H18TH0定時(shí)器/計(jì)數(shù)器0(高字節(jié))8BH00H19TL1定時(shí)器/計(jì)數(shù)器1(低字節(jié))8CH00H20TH1定時(shí)器/計(jì)數(shù)器1(高字節(jié))8DH00H21TMOD定時(shí)器/計(jì)數(shù)器方式控制89H00HSTC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第17頁!位地址空間
211個(gè)尋址位的位地址,其中:00H~7FH這128位處于片內(nèi)RAM字節(jié)地址20H~2FH
單元中。其余的83個(gè)可尋址位分布在特殊功能寄存器SFR中,。可被位尋址的特殊寄存器有11個(gè),共有位地址88個(gè),5個(gè)位未用,其余83個(gè)位的位地址離散地分布于片內(nèi)數(shù)據(jù)存儲(chǔ)器區(qū)字節(jié)地址為80H~FFH的范圍內(nèi),其最低的位地址等于其字節(jié)地址,且其字節(jié)地址的末位都為0H或8H。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第18頁!SFR中的位地址分布特殊功能寄存器位地址字節(jié)地址D7D6D5D4D3D2D1D0BF7HF6HF5HF4HF3HF2HF1HF0HF0HAccE7HE6HE5HE4HE3HE2HE1HE0HE0HPSWD7HD6HD5HD4HD3HD2HD1HD0HD0HIP———BCHBBHBAHB9HB8HB8HP3B7HB6HB5HB4HB3HB2HB1HB0HB0HIEAFH——ACHABHAAHA9HA8HA8HP2A7HA6HA5HA4HA3HA2HA1HA0HA0HSCON9FH9EH9DH9CH9BH9AH99H98H98HP197H96H95H94H93H92H91H90H90HTCON8FH8EH8DH8CH8BH8AH89H88H88HP087H86H85H84H83H82H81H80H80HSTC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第19頁!例如:使用單片機(jī)的并行口P1~P3直接驅(qū)動(dòng)發(fā)光二極管,電路如下圖。由于P1~P3內(nèi)部有30kΩ左右的上拉電阻。如高電平輸出,則強(qiáng)行從P1、P2和P3口輸出的電流會(huì)造成單片機(jī)端口的損壞。如端口引腳為低電平,能使電流從單片機(jī)外部流入內(nèi)部,則將大大增加流過的電流值。所以,當(dāng)P1~P3口驅(qū)動(dòng)LED發(fā)光二極管時(shí),應(yīng)該采用低電平驅(qū)動(dòng)。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第20頁!有關(guān)時(shí)序的概念STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第21頁!2.時(shí)鐘周期:是振蕩源信號(hào)經(jīng)2分頻后形成的時(shí)鐘脈沖信號(hào),也就是一個(gè)時(shí)鐘周期是振蕩周期的2倍。時(shí)鐘信號(hào)向單片機(jī)提供一個(gè)二節(jié)拍時(shí)鐘信號(hào),在每個(gè)時(shí)鐘的前半周期,節(jié)拍1信號(hào)P1有效,后半周期節(jié)拍P2有效,每個(gè)節(jié)拍持續(xù)1個(gè)振蕩周期。3.機(jī)器周期:CPU完成一個(gè)基本操作所需的時(shí)間為機(jī)器周期。一個(gè)機(jī)器周期包含6個(gè)時(shí)鐘周期,也就是等于12個(gè)振蕩周期。當(dāng)石英晶體的振蕩為12MHz和6MHz時(shí),時(shí)鐘周期分別為1/12μs和1/6μs,機(jī)器周期分別為1μs和2μs。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第22頁!CPU時(shí)序
機(jī)器周期:每個(gè)機(jī)器周期包含S1、S2、S3、S4、S5、S6個(gè)狀態(tài),每個(gè)狀態(tài)包含2拍P1和P2,每一個(gè)節(jié)拍持續(xù)1個(gè)振蕩周期。因此,每12個(gè)振蕩周期為一個(gè)機(jī)器周期。依次可表示為S1P1、S1P2、S2P1、S2P2、…、S6P1、S6P2。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第23頁!三、I/O接口1.P0口的某位P0.n(n=0~7)結(jié)構(gòu)圖,它由一個(gè)輸出鎖存器、兩個(gè)三態(tài)輸入緩沖器和輸出驅(qū)動(dòng)電路及控制電路組成。從圖中可以看出,P0口既可以作為I/O用,也可以作為地址/數(shù)據(jù)線用。DQCLKQMUXP0.n讀鎖存器內(nèi)部總線寫鎖存器讀引腳地址/數(shù)據(jù)控制VCCT1T2P0口引腳STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第24頁!1、P0口作為普通I/O口①輸出時(shí):CPU發(fā)出控制電平“0”封鎖“與”門,多路開關(guān)MUX把鎖存器與輸出驅(qū)動(dòng)場效應(yīng)管T2柵極接通。DQCLKQMUXP0.n讀鎖存器內(nèi)部總線寫鎖存器讀引腳地址/數(shù)據(jù)控制VCCT1T2P0口引腳內(nèi)部總線與P0口同相。由于輸出驅(qū)動(dòng)級(jí)是漏極開路電路,若驅(qū)動(dòng)NMOS或其它拉流負(fù)載時(shí),需要外接上拉電阻。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第25頁!2.P2用作通用I/O口
當(dāng)不在單片機(jī)芯片外部擴(kuò)展程序存儲(chǔ)器,只擴(kuò)展256B的片外RAM時(shí),僅用到了地址線的低8位,P2口仍可以作為通用I/O口使用。P0、P1、P2、P3口的電平與CMOS和TTL電平兼容P0口的每一位口線可以驅(qū)動(dòng)8個(gè)LSTTL負(fù)載。在作為通用I/O口時(shí),由于輸出驅(qū)動(dòng)電路是開漏方式,由集電極開路(OC門)電路或漏極開路電路驅(qū)動(dòng)時(shí)需外接上拉電阻;當(dāng)作為地址/數(shù)據(jù)總線使用時(shí),口線輸出不是開漏的,無須外接上拉電阻。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第26頁!P3口的第二功能
STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第27頁!初始化后,程序計(jì)數(shù)器PC=0000H。
P0-P3=FFH,各端口鎖存器已寫入1,此時(shí)不但可用于輸出,也可以于輸入。SP=07H,表明堆棧指針指向片內(nèi)RAM的07單元(即個(gè)被壓入的內(nèi)容將寫入到08H單元)。
IP、IE和PCON的有效位為0,分別表明各中斷源處于低優(yōu)先級(jí)、各中斷均被關(guān)斷、串行通信的波特率不加倍。
PSW=00H,表明當(dāng)前工作寄存器選為0組。(a)上電復(fù)位(b)上電與按鍵均有效的復(fù)位
STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第28頁!復(fù)位操作還對其他一些寄存器有影響,這些寄存器復(fù)位時(shí)的狀態(tài)見表2-7。由表2-7可看出,復(fù)位時(shí),SP=07H
,而P0~P3引腳均為高電平。在某些控制應(yīng)用中,要注意考慮P0~P3引腳的高電平對接在這些引腳上的外部電路的影響。例如,當(dāng)P1口某個(gè)引腳外接一個(gè)繼電器繞組,當(dāng)復(fù)位時(shí),該引腳為高電平,繼電器繞組就會(huì)有電流通過,就會(huì)吸合繼電器開關(guān),使開關(guān)接通,可能會(huì)引起意想不到的后果。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第29頁!所謂單片機(jī)最小系統(tǒng)是指能夠讓單片機(jī)正常運(yùn)行所需的最基本的硬件配置,由于80C51單片機(jī)內(nèi)部含有程序存儲(chǔ)器,所以(在程序的大小不超過4KB時(shí),不用擴(kuò)充程序存儲(chǔ)器,超過4KB時(shí),仍然要外擴(kuò)程序存儲(chǔ)器)不需外擴(kuò)程序存儲(chǔ)器。下面給出STC89C51單片機(jī)的最小系統(tǒng)原理圖。2.5單片機(jī)最小系統(tǒng)實(shí)現(xiàn)STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第30頁!基本要求:(在Proteus中仿真可以不接這些)(1)電源(2)晶體振蕩器(3)復(fù)位電路(4)使用內(nèi)部程序存儲(chǔ)器,為高電平STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第31頁!常用的可編程I/O芯片有8255和8155。用8255擴(kuò)展并行I/O口時(shí)需要鎖存器,8155則不用。對擴(kuò)展I/O口的尋址采用與外部RAM相同的指令,因此在設(shè)計(jì)電路時(shí)要注意合理分配地址。8255和8155的工作方式是通過對命令控制字的編程來實(shí)現(xiàn)的,在使用時(shí)首先要有初始化程序。MCS-51單片機(jī)有很強(qiáng)的擴(kuò)展功能,外圍擴(kuò)展電路、擴(kuò)展芯片和擴(kuò)展方法都非常典型、規(guī)范。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第32頁!voidmain(){P2=0XFF;//ledisoffwhile(1) {P2=0XFE; temp1=35000; delay(temp1);
P2=0XFD; temp1=35000; delay(temp1);
P2=0XFB; temp1=35000; delay(temp1);
P2=0XF7; temp1=35000; delay(temp1);P2=0XEF;temp1=35000;delay(temp1);P2=0XDF;temp1=35000;delay(temp1);P2=0XBF;temp1=35000;delay(temp1);P2=0X7F;temp1=35000;delay(temp1); }}STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第33頁!2.2STC89C51系列單片機(jī)的內(nèi)部結(jié)構(gòu)51系列單片機(jī)結(jié)構(gòu)框圖STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第34頁!
1.電源引腳VSS(20腳):接地,0V參考點(diǎn)。VCC(40腳):電源,提供掉電、空閑、正常工作2.外接晶體引腳XTAL1(19腳):接外部晶體的一端,振蕩反向放大器的輸入端和內(nèi)部時(shí)鐘電路輸入端。XTAL2(18腳):接外部晶體的另一端,振蕩反向放大器的輸出端。
3.控制信號(hào)或與其它電源復(fù)用引腳控制信號(hào)或與其它電源復(fù)用引腳有RST/VPD、、和等4種形式。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第35頁!輸入/輸出引腳P0口(P0.0-P0.7,32-39腳):是雙向8位三態(tài)I/O口??上蚱鋵懭?使其狀態(tài)為懸浮,用作高阻輸入。P0口也可以在訪問外部程序存儲(chǔ)器時(shí)作地址的低字節(jié),在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)作數(shù)據(jù)總線,此時(shí)通過內(nèi)部強(qiáng)上拉傳送1。P1口(P1.0-P1.7,1-8腳):是帶內(nèi)部上拉的雙向I/O口。向P1口寫入1時(shí),P1口被內(nèi)部上拉為高電平,可用作輸入口;當(dāng)作為輸入腳時(shí),被外部拉低的P1口會(huì)因?yàn)閮?nèi)部上拉而輸出電流。P2口(P2.0-P2.7,21-28腳):是帶內(nèi)部上拉的雙向I/O口。向P2口寫入1時(shí),P2口被內(nèi)部上拉為高電平,可用作輸入口。當(dāng)作為輸入腳時(shí),被外部拉低的P2口會(huì)因?yàn)閮?nèi)部上拉而輸出電流。在訪問外部程序存儲(chǔ)器和外部數(shù)據(jù)時(shí)分別作為地址高位字節(jié)和16位地址,此時(shí)通過內(nèi)部強(qiáng)上拉傳送1。當(dāng)使用8位尋址方式訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口發(fā)送P2特殊功能寄存器的內(nèi)容。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第36頁!2.3STC89C51的系列單片機(jī)的主要組成部分該系列單片機(jī)由中央處理器(CPU)、存儲(chǔ)器和I/O接口三大部分組成。其中CPU包括運(yùn)算器和控制器兩大部分。2.3.1運(yùn)算器對操作數(shù)進(jìn)行算術(shù)、邏輯和位操作運(yùn)算。主要包括算術(shù)邏輯運(yùn)算單元ALU、累加器A、位處理器、程序狀態(tài)字寄存器PSW及兩個(gè)暫存器等。1.算術(shù)邏輯運(yùn)算單元ALU可對8位變量邏輯運(yùn)算(與、或、異或、循環(huán)、求補(bǔ)和清零),還可算術(shù)運(yùn)算(加、減、乘、除)37STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第37頁!A的進(jìn)位標(biāo)志Cy是特殊的,因?yàn)樗瑫r(shí)又是位處理機(jī)的位累加器3.程序狀態(tài)字寄存器PSWPSW(ProgramStatusWord)位于片內(nèi)特殊功能寄存器區(qū),字節(jié)地址為D0H。包含了程序運(yùn)行狀態(tài)的信息,其中4位保存當(dāng)前指令執(zhí)行后的狀態(tài),供程序查詢和判斷。格式如圖2-3所示。
圖2-3PSW的格式38STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第38頁!(4)RS1、RS0(PSW.4、PSW.3)4組工作寄存器區(qū)選擇 選擇片內(nèi)RAM區(qū)中的4組工作寄存器區(qū)中的某一組為當(dāng)前工作寄存區(qū)。(5)OV(PSW.2)溢出標(biāo)志位 當(dāng)執(zhí)行算術(shù)指令時(shí),用來指示運(yùn)算結(jié)果是否產(chǎn)生溢出。如果結(jié)果產(chǎn)生溢出,OV=1;否則,OV=0。(6)PSW.1位保留位(7)P(PSW.0)奇偶標(biāo)志位
指令執(zhí)行完,累加器A中“1”的個(gè)數(shù)是奇數(shù)還是偶數(shù)。39STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第39頁!402.3.2控制器任務(wù)識(shí)別指令,并根據(jù)指令的性質(zhì)控制單片機(jī)各功能部件,從而保證單片機(jī)各部分能自動(dòng)協(xié)調(diào)地工作??刂破靼ǎ撼绦蛴?jì)數(shù)器、指令寄存器、指令譯碼器、定時(shí)及控制邏輯電路等。功能是控制指令的讀入、譯碼和執(zhí)行,從而對各功能部件進(jìn)行定時(shí)和邏輯控制。程序計(jì)數(shù)器PC是一個(gè)獨(dú)立的16位計(jì)數(shù)器,不可訪問。單片機(jī)復(fù)位時(shí),PC中內(nèi)容為0000H,從程序存儲(chǔ)器0000H單元取指令,開始執(zhí)行程序。PC工作過程是:CPU讀指令時(shí),PC的內(nèi)容作為所取指令的地址,程序存儲(chǔ)器按此地址輸出指令字節(jié),同時(shí)PC自動(dòng)加1。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第40頁!程序存儲(chǔ)器(FLASH,下載到4KB
ROM)
2.3、存儲(chǔ)器
1.編址與訪問計(jì)算機(jī)的工作是按照事先編制好的程序命令序列一條條順序執(zhí)行的,程序存儲(chǔ)器就是用來存放這些已編好的程序和表格常數(shù),它由只讀存儲(chǔ)器ROM或EPROM組成。計(jì)算機(jī)為了有序地工作,設(shè)置了一個(gè)專用寄存器--程序計(jì)數(shù)器PC,用以存放將要執(zhí)行的指令地址。每取出指令的1個(gè)字節(jié)后,其內(nèi)容自動(dòng)加1,指向下一字節(jié)地址,使計(jì)算機(jī)依次從程序存儲(chǔ)器取出指令予以執(zhí)行,完成某種程序操作。由于MCS-51單片機(jī)的程序計(jì)數(shù)器為16位,因此,可尋址的地址空間為64KB。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第41頁!數(shù)據(jù)存儲(chǔ)器
1.編址與訪問
MCS-51單片機(jī)片內(nèi)、外數(shù)據(jù)存儲(chǔ)器是兩個(gè)獨(dú)立的地址空間,應(yīng)分別單獨(dú)編址。片內(nèi)數(shù)據(jù)存儲(chǔ)器除RAM塊外,還有特殊功能寄存器(SFR)塊。對于51子系列,前者有128個(gè)字節(jié),其編址為00H~7FH;后者有128個(gè)字節(jié),其編址為80H~FFH;二者連續(xù)而不重疊。由于訪問它們所用的指令不同,并不會(huì)引起混亂。片外數(shù)據(jù)存儲(chǔ)器一般是16位編址。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第42頁!
2.內(nèi)部數(shù)據(jù)存儲(chǔ)器
MCS-51片內(nèi)RAM為256字節(jié),地址范圍為00H~FFH,分為兩大部分:低128字節(jié)(00H~7FH)為真正的RAM區(qū);高128字節(jié)(80H~FFH)為特殊功能寄存器區(qū)SFR。在低128字節(jié)RAM中,00H~1FH共32單元是4個(gè)通用工作寄存器區(qū)。每一個(gè)區(qū)有8個(gè)通用寄存器R0~R7。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第43頁!表2寄存器與RAM地址對照表
STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第44頁!45特殊功能寄存器位地址字節(jié)地址D7D6D5D4D3D2D1D0BF7HF6HF5HF4HF3HF2HF1HF0HF0HAccE7HE6HE5HE4HE3HE2HE1HE0HE0HPSWD7HD6HD5HD4HD3HD2HD1HD0HD0HIP———BCHBBHBAHB9HB8HB8HP3B7HB6HB5HB4HB3HB2HB1HB0HB0HIEAFH——ACHABHAAHA9HA8HA8HP2A7HA6HA5HA4HA3HA2HA1HA0HA0HSCON9FH9EH9DH9CH9BH9AH99H98H98HP197H96H95H94H93H92H91H90H90HTCON8FH8EH8DH8CH8BH8AH89H88H88HP087H86H85H84H83H82H81H80H80H表4SFR中的位地址分布STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第45頁!注意:(1)21個(gè)可字節(jié)尋址的專用寄存器是不連續(xù)地分散在內(nèi)部RAM高128單元之中,共83個(gè)可尋址位。盡管還剩余許多空閑單元,但用戶并不能使用。(2)在22個(gè)專用寄存器中,唯一一個(gè)不可尋址的PC。PC不占據(jù)RAM單元,它在物理上是獨(dú)立的(在控制器中),因此是不可尋址的寄存器。(3)對專用寄存器只能使用直接尋址方式,書寫時(shí)既可使用寄存器符號(hào),也可使用寄存器單元地址。(因?yàn)榧拇嫫髅偷刂穯卧牡刂芬呀?jīng)一一對應(yīng))STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第46頁!STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第47頁!
AT89C51片內(nèi)RAM的可尋址位及其位地址字節(jié)單元地址D7D6D5D4D3D2D1D020H070605040302010021H0F0E0D0C0B0A090822H171615141312111023H1F1E1D1C1B1A191824H272625242322212025H2F2E2D2C2B2A292826H373635343332313027H3F3E3D3C3B3A393828H474645444342414029H4F4E4D4C4B4A49482AH57565554535251502BH5F5E5D5C5B5A59582CH67666564636261602DH6F6E6D6C6B6A69682EH77767574737271702FH7F7E7D7C7B7A7978STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第48頁!P1~P3口驅(qū)動(dòng)LED發(fā)光二極管
STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第49頁!(a)不恰當(dāng)?shù)倪B接:高電平驅(qū)動(dòng)(b)恰當(dāng)?shù)倪B接:低電平驅(qū)動(dòng)
發(fā)光二極管與AT89C51并行口的直接連接STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第50頁!
計(jì)算機(jī)在執(zhí)行指令時(shí),一條指令經(jīng)譯碼后產(chǎn)生若干個(gè)基本微操作,這些基本微操作在時(shí)間上有嚴(yán)格的先后次序,這種次序稱為計(jì)算機(jī)的時(shí)序。
幾個(gè)CPU時(shí)序的基本概念1.振蕩周期:指為單片機(jī)提供定時(shí)信號(hào)的振蕩源的周期,是時(shí)序中最小的時(shí)間單位。若為內(nèi)部產(chǎn)生方式,則為石英晶體的振蕩周期。(常用12MHz、6MHz等)。振蕩脈沖并不直接使用,由XTAL2或XTAL1端送往內(nèi)部時(shí)鐘電路(fosc):經(jīng)過2分頻,向CPU提供2相時(shí)鐘信號(hào)P1和P2(f拍節(jié)=1/2osc)再經(jīng)3分頻,(6分頻)產(chǎn)生ALE時(shí)序(fALE=1/6fosc);經(jīng)過12分頻,成為機(jī)器周期信號(hào)(MC=12/fosc),如下圖所示。需要指出的是,CPU的運(yùn)算操作在P1期間,數(shù)據(jù)傳送在P2期間。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第51頁!4.指令周期:是指CPU執(zhí)行一條指令所需的時(shí)間,是時(shí)序中最大時(shí)間單位。由于單片機(jī)執(zhí)行不同的指令,所需要的時(shí)間不同,因此,不同指令所包含的機(jī)器周期數(shù)也不同,機(jī)器周期越少的指令執(zhí)行速度快。單片機(jī)中大多數(shù)指令的指令周期由一個(gè)機(jī)器周期或兩個(gè)機(jī)器周期組成,只有乘法、除法指令需要四個(gè)機(jī)器周期。STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第52頁!時(shí)鐘電路(什么作用?)
單片機(jī)時(shí)鐘內(nèi)接法;圖1---自己產(chǎn)生時(shí)鐘信號(hào)作為單片機(jī)單片機(jī)的時(shí)鐘外接方式;圖2---使用其他電路產(chǎn)生圖1時(shí)鐘振蕩電路圖2外部時(shí)鐘接法STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第53頁!當(dāng)系統(tǒng)不進(jìn)行片外的ROM擴(kuò)展,也不進(jìn)行片外RAM擴(kuò)展時(shí),單片機(jī)硬件自動(dòng)使C=0,MUX開關(guān)接向鎖存器的反相輸出端,將輸出上拉場效應(yīng)管T1截止;當(dāng)有外部擴(kuò)展時(shí),P0口必須做輸出地址、數(shù)據(jù)時(shí),C=1,地址通過T1送到P0口,當(dāng)輸入數(shù)據(jù)時(shí),通過下邊緩沖器進(jìn)入內(nèi)存DQCLKQMUXP0.n讀鎖存器內(nèi)部總線寫鎖存器讀引腳地址/數(shù)據(jù)控制VCCT1T2P0口引腳STC89C51系列單片機(jī)的結(jié)構(gòu)和原理共62頁,您現(xiàn)在瀏覽的是第54頁!②輸入時(shí)----分讀引腳或讀鎖存器,此刻如果T2導(dǎo)通,則P0將被鎖定為0,輸入數(shù)據(jù)不能正確讀入,故必須使P0=1,T1和T2截止,才能讀入數(shù)據(jù),因此稱為準(zhǔn)雙口。DQCLKQMUXP0.n讀鎖存器內(nèi)部總線寫鎖存器讀引腳地址/數(shù)據(jù)控制VCCT1T2P0口引腳因?yàn)門2截止,故P0口數(shù)據(jù),通過下邊三
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司行政年度工作計(jì)劃2025(13篇)
- 2025新聞?dòng)浾邆€(gè)人工作總結(jié)(8篇)
- 2024年6月教師工作總結(jié)范文(7篇)
- 關(guān)于愛情演講2024(31篇)
- 2024-2025學(xué)年重慶市巴渝學(xué)校高一上學(xué)期期中考試歷史試卷
- 2024-2025學(xué)年內(nèi)蒙古自治區(qū)赤峰市高三上學(xué)期期中考試歷史試卷
- 2025年合伙企業(yè)員工餐飲合同
- 2025年環(huán)氧大豆油項(xiàng)目規(guī)劃申請報(bào)告
- 2025年制造業(yè)薪資談判集體協(xié)商協(xié)議指導(dǎo)范本
- 2025年共有債權(quán)缺失的離婚協(xié)議書規(guī)范文本
- 魯科版小學(xué)四年級(jí)下冊綜合實(shí)踐活動(dòng)教案(適合山東科學(xué)技術(shù)版教材)
- GB/T 44311-2024適老環(huán)境評估導(dǎo)則
- 保護(hù)和傳承中國傳統(tǒng)文化遺產(chǎn)閱讀題答案
- 【長安的荔枝中李善德的人物形象分析7800字(論文)】
- 勞動(dòng)合同范本1997
- 廣東省2024年普通高中學(xué)業(yè)水平合格性考試語文仿真模擬卷01(原卷版)
- 2024CSCO食管癌診療指南解讀
- QB/T 6019-2023 制漿造紙專業(yè)設(shè)備安裝工程施工質(zhì)量驗(yàn)收規(guī)范 (正式版)
- 2024年山東省安全生產(chǎn)普法知識(shí)競賽考試題庫(含答案)
- 2024年廣西南寧市初中畢業(yè)班適應(yīng)性測試數(shù)學(xué)試卷
- 建筑入侵報(bào)警系統(tǒng)-入侵報(bào)警系統(tǒng)概述
評論
0/150
提交評論