第2章MCS51系列單片機(jī)的結(jié)構(gòu)及原理_第1頁(yè)
第2章MCS51系列單片機(jī)的結(jié)構(gòu)及原理_第2頁(yè)
第2章MCS51系列單片機(jī)的結(jié)構(gòu)及原理_第3頁(yè)
第2章MCS51系列單片機(jī)的結(jié)構(gòu)及原理_第4頁(yè)
第2章MCS51系列單片機(jī)的結(jié)構(gòu)及原理_第5頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 教學(xué)目標(biāo):教學(xué)目標(biāo): 介紹mcs51系列單片機(jī)的內(nèi)部結(jié)構(gòu)與外部引腳功能 介紹mcs51系列單片機(jī)輸入輸出端口的結(jié)構(gòu)與功能 介紹mcs51系列單片機(jī)的存儲(chǔ)器組織 介紹mcs51系列單片機(jī)的時(shí)序 學(xué)習(xí)要求:學(xué)習(xí)要求: 掌握mcs51系列單片機(jī)的內(nèi)部結(jié)構(gòu)與外部引腳功能 掌握mcs51系列單片機(jī)存儲(chǔ)器的構(gòu)成與編址方法 掌握輸入輸出端口的功能,了解輸入輸出端口的結(jié)構(gòu) 掌握振蕩電路與復(fù)位電路的構(gòu)成,了解單片機(jī)的cpu時(shí)序l mcs-51系列單片機(jī)是美國(guó)intel公司在1980年推出的8位單片 微型計(jì)算機(jī) ,包含51和52兩個(gè)子系列。l 51子系列的典型產(chǎn)品有8031,8051和8751三種機(jī)型 l 52

2、子系列包括8032,8052二種主要機(jī)型 l mcs-51系列單片機(jī)的結(jié)構(gòu)框圖見(jiàn)圖2-1。 mcs-51系列單片機(jī)的結(jié)構(gòu)框圖見(jiàn)圖2-1。 5151子系列的配置如下:子系列的配置如下: (1)8位cpu; (2)振蕩頻率1.212mhz; (3)128個(gè)字節(jié)的片內(nèi)數(shù)據(jù)存儲(chǔ)器(片內(nèi)ram); (4)21個(gè)專(zhuān)用寄存器; (5)4kb的片內(nèi)程序存儲(chǔ)器(8031無(wú)); (6)8位并行i/o口p0,p1,p2,p3; (7)一個(gè)全雙工串行i/o口; (8)2個(gè)16位定時(shí)器/計(jì)數(shù)器; (9)5個(gè)中斷源,分為2個(gè)優(yōu)先級(jí); 222 7pp7pp33 7pp1 71ppv c cv s sr s te aa l

3、ep s e nx t a l 2x t a l 1e p r o m或 r o m p cp c 加 1緩 沖 器1 6 位 地 址 寄 存 器r a mr a m 地 址寄 存 器 s pa c c暫 存 器 1暫 存 器 2b 寄 存 器中 斷 系 統(tǒng) 串 行 口 定 時(shí) 器 / 計(jì) 時(shí) 器a l up s wd p t rp 1 鎖 存 器p 1 驅(qū) 動(dòng) 器振 蕩 器指令寄存器定時(shí)及控制p 3 鎖 存 器p 2 鎖 存 器p 0 鎖 存 器p 3 驅(qū) 動(dòng) 器p 2 驅(qū) 動(dòng) 器p 0 驅(qū) 動(dòng) 器圖2-1 mcs-51系列單片機(jī)的結(jié)構(gòu)框圖 p1.0 vcc p1.1 p0.0 p1.2 p

4、0.1 p1.3 p0.2 p1.4 p0.3 p1.5 p0.4 p1.6 p0.5 p1.7 p0.6 rst/v p0.7 p3.0 ea/vpp p3.1 ale/prog p3.2 psen p3.3 p2.7 p3.4 p2.6 p3.5 p2.5 p3.6 p2.4 p3.7 p2.3 xlal1 p2.2 xlal2 p2.1 vss p2.0 1 21 2 22 3 23 4 24 5 25 6 26 7 27 8 28 9 29 10 30 11 31 12 32 13 33 14 34 15 35 16 36 17 37 18 38 19 39 20 40 主電源引腳 v

5、ss、vcc 外接晶振引腳 xtal1、xtal2 輸入/輸出引腳 p0、p1、p2、p3 p0.0p0.0p0.7p0.7:p0口的8個(gè)引腳,p0口是8位漏極開(kāi)路型雙向i/0端口,在接有片外存儲(chǔ)器或i/0擴(kuò)展接口時(shí),p0.0p0.7分時(shí)復(fù)用,作低8位地址總線與雙向8位數(shù)據(jù)總線 p1.0p1.0p1.7p1.7:p1口的8個(gè)引腳,p1口是一個(gè)帶內(nèi)部上拉電阻的8位雙向i/o口,對(duì)于52子系列,p1.0還可用于定時(shí)器/計(jì)數(shù)器2的計(jì)數(shù)脈沖輸入端2,1.1還可作定時(shí)器/計(jì)數(shù)器2的外部控制端t2ex。 p2.0p2.0p2.7p2.7:p2口的8個(gè)引腳,p2口也是一個(gè)帶內(nèi)部上拉電阻的雙向i/o口,在訪問(wèn)

6、片外存儲(chǔ)器或擴(kuò)展i/o接口時(shí),還用于提供高8位地址。 p3.0p3.7:p3口的8個(gè)引腳,p3口也是一個(gè)帶上拉電阻的i/o口,除可以作雙向的輸入輸出口外,還具有第2功能,見(jiàn)表2.1表 p3口第二功能表引腳 第二功能 p3.0p3.1p3.2p3.3p3.4p3.5p3.6p3.7 rxd(串行口輸入)txd(串行口輸出)int0(外部中斷0輸入)int1(外部中斷1輸入)t0(定時(shí)器0的外部輸入) t1(定時(shí)器1的外部輸入)wr (片外數(shù)據(jù)存儲(chǔ)器寫(xiě)控制信號(hào))rd (片外數(shù)據(jù)存儲(chǔ)器讀控制信號(hào)) (控制線(控制線(4 4條):條): ale/progale/prog:雙功能引腳。由于p0口的8個(gè)引

7、腳是低8位地址總線與數(shù)據(jù)總線分時(shí)復(fù)用,因此必須將p0口輸出的低8位地址進(jìn)行鎖存。在訪問(wèn)片外存儲(chǔ)器時(shí),每機(jī)器周期該信號(hào)出現(xiàn)2次。其下降沿用于控制鎖存p0口輸出的低8 位地址。即使不訪問(wèn)片外存儲(chǔ)器,該引腳上仍出現(xiàn)上述頻率的周期性信號(hào),因此也可作為對(duì)外輸出的時(shí)鐘脈沖,頻率為振蕩器頻率的1/6,必須注意的是:在訪問(wèn)片內(nèi)外存儲(chǔ)器時(shí),ale脈沖會(huì)跳空1個(gè)。對(duì)片內(nèi)含有eprom的機(jī)型,此引腳在編程時(shí)可作為編程脈沖prog的輸入端。 psenpsen:片外程序存儲(chǔ)器讀選通信號(hào)輸出端,在cpu從片外程序存儲(chǔ)器取指期間,此信號(hào)每個(gè)機(jī)器周期兩次有效,以通過(guò)p0口讀入指令,在訪問(wèn)片外數(shù)據(jù)存儲(chǔ)器時(shí),該信號(hào)不出現(xiàn)。 雙功

8、能引腳,為片外程序存儲(chǔ)器選用端。當(dāng)該引腳信號(hào)有效時(shí),選擇片外程序存儲(chǔ)器,即ea/vpp=1時(shí),訪問(wèn)片內(nèi)程序存儲(chǔ)器。 對(duì)片內(nèi)含有eprom的機(jī)型,此引腳在編程期間用于施加+21v的編程電壓。 雙功能引腳,在單片機(jī)工作期間,當(dāng)此引腳上出現(xiàn)連接2個(gè)機(jī)器周期的高電平時(shí)可實(shí)現(xiàn)復(fù)位操作,詳見(jiàn)2.4節(jié)。 在vcc掉電期間,若該引腳接備用電源(+5v),可向片內(nèi)ram供電,以保存片內(nèi)ram中的信息。l運(yùn)算器由算邏運(yùn)算單元alu、累加器a、b寄存器、暫存器1、暫存器2、及程序狀態(tài)字psw構(gòu)成。程序狀態(tài)字psw是1個(gè)8位的專(zhuān)用寄存器,用于存放程序運(yùn)行中的各種狀態(tài)信息,可進(jìn)行位尋址,lpsw的各位定義見(jiàn)圖23。 d

9、7 d6 d5 d4 d3 d2 d1 d0l圖2-1的虛框部分為微處理器,又分為控制器、運(yùn)算器。控制器由指令寄存器、指令譯碼器、定時(shí)控制部分組成,可根據(jù)不同的指令產(chǎn)生相應(yīng)的控制信號(hào),使各部分協(xié)調(diào)工作,完成指令所規(guī)定的功能。 圖23 程序狀態(tài)字各位的含義cacf0rs1rs0ovf1p2.2 mcs2.2 mcs5151系列單片機(jī)的微處理器與系列單片機(jī)的微處理器與cpucpu時(shí)序時(shí)序(1)進(jìn)位標(biāo)志c(psw.7);很多算術(shù)邏輯運(yùn)算指令執(zhí)行 后都會(huì)影響進(jìn)位標(biāo)志c。例如加減運(yùn)算,若運(yùn)算結(jié)果有進(jìn)位或借位,則c=1,若無(wú),則c=0。可用專(zhuān)門(mén)的指令或硬件將c置位或清零,在進(jìn)行位操作時(shí),c又起著位累加器的

10、作用,類(lèi)似于累加器a。(2)輔助進(jìn)位標(biāo)志ac(psw.6):做加減運(yùn)算時(shí),若低半字節(jié)有進(jìn)位(借位),則ac=1,否則ac=0,輔助進(jìn)位標(biāo)志主要用于bcd運(yùn)算調(diào)整時(shí)。(3)軟件標(biāo)志fo(psw.5):這是可由用戶定義的一個(gè)狀態(tài)標(biāo)志,可由用戶置位或復(fù)位。f1的定義與f0相同。 (4)工作寄存器組選擇位rs1、rs0(psw.4,psw.3): rs1、rs0與工作寄存器組的對(duì)應(yīng)關(guān)系如下: rs1 rs0 工作寄存器組 片內(nèi)ram地址 0 0 第0組 00h07h 0 1 第1組 08h0fh 1 0 第2組 10h17h 1 1 第3組 18h1fh 單片機(jī)上電復(fù)位后,rs1rs0=00,此時(shí)第0

11、組的8個(gè)工作寄存器為當(dāng)前工作寄存器組。 (5 5)溢出標(biāo)志)溢出標(biāo)志ovov(psw.2psw.2):):當(dāng)運(yùn)算結(jié)果超出機(jī)器所能表示的范圍時(shí)稱(chēng)溢出。ov是帶符號(hào)數(shù)運(yùn)算的溢出標(biāo)志,如發(fā)生溢出,則ov=1;否則ov=0。 (6 6)奇偶標(biāo)志)奇偶標(biāo)志p p(psw.0psw.0):):p反映執(zhí)行指令后累加器a中1的個(gè)數(shù)的奇偶,若a中1的個(gè)數(shù)為奇數(shù),則p=1,若 a中1的個(gè)數(shù)為偶數(shù),則p=0。 程序狀態(tài)字可反映運(yùn)算結(jié)果的狀態(tài),下面以加法指令為例進(jìn)行說(shuō)明。例:分析執(zhí)行下列指令序列后,a、c、ac、ov、p的內(nèi)容是什么? mov a,#79h add a,#58h 該指令序列的功能是將79h+58ha。

12、計(jì)算過(guò)程如下: (79h) 01111001 +(58h) 01011000 (d1h) 11010001指令執(zhí)行后,a=d1h最高位無(wú)進(jìn)位,故=0;低半字節(jié)有進(jìn)位,ac=1;ov=0 1=1,發(fā)生溢出;a中1的個(gè)數(shù)為偶數(shù),故p=0。一振蕩器一振蕩器 cpu執(zhí)行指令的一系列動(dòng)作是在時(shí)序電路的控制下一拍一拍進(jìn)行的。其節(jié)拍信號(hào)由振蕩器產(chǎn)生,mcs-51系列單片機(jī)的內(nèi)部有一個(gè)高增益的反相放大器。外接晶體后可構(gòu)成自激振蕩器產(chǎn)生節(jié)拍信號(hào),接法見(jiàn)圖2-1,也可使用片外振蕩器,采用不同工藝制造的單片機(jī)芯片接法不同:。芯片狀態(tài) 接法 xtal1 xtal2hmos型 接地 接片外振蕩脈沖輸入端(帶上拉電阻)

13、chmos型 接片外振蕩脈沖輸入端(帶上拉電阻)懸浮 二、時(shí)鐘周期,機(jī)器周期、指令周期二、時(shí)鐘周期,機(jī)器周期、指令周期 振蕩器輸出的振蕩脈沖經(jīng)2分頻后作為內(nèi)部節(jié)拍信號(hào),作單片機(jī)內(nèi)部各部件協(xié)調(diào)工作的控制信號(hào),其周期稱(chēng)為時(shí)鐘周期。 計(jì)算機(jī)一條指令的執(zhí)行分幾個(gè)階段,每一階段完成一項(xiàng)規(guī)定的操作,完成某一規(guī)定操作所需的時(shí)間稱(chēng)為一個(gè)機(jī)器周期。對(duì)mcs51系列單片機(jī),6個(gè)時(shí)鐘周期構(gòu)成一個(gè)機(jī)器周期。 cpu執(zhí)行一條指令所需的時(shí)間為指令周期。指令周期以機(jī)器周期為單位,mcs51系列單片機(jī)的指令多為單周期、雙周期指令,只有乘除指令為4周期指令,若用12mhz晶振,則單周期指令、雙周期指令的執(zhí)行時(shí)間分別為1s和2s

14、,而乘除指令則需4s三、三、cpucpu時(shí)序時(shí)序 mcs51系列單片機(jī)的一個(gè)機(jī)器周期包含6個(gè)時(shí)鐘周期。我們用s1、s2、s6表示,每個(gè)時(shí)鐘周期的2個(gè)振蕩節(jié)拍用p1、p2表示,則一個(gè)機(jī)器周期包括12個(gè)振蕩周期,不同周期、不同字節(jié)數(shù)的指令時(shí)序不同。 s 1 s 2 s 3 s 4 s 5 s 6 s 1 s 2 s 3 s 4 s 5 s 6 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 讀 操 作 碼 讀 下 一 個(gè) 操 作 碼 執(zhí) 行 下 一 條 指

15、 令 ( 丟 棄 ) p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 s 1 s 2 s 3 s 4 s 5 s 6 ( a ) 1 字 節(jié)1 周 期 指 令 時(shí) 序 讀 操 作 碼 讀 第2 個(gè) 字 節(jié) 執(zhí) 行 下 一 條 指 令 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 s 1 s 2 s 3 s 4 s 5 s 6 ( b ) 2 字 節(jié)1 周 期 指 令 時(shí) 序 讀 操 作 碼 讀 下 一 個(gè) 操 作 碼 讀 下 一 個(gè) 操 作 碼 讀 下 一 個(gè) 操 作 碼 ( 丟

16、棄 ) ( 丟 棄 ) ( 丟 棄 ) p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 p 1 p 2 s 1 s 2 s 3 s 4 s 5 s 6 s 1 s 2 s 3 s 4 s 5 s 6 ( c ) 1 字 節(jié)2 周 期 指 令 時(shí) 序 執(zhí) 行 下 一 條 指 令 l mcs51系列單片機(jī)內(nèi)部一般既有只讀存儲(chǔ)rom,又有隨機(jī)存儲(chǔ)器ram,片內(nèi)存儲(chǔ)器的類(lèi)型及容量見(jiàn)表23.存儲(chǔ)器類(lèi)型 片內(nèi)程序存儲(chǔ)器容量(b) 片內(nèi)數(shù)據(jù)存儲(chǔ)器容量(b) mcs-51系列單片機(jī)型

17、號(hào) 掩膜 rom eprom ram sfr 51 子系列 8031 8051 8751 4kb 4kb 128 128 128 128 .128 128 52 子系列 8032 8052 8kb 256 256 128 128 當(dāng)片內(nèi)存儲(chǔ)器容量不夠時(shí),可在片外擴(kuò)展,加用片外程序存儲(chǔ)器與片外數(shù)據(jù)存儲(chǔ)器。從結(jié)構(gòu)上講共有四個(gè)存儲(chǔ)空間:片內(nèi)程序存儲(chǔ)器、片外程序存儲(chǔ)器、片內(nèi)數(shù)據(jù)存儲(chǔ)器、片外數(shù)據(jù)存儲(chǔ)器,見(jiàn)圖2-5。 片內(nèi)存儲(chǔ)器 0fff 4kb rom ff 80 sfr 7f 00 ram 0000 ea=1 ffff ffff 1000 64kb rom 0fff 0000 ea=0 0000 64

18、kb ram 或i/o 片外擴(kuò)展存儲(chǔ)器 圖4 mcs51系列單片機(jī)存儲(chǔ)器配置圖 程序存儲(chǔ)器存放程序及各種表格、常數(shù),其尋址范圍為64kb,編址范圍為0000h至ffffh。對(duì)于片內(nèi)無(wú)程序存儲(chǔ)器的機(jī)型(8031、8032),其程序存儲(chǔ)器均在片外擴(kuò)展,對(duì)于片內(nèi)有程序存儲(chǔ)器的機(jī)型(8051、8052、8751),也可在需要時(shí)擴(kuò)展片外程序存儲(chǔ)器。在既有片內(nèi)又有片外程序存儲(chǔ)器時(shí),通常編址時(shí)先片內(nèi),后片外,片內(nèi)片外連續(xù)不重疊。 ea有兩種接法: ea=1,此時(shí)復(fù)位后先執(zhí)行片內(nèi)程序存儲(chǔ)器的程序;當(dāng)pc中的內(nèi)容超過(guò)片內(nèi)程序存儲(chǔ)器最后的一個(gè)單元的地址時(shí),將自動(dòng)轉(zhuǎn)去執(zhí)行片外程序存儲(chǔ)器的程序。 ea=0,此時(shí)將不訪

19、問(wèn)片內(nèi)程序存儲(chǔ)器而直接訪問(wèn)片外程序存儲(chǔ)器。 程序存儲(chǔ)器中有特殊用途的7個(gè)單元: l0000h單元:mcs51系列單片機(jī)復(fù)位后pc=0000h,即系統(tǒng)復(fù)位后從0000h單元開(kāi)始執(zhí)行程序,l0003h 外部中斷0 中斷服務(wù)程序入口地址l000bh 定時(shí)器/計(jì)數(shù)器1溢出中斷入口地址l0013h 外部中斷1入口地址l001bh 定時(shí)器/計(jì)數(shù)器1溢出中斷入口地址l0023h 串行口中斷入口地址l002bh 定時(shí)器/計(jì)數(shù)器2溢出或t2ex端負(fù)跳變(僅8032、 8052 用)中斷入口地址注意:注意:以上7個(gè)單元相隔很近,通常要執(zhí)行的程序并不在此,單元內(nèi)通常是一條絕對(duì)轉(zhuǎn)移指令,轉(zhuǎn)到程序真正的起始地址去執(zhí)行程

20、序.。 mcs51系列單片機(jī)的片內(nèi)數(shù)據(jù)存儲(chǔ)器分為片內(nèi)ram塊與特殊功能寄存器(sfr)塊,對(duì)于51子系列,片內(nèi)ram塊的地址從00h7fh,占128個(gè)字節(jié),sfr塊從80hffh,也為128字節(jié)。對(duì)于52子系列,前者編址從00hffh,占256個(gè)字節(jié),后者編址為80hffh,占128字節(jié)。片內(nèi)ram的高128個(gè)字節(jié)的地址與sfr塊重疊,當(dāng)片內(nèi)數(shù)據(jù)存儲(chǔ)器容量不夠時(shí)可擴(kuò)展片外數(shù)據(jù)存儲(chǔ)器。片外數(shù)據(jù)存儲(chǔ)器用r0、r1間址尋址時(shí),尋址范圍為256個(gè)字節(jié),用數(shù)據(jù)指針寄存器dptr時(shí)尋址范圍最大為64kb。在編址時(shí),片外數(shù)據(jù)存儲(chǔ)器的地址可與片內(nèi)數(shù)據(jù)存儲(chǔ)器的地址重疊 ,事實(shí)上,數(shù)據(jù)存儲(chǔ)器與程序存儲(chǔ)器的地址也是

21、重疊的。規(guī)定:規(guī)定:片內(nèi)片內(nèi)ramram的高的高128128個(gè)字節(jié)用寄存器間址尋址,而個(gè)字節(jié)用寄存器間址尋址,而sfrsfr塊用直接尋址,塊用直接尋址,訪問(wèn)片內(nèi)數(shù)據(jù)存儲(chǔ)器用訪問(wèn)片內(nèi)數(shù)據(jù)存儲(chǔ)器用movmov指令,訪問(wèn)片外數(shù)據(jù)存儲(chǔ)器用指令,訪問(wèn)片外數(shù)據(jù)存儲(chǔ)器用movxmovx指令,指令,而訪問(wèn)程序存儲(chǔ)器則用而訪問(wèn)程序存儲(chǔ)器則用movcmovc指令,指令, l51子系列片內(nèi)ram塊可分工作寄存器存器區(qū)、位尋址區(qū)、數(shù)據(jù)緩沖區(qū)等三個(gè)區(qū)域,這三個(gè)區(qū)域統(tǒng)一編址,從00h7fh,各區(qū)域有自己的特殊功能,也可統(tǒng)一調(diào)度使用。 注意:注意:?jiǎn)纹瑱C(jī)上電復(fù)位后,單片機(jī)上電復(fù)位后,sp=07h,即堆棧,即堆棧處于處于工作

22、寄存器存器區(qū),應(yīng)給工作寄存器存器區(qū),應(yīng)給spsp重新賦值。重新賦值。一、片內(nèi)ram塊 r0 r1 : r7 工作寄存器 0組 r0 r1 : r7 工作寄存器 1組 r0 r1 : r7 工作寄存器 2組 r0 r1 : 00h 01h : 07h 08h 工 09h 作 : 寄 存 器 0fh 區(qū) 10h 11h : 17h 18h 19h : 1fh r7 工作寄存器 3組 07 06 05 04 03 02 01 00 0f 0e 0d 0c 0b 0a 09 08 17 16 15 14 13 12 11 10 1f 1e 1d 1c 1b 1a 19 18 27 26 25 24 2

23、3 22 21 20 2f 2e 2d 2c 2b 2a 29 28 37 36 35 34 33 32 30 30 3f 3e 3d 3c 3b 3a 39 38 47 46 45 44 43 42 41 40 4f 4e 4d 4c 4b 4a 49 48 57 56 55 54 53 52 51 50 5f 5e 5d 5c 5b 5a 59 58 67 66 65 64 63 62 61 60 6f 6e 6d 6c 6b 6a 69 68 77 76 75 74 73 72 71 70 20h 21h 22h 23h 位 24h 尋 25h 址 26h 區(qū) 27h 28h 29h 2

24、ah 2bh 2ch 2dh 2eh 2fh 7f 7e 7d 7c 7b 7a 78 79 數(shù) 30h 據(jù) 31h 緩 : 沖 區(qū) 7fh 二、特殊功能寄存器塊sfr特殊功能寄存器又稱(chēng)專(zhuān)用寄存器,與片內(nèi)ram統(tǒng)一編址(pc除外)用直接尋址方式尋址,其地址從80hffh,離散分布 . 位地址與名稱(chēng) 專(zhuān)用寄存器名稱(chēng) 符號(hào) 地址 d7 d6 d5 d4 d3 d2 d1 d0 p0 口 p0 80h 87 86 85 84 83 82 81 80 堆棧指針 sp 81h 數(shù)據(jù)指針低字節(jié) 82h 數(shù)據(jù)指針高字節(jié) dpl dptr dph 83h 定時(shí)器/計(jì)數(shù)器控制 tcon 88h tf1 8f t

25、r1 8e tf0 8d tr0 8c ie1 8b it1 8a ie0 89 it0 88 定時(shí)器/計(jì)數(shù)器方式控制 tmod 89h gate c/t m1 m0 gate c/t m1 m0 定時(shí)器/計(jì)數(shù)器 0低字節(jié) tl0 8ah 定時(shí)器/計(jì)數(shù)器 1低字節(jié) tl1 8bh 定時(shí)器/計(jì)數(shù)器0高字節(jié) th0 8ch 定時(shí)器/計(jì)數(shù)器1高字節(jié) th1 8dh p1口 p1 90h 97 96 95 94 93 92 91 90 電源控制 pcon 97h smod - - - gf1 gf0 pd idl 串行口控制 scon 98h smo 9f sm1 9e sm2 9d ren 9c t

26、b8 9b rb8 9a ti 99 ri 98 串行數(shù)據(jù)緩沖器 sbuf 99h p2口 p2 aoh a7 a6 a5 a4 a3 a2 a1 a0 中斷允許控制 ie a8h ea af - - et2 ad es ac et1 ab ex1 aa et0 a9 ex0 a8 p3口 p3 boh b7 b6 b5 b4 b3 b2 b1 b0 中斷優(yōu)先級(jí)控制 ip b8h - - - - pt2 bd ps bc pt1 bb px1 ba pto b9 px0 b8 定時(shí)器/計(jì)數(shù)器2 控制 t2con* c8h tf2 cf exf2 ce bclk cd tclk cc exen2

27、 cb tr2 ca c/t2 c9 cp/r12 c8 定時(shí)器/計(jì)數(shù)器2 自動(dòng)重裝載低字節(jié) rldl* cah 定時(shí)器/計(jì)數(shù)器2 自動(dòng)重裝載高字節(jié) rldh* cbh 定時(shí)器/計(jì)數(shù)器2 低字節(jié) tl2* cch 定時(shí)器/計(jì)數(shù)器2 高字節(jié) th2* cdh 程序狀態(tài)字 psw doh c d7 ac d6 f0 d5 rs1 d4 rs0 d3 ov d2 - d1 p d0 累加器 a eoh e7 e6 e5 e4 e3 e2 e1 e0 b 寄存器 b foh f7 f6 f5 f4 f3 f2 f1 f0 注:表中帶*的寄存器都與定時(shí)器/計(jì)數(shù)器2有關(guān),只在52子系列芯片中存在 l mc

28、s51系列單片機(jī)芯片有4個(gè)8位的準(zhǔn)雙向輸入輸出端口,稱(chēng)為p0、p1、p2、p3口,見(jiàn)表2,我們可以看出p0-p3口均有位地址,因此4個(gè)口的32根輸入/輸出線每一條可作為獨(dú)立的輸入/輸出線使用。51系列單片機(jī)的輸入輸出端口與片內(nèi)ram統(tǒng)一編址,采用相同的指令進(jìn)行訪問(wèn),p0p3口采用直接尋址方式,其口地址依次為80h、90h、a0h、b0h。 l各端口的結(jié)構(gòu)見(jiàn)圖2-5至圖2-8圖2-5 p0口的1位結(jié)構(gòu) 地址數(shù)據(jù) 讀鎖存器 2 控制 v2 4 內(nèi)部總線 v1 寫(xiě)鎖存器 1 讀引腳 d q p0.i 鎖存器 cl q 1 0 mux p0.i 引腳 圖2-6 p1口的1位結(jié)構(gòu)d p1.i q 鎖存器

29、cl q讀鎖存器 內(nèi)部總線 寫(xiě)鎖存器 讀引腳 內(nèi)部上拉電阻 vcc 2 1 v1 p1.i引腳 圖2-7 p2口的1位結(jié)構(gòu) 地址 控制 讀鎖存器 vcc 內(nèi)部上拉電阻 內(nèi)部總線 v1 寫(xiě)鎖存器 1 讀引腳 d q p2.i 鎖存器 cl q p2.i 引腳 mux 第二輸出功能 讀鎖存器 2 vcc 內(nèi)部總線 內(nèi)部上拉電阻 v1 寫(xiě)鎖存器 1 4 讀引腳 第二輸入功能 d q p3.i 鎖存器 cl q p3.i 引腳 圖2-8 p3口的1位結(jié)構(gòu) 各端口的功能p0口有兩種功能:在擴(kuò)展片外存儲(chǔ)器時(shí)作地址數(shù)據(jù)分時(shí)復(fù)用總線,在不進(jìn)行擴(kuò)展時(shí)作一般準(zhǔn)雙向輸入/輸出口使用注意:注意:由于v2截止,如果輸入

30、電路由集電極開(kāi)路或漏極開(kāi)路電路驅(qū)動(dòng),應(yīng)外加提升電路。lp1口只有一種功能-通用準(zhǔn)雙向的輸入/輸出接口 lp2口有2種用途:通用準(zhǔn)雙向i/o接口或當(dāng)單片機(jī)擴(kuò)展了片外存儲(chǔ)器時(shí)作高8位地址總線 lp3口除了作為通用準(zhǔn)雙向i/o使用外,還具有第2功能 (表2-1)lmcs-51系列單片列的rst引腳為復(fù)位引腳,只要在rst引腳上出現(xiàn)寬度在10ms以上的高電平,即可實(shí)現(xiàn)復(fù)位,復(fù)位通常有上電復(fù)位和操作復(fù)位兩種方法。 l復(fù)位是靠外部電路實(shí)現(xiàn)的。常用的一種上電與按鈕復(fù)位電路見(jiàn)圖。l復(fù)位后各專(zhuān)用存儲(chǔ)器和程序計(jì)數(shù)器的狀態(tài)見(jiàn)表22。 +5v r c1 c2 c3rstmcs-51寄存器復(fù)位狀態(tài) 寄存器復(fù)位狀態(tài) pcab pswspdptrp0p3ipie tmod 0000hooh00h00h07h0000hffhxx000000b0x000000b 00h tcont2conth0tl0th1tl1sconsbuf pcon 00h00h00h00h00h00h00hxxh (0xxx0000b) 注意:注意:?jiǎn)纹瑱C(jī)的各個(gè)功能模塊由特殊寄存器控制,因此上述復(fù)位狀態(tài)決定了單片機(jī)的初始狀態(tài):、 1、pc0000h,復(fù)位后從0000h單元開(kāi)始執(zhí)行程序。2、psw=00h,所以rs1rs0=00,復(fù)位后單片機(jī)當(dāng)前工作寄存器組為第0組。、sp=07,復(fù)位后堆棧區(qū)從片內(nèi)ram08h單元開(kāi)始。 、復(fù)

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論