ch2_3 單片機(jī)芯片的硬件結(jié)構(gòu)part 1 80C51_第1頁(yè)
ch2_3 單片機(jī)芯片的硬件結(jié)構(gòu)part 1 80C51_第2頁(yè)
ch2_3 單片機(jī)芯片的硬件結(jié)構(gòu)part 1 80C51_第3頁(yè)
ch2_3 單片機(jī)芯片的硬件結(jié)構(gòu)part 1 80C51_第4頁(yè)
ch2_3 單片機(jī)芯片的硬件結(jié)構(gòu)part 1 80C51_第5頁(yè)
已閱讀5頁(yè),還剩48頁(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、2.4 80C51的時(shí)鐘電路及工作時(shí)序 時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號(hào)。 時(shí)序所研究的是指令執(zhí)行中各信號(hào)之間的相互時(shí)間關(guān)系。 單片機(jī)本身就是一個(gè)復(fù)雜的同步時(shí)序電路。 2.4.1 時(shí)鐘電路 在80C51內(nèi)帶有時(shí)鐘電路,只需要在片外通過(guò)XTAL1和XTAL2引腳接入定時(shí)控制元件晶體振蕩器和電容,即可構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。在80C51芯片內(nèi)部有一個(gè)高增益反相放大器,而在芯片的外部,XTAL1和XTAL2之間跨接晶體振蕩器和微調(diào)電容。80C51的時(shí)鐘電路如下圖見(jiàn)教材P30圖2.12。 由圖可見(jiàn),時(shí)鐘電路由以下幾局部組成:振蕩器及定時(shí)控制元件、時(shí)鐘發(fā)生器、地址鎖存允許信號(hào) ALE。振蕩器

2、及定時(shí)控制元件 在80C51芯片內(nèi)部有一個(gè)高增益反相放大器,其輸入端為芯片引腳XTAL1,其輸出端為引腳XTAL2。圖 80C51單片機(jī)的時(shí)鐘電路 2 只需要在片外通過(guò)XTAL1和XTAL2引腳跨接晶體振蕩器和微調(diào)電容,形成反響電路,振蕩器即可工作。振蕩電路原理如下圖見(jiàn)教材P30圖2.11。 振蕩器的工作可以由PD位特殊功能存放器PCON中的一位控制。當(dāng) PD置1時(shí),振蕩器停止工作,系統(tǒng)進(jìn)入低功耗工作狀態(tài)。 振蕩器的工作頻率一般在1.212 MHz之間,由于制造工藝的改進(jìn),有些單片機(jī)的頻率范圍正向兩端延伸,高端可達(dá)40 MHZ,低端可達(dá)0Hz。 在由多片單片機(jī)組成的系統(tǒng)中,為了使各單片機(jī)之間時(shí)

3、鐘信號(hào)的同步,應(yīng)當(dāng)引入唯一的公用外部脈沖信號(hào)作為各單片機(jī)的振蕩脈沖。 當(dāng)由外部輸入時(shí)鐘信號(hào)時(shí),外部信號(hào)接入XTAL1端,XTAL2端懸空不用。對(duì)外部信號(hào)的占空比沒(méi)有要求,高/低電平持續(xù)時(shí)間應(yīng)不小于 20 ns。內(nèi)部時(shí)鐘發(fā)生器 內(nèi)部時(shí)鐘發(fā)生器實(shí)質(zhì)上是一個(gè)2分頻的觸發(fā)器。其輸入由振蕩器引入的,輸出為兩個(gè)節(jié)拍的時(shí)鐘信號(hào)。輸出的前半周期,節(jié)拍1P1信號(hào)有效;后半周期,節(jié)拍2P2信號(hào)有效。每個(gè)輸出周期為一個(gè)計(jì)算機(jī)CPU的狀態(tài)周期,即時(shí)鐘發(fā)生器的輸出為狀態(tài)時(shí)鐘。每個(gè)狀態(tài)周期內(nèi)包括一個(gè)P1節(jié)拍和一個(gè)P2節(jié)拍,形成CPU內(nèi)的根本定時(shí)時(shí)鐘。ALE信號(hào) 一般地說(shuō),狀態(tài)時(shí)鐘經(jīng)過(guò)3分頻之后,產(chǎn)生ALE引腳上的信號(hào)輸出

4、。2.4.2 時(shí)序定時(shí)單位 單片機(jī)執(zhí)行指令是在時(shí)序電路的控制下一步一步進(jìn)行的。時(shí)序是用定時(shí)單位來(lái)說(shuō)明的。80C51的時(shí)序定時(shí)單位共有4個(gè):振蕩周期/節(jié)拍、時(shí)鐘周期/狀態(tài)、機(jī)器周期和指令周期。單片機(jī)各周期的關(guān)系見(jiàn)圖所示。P1P2S1P2振蕩周期時(shí)鐘周期/狀態(tài)周期機(jī)器周期機(jī)器周期指令周期OSCS2S3S4S5S6S1S2S4S5S3S6P1P1P1P1P1P1P1P1P1P1P1P2P2P2P2P2P2P2P2P2P2圖 80C51單片機(jī)各種周期的相互關(guān)系1振蕩周期/節(jié)拍P 為單片機(jī)提供定時(shí)信號(hào)的振蕩脈沖的周期稱(chēng)為振蕩周期。振蕩周期也稱(chēng)為節(jié)拍P。2時(shí)鐘周期/狀態(tài)周期/狀態(tài)S 時(shí)鐘周期是振蕩周期的兩

5、倍,又稱(chēng)狀態(tài)周期或狀態(tài)S。一個(gè)狀態(tài)S有兩個(gè)節(jié)拍,其前半周期對(duì)應(yīng)的節(jié)拍叫P1,后半周期對(duì)應(yīng)的節(jié)拍叫P2 。3機(jī)器周期 通常將完成一個(gè)根本操作所需的時(shí)間稱(chēng)為機(jī)器周期。 80C51采用定時(shí)控制方式,因此它有固定的機(jī)器周期。 規(guī)定一個(gè)機(jī)器周期的寬度為6個(gè)狀態(tài),并依次表示為S1S6。由于一個(gè)機(jī)器周期共有12個(gè)振蕩脈沖周期,因此機(jī)器周期就是振蕩脈沖的12分頻。 當(dāng)振蕩脈沖頻率為 12 MHZ時(shí),一個(gè)機(jī)器周期為 lS;當(dāng)振蕩脈沖頻率為6MHZ時(shí),一個(gè)機(jī)器周期為2 S。 機(jī)器周期是單片機(jī)的最小時(shí)間單位。4指令周期 執(zhí)行一條指令所需要的時(shí)間稱(chēng)為指令周期。它是最大的時(shí)序定時(shí)單位。80C51的指令周期根據(jù)指令的不同

6、,可包含有一、二、三、四個(gè)機(jī)器周期。 例如,設(shè)單片機(jī)外接晶振為12MHz時(shí),那么單片機(jī)的四個(gè)周期的具體值為: 振蕩周期1/12MHz1/12s0.0833s 時(shí)鐘周期1/6s0.167s 機(jī)器周期1s 指令周期14s2.4.3. 80C51指令時(shí)序 80C51共有111條指令,全部指令按其長(zhǎng)度可分為單字節(jié)指令、雙字節(jié)指令和三字節(jié)指令。 以下圖(見(jiàn)教材P33圖2.15)所表示的是幾種典型單機(jī)器周期和雙機(jī)器周期指令的時(shí)序。.單機(jī)器周期指令,如圖a、b所示。 雙字節(jié)時(shí),執(zhí)行在S1P2開(kāi)始,操作碼被讀入指令存放器;在S4P2時(shí),再讀入第二個(gè)字節(jié)。單字節(jié)時(shí),執(zhí)行在S1P2開(kāi)始,操作碼被讀入指令存放器;在

7、S4P2時(shí)仍有讀操作,但被讀入的字節(jié)即下一操作碼被忽略,且此時(shí)PC并不增量。 以上兩種情況均在S6P2時(shí)結(jié)束操作。圖 80C51單片機(jī)典型指令時(shí)序.雙機(jī)器周期指令,如圖c、d所示。 單字節(jié)第一種情況:執(zhí)行在S1P2開(kāi)始,在整個(gè)兩個(gè)機(jī)器周期中,共發(fā)生四次讀操作,但是后三次操作都無(wú)效。 單字節(jié)第二種情況:執(zhí)行在S1P2開(kāi)始,操作碼被讀入指令存放器;在S4P2時(shí),再讀入的字節(jié)被忽略。由S5開(kāi)始送出外部數(shù)據(jù)存儲(chǔ)器的地址,隨后是讀或?qū)懙牟僮鳌T谧x、寫(xiě)期間,ALE不輸出有效信號(hào)。在第二個(gè)機(jī)器周期,片外數(shù)據(jù)存儲(chǔ)器也尋址和選通,但不產(chǎn)生取指操作。 一般,算術(shù)/邏輯操作發(fā)生在節(jié)拍1期間,內(nèi)部存放器對(duì)存放器的傳送

8、發(fā)生在節(jié)拍2期間。 圖中的ALE信號(hào)是為地址鎖存而定義的,該信號(hào)每有效一次對(duì)應(yīng)單片機(jī)進(jìn)行一次讀指令操作。ALE信號(hào)以振蕩脈沖六分之一的頻率出現(xiàn),因此在一個(gè)機(jī)器周期中,ALE信號(hào)兩次有效,第一次在S1P2和S2P1期間,第二次在S4P2和S5P1期間,有效寬度為一個(gè)狀態(tài)周期S。 單字節(jié)或雙字節(jié)指令可能是單機(jī)器周期或雙機(jī)器周期的,三字節(jié)指令是雙機(jī)器周期的,乘除指令是四個(gè)機(jī)器周期的。1單字節(jié)單周期指令如 INC A 只需進(jìn)行一次讀指令操作。當(dāng)?shù)诙€(gè)ALE有效時(shí),由于PC沒(méi)有加1,所以讀出的還是原指令。2雙字節(jié)單周期指令如 ADD A,data ALE的兩次讀操作都是有效的,第一次是讀指令操作碼,第二

9、次是讀指令第二字節(jié)#data。3單字節(jié)雙周期指令如 INC DPTR 兩個(gè)機(jī)器周期共進(jìn)行四次讀指令的操作,但其中后三次的讀操作全是無(wú)效的。 (4) 單字節(jié)雙周期指令如MOVX MOVX類(lèi)指令情況有所不同。因?yàn)閳?zhí)行這類(lèi)指令時(shí),先在ROM讀取指令,然后對(duì)外部RAM進(jìn)行讀/寫(xiě)操作。第一機(jī)器周期時(shí),與其它指令一樣,第一次讀指令操作碼有效,第二次讀指令操作無(wú)效。第二周期時(shí),進(jìn)行外部RAM訪問(wèn),此時(shí)與ALE信號(hào)無(wú)關(guān),因此不產(chǎn)生讀指令操作。2.4.5 訪問(wèn)外部ROM和RAM的時(shí)序1.訪問(wèn)外部ROM的時(shí)序圖 訪問(wèn)外部ROM的時(shí)序 對(duì)外部程序存貯器的訪問(wèn)使用/PSEN作讀選通信號(hào),當(dāng)從外部程序存貯器讀取指令時(shí),

10、需要使用16位地址,且高8位地址從從P2口輸出,并且在整個(gè)機(jī)器周期內(nèi)保持不變。圖 訪問(wèn)外部RAM的時(shí)序2.訪問(wèn)外部RAM的時(shí)序DPH輸出/P2輸出2.5 80C51單片機(jī)的工作方式80C51單片機(jī)有復(fù)位、程序執(zhí)行、低功耗、編程和校驗(yàn)等幾種工作方式。復(fù)位方式 復(fù)位操作 復(fù)位是單片機(jī)的初始化操作,其主要功能是把PC初始化為0000H,使單片機(jī)從0000H單元開(kāi)始執(zhí)行程序。當(dāng)由于程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,可以按復(fù)位鍵以重新啟動(dòng),也可以通過(guò)WDT看門(mén)狗定時(shí)器來(lái)強(qiáng)迫復(fù)位WDT可在單片機(jī)系統(tǒng)受干擾使程序不能正常運(yùn)行時(shí),自動(dòng)產(chǎn)生復(fù)位信號(hào)。目前不少集成電路廠家已生產(chǎn)集成WDT芯片

11、,如DALLAS公司生產(chǎn)的DS1232芯片就是使用較多一種集成WDT。 。 除PC之外,復(fù)位操作還對(duì)其它一些特殊功能存放器有影響,它們的復(fù)位狀態(tài)見(jiàn)下表或見(jiàn)教材P34表 特殊功能存放器SFR的復(fù)位狀態(tài)特殊功能寄存器初始狀態(tài)特殊功能寄存器初始狀態(tài)ACC/A00HTMOD00HB00HTCON00HPSW00HTH000HSP07HTL000HDPL00HTH100HDPH00HTL100HP0P3FFHSBUFxxxxxxxxBIPxx0000000BSCON00HIE0 x000000BPCON0 xxx0000B 復(fù)位操作還對(duì)單片機(jī)的個(gè)別引腳信號(hào)有影響。例如在復(fù)位期間,ALE和/PSEN信號(hào)變

12、為無(wú)效狀態(tài),即 ALE=0, /PSEN =l。 復(fù)位信號(hào)及其產(chǎn)生 復(fù)位信號(hào) RST引腳是復(fù)位信號(hào)的輸入端。復(fù)位信號(hào)是高電平有效,其有效時(shí)間應(yīng)持續(xù)24個(gè)振蕩周期(即2個(gè)機(jī)器周期) 以上。 假設(shè)使用頻率為6MHz的晶振,那么復(fù)位信號(hào)應(yīng)持續(xù)4s以上。產(chǎn)生復(fù)位信號(hào)的電路邏輯圖如圖教材P34圖2.16)所示。 圖 復(fù)位電路邏輯圖 整個(gè)復(fù)位電路包括芯片內(nèi)、外兩局部。 外部電路產(chǎn)生的復(fù)位信號(hào)RST送施密特觸發(fā)器,再由片內(nèi)復(fù)位操作。有上電自動(dòng)復(fù)位、按鍵復(fù)位兩種方式,示于以下圖中或見(jiàn)教材P35圖2.17)。 上電自動(dòng)復(fù)位是通過(guò)外部復(fù)位電路的電容充電來(lái)實(shí)現(xiàn)的,見(jiàn)圖(a)所示。這樣只要電源的上升時(shí)間不超過(guò)1ms,

13、就可以實(shí)現(xiàn)上電自動(dòng)復(fù)位,即接通電源就完成了系統(tǒng)的復(fù)位初始化。 按鍵復(fù)位有電平方式和脈沖方式兩種。其中按鍵電平復(fù)位是通過(guò)使復(fù)位端經(jīng)電阻與Vcc電源接通而實(shí)現(xiàn)的,見(jiàn)圖(b)所示。而按鍵脈沖復(fù)位那么是利用RC微分電路產(chǎn)生的正脈沖來(lái)實(shí)現(xiàn)的,見(jiàn)圖(c)所示。 這里的電路圖中,電阻電容參數(shù)適用于6MHz晶振,能保證復(fù)位信號(hào)高電平持續(xù)時(shí)間大于2個(gè)機(jī)器周期。22F C1RST R11KVcc22F C1RSTVccR2200RSTR1 R21KVccC1 C222F 80C5180C5180C51(a)上電復(fù)位電路(c)按鍵脈沖復(fù)位電路(b)按鍵電平復(fù)位電路 R11K圖 幾種復(fù)位電路2.5.2 程序執(zhí)行方式

14、程序執(zhí)行方式是單片機(jī)的根本工作方式。由于復(fù)位后PC0000H,因此程序執(zhí)行總是從0000H開(kāi)始的。一般在0000H開(kāi)始的單元中存放一條無(wú)條件轉(zhuǎn)移指令,以便跳轉(zhuǎn)到實(shí)際主程序的入口去執(zhí)行。比方:ORG0000HSJMPMAIN;轉(zhuǎn)主程序2.5.3 低功耗工作方式 80C51有兩種低功耗方式,即待機(jī)/空閑IDLE方式和掉電Power down)保護(hù)方式。待機(jī)方式和掉電保護(hù)方式時(shí)涉及的硬件如以下圖所示。 待機(jī)方式和掉電保護(hù)方式都是由電源控制存放器PCON的有關(guān)位來(lái)控制的。 80C51掉電保護(hù)的一般做法是:先將有用數(shù)據(jù)轉(zhuǎn)存到內(nèi)部RAM中,然后接通備用電源供電見(jiàn)教材P34圖2.16,備用電源由單片機(jī)的RS

15、T/VPD接入,備用電源VPD與電源VCC的切換電路由D1和D2兩只二極管組成,當(dāng)電源電壓VCC 高于引腳RST/VPD 引腳的備用電源電壓時(shí),D1導(dǎo)通,D2截止,內(nèi)部RAM由VCC電源供電。而當(dāng)VCC電源降至備用電源電壓以下時(shí),那么D1截止,D2導(dǎo)通,內(nèi)部RAM由備用電源供電。此時(shí)單片機(jī)即進(jìn)入掉電保護(hù)方式。-掉電保護(hù)方式詳細(xì)說(shuō)明可參閱教材節(jié)。圖 80C51待機(jī)和掉電方式內(nèi)部結(jié)構(gòu)/PD/IDL 電源控制存放器PCON是一個(gè)逐位定義的8位存放器,其格式如下: 其中: SMOD:波特率倍增位,在串行通訊時(shí)使用。 GF1、GF0:通用標(biāo)志位1、0。 PD:掉電方位式,PD1,那么進(jìn)入掉電方式。由上圖

16、可知,此時(shí)時(shí)鐘凍結(jié)。 IDL:待機(jī)方式位,IDL1,那么進(jìn)入待機(jī)方式。這時(shí)CPU因無(wú)時(shí)鐘控制而停止運(yùn)作。 假設(shè)同時(shí)向PD和IDL兩位寫(xiě)1,那么PD優(yōu)先。 待機(jī)方式 使用指令使PCON存放器IDL位置1,那么80C51進(jìn)入待機(jī)方式。SMOD GF1 GF0 PD IDL由上面的80C51單片機(jī)低功耗方式的內(nèi)部結(jié)構(gòu)圖中可看出這時(shí)振蕩器仍然運(yùn)行,并向中斷邏輯、串行口和定時(shí)器/計(jì)數(shù)器電路提供時(shí)鐘,中斷功能繼續(xù)存在。 向CPU提供時(shí)鐘的電路被阻斷,因此CPU不能工作,與CPU有關(guān)的如SP、PC、PSW、ACC以及全部通用存放器都被凍結(jié)在原狀態(tài)。 可以采用中斷方式或硬件復(fù)位方法退出待機(jī)方式。 在待機(jī)方式下

17、,假設(shè)產(chǎn)生一個(gè)外部中斷請(qǐng)求信號(hào),在單片機(jī)響應(yīng)中斷的同時(shí),PCON.0位IDL位被硬件自動(dòng)清0, 單片機(jī)就退出待機(jī)方式而進(jìn)入正常工作方式。在中斷效勞程序中安排一條RETI指令,就可以使單片機(jī)恢復(fù)正常工作,從設(shè)置待機(jī)方式指令的下一條指令開(kāi)始繼續(xù)執(zhí)行程序。 PCON的兩個(gè)通用標(biāo)志位GF1和GF0,可用來(lái)指示中斷是在正常運(yùn)行期間,還是在待機(jī)方式期間發(fā)生的。如,待機(jī)方式的啟動(dòng)指令也可同時(shí)把其中一個(gè)或兩個(gè)通用標(biāo)志位置1,各中斷效勞程序根據(jù)對(duì)此二個(gè)標(biāo)志的檢查結(jié)果,就可判斷出中斷是在什么情況下發(fā)生的。 掉電保護(hù)方式(Power Down Mode)PCON存放器的PD位控制單片機(jī)進(jìn)入掉電保護(hù)方式。 當(dāng)80C5

18、1檢測(cè)到電源故障時(shí),除進(jìn)行信息保護(hù)外,還應(yīng)把PCON.1(PD)位置1,使之進(jìn)入掉電保護(hù)方式。此時(shí)單片機(jī)一切工作都停止,只有內(nèi)部RAM單元的內(nèi)容被保護(hù)。 只能依靠復(fù)位退出掉電保護(hù)方式。 80C51備用電源由RST/VPD端引入。當(dāng)Vcc恢復(fù)正常后,只要硬件復(fù)位信號(hào)維持10ms,就能使單片機(jī)退出掉電保護(hù)方式,CPU那么從進(jìn)入掉電方式的下一條指令開(kāi)始重新執(zhí)行程序。 在待機(jī)和掉電保護(hù)期間引腳的狀態(tài)見(jiàn)下表。表 待機(jī)和掉電保護(hù)方式時(shí)引腳狀態(tài) 由上表可知,80C51處于掉電方式時(shí),ALE和/PSEN引腳輸出均為低電平。這樣設(shè)計(jì)的目的主要是為了便于在掉電方式下撤消對(duì)片內(nèi)RAM以外電路的供電,從而進(jìn)一步降低功

19、耗。如果在執(zhí)行片內(nèi)程序時(shí)啟動(dòng)了掉電方式,那么各引腳將繼續(xù)輸出其相應(yīng)的SFR的內(nèi)容。即使80C51由片外程序進(jìn)入掉電方式,P1P2口也輸出其SFR的數(shù)據(jù),但P0口處于高阻狀態(tài)。 掉電方式下,Vcc供電可降至2V。 2.5.4編程方式*:選學(xué)內(nèi)容,不做考試要求 對(duì)于片內(nèi)具有EPROM型程序存儲(chǔ)器的87C51(87C52) 和片內(nèi)具有閃速存儲(chǔ)器的89C51 (89C52) 、78E51 (78E52) 等單片機(jī)可以通過(guò)編程來(lái)修改程序存儲(chǔ)器中的程序。 89C51內(nèi)部有一個(gè)4KB的Flash EEROM。編程接口可接收高電壓(12V) 或低電壓(Vcc) 的允許編程信號(hào)。低電壓編程方式可以很方便地與89

20、C51內(nèi)的用戶系統(tǒng)進(jìn)行編程;而高壓編程方式那么可與通用的EPROM編程器兼容。對(duì)于這二種編程方式的芯片面上的型號(hào)和片內(nèi)特征字節(jié)的內(nèi)容不同。 閃速存儲(chǔ)器編程方式 表A列出了89C51閃速存儲(chǔ)器的編程、校驗(yàn)、寫(xiě)鎖定位等時(shí)的邏輯電平。 表A 89C51閃速存儲(chǔ)器的編程方式注意: 根據(jù)特征字節(jié)(地址為032H) 的內(nèi)容選擇適宜的編程電壓(VPP=12V或5V) 片擦除操作時(shí),要求PROG的脈沖寬度為10ms。 閃速存儲(chǔ)器編程 在對(duì)89C51編程前,地址、數(shù)據(jù)、控制信號(hào)必須按表A和圖A設(shè)置。對(duì)89C51的編程的步驟如下:在地址線上輸入要編程存儲(chǔ)器單元地址。在數(shù)據(jù)線上輸入要寫(xiě)入的數(shù)據(jù)。按圖B的要求輸出編程

21、和校驗(yàn)的時(shí)序。對(duì)于高壓編程模式,將VPP升至12V。圖A 89C51的閃速存儲(chǔ)器編程和校驗(yàn)見(jiàn)表A見(jiàn)表A圖B 89C51的閃速存儲(chǔ)器的編程和校驗(yàn)每對(duì)Flash存儲(chǔ)陣列寫(xiě)入一個(gè)字節(jié)或每寫(xiě)入一個(gè)程序加密位,要向ALE/PROG輸出一個(gè)編程脈沖。改變地址和數(shù)據(jù),重復(fù)以上幾步操作,直至目標(biāo)程序(OBJ文件) 結(jié)束。 字節(jié)寫(xiě)周期是自動(dòng)定時(shí)的,一般不超過(guò)1.5ms 。 查詢(xún)數(shù)據(jù) 89C51可以通過(guò)數(shù)據(jù)查詢(xún)來(lái)檢測(cè)一個(gè)寫(xiě)周期是否結(jié)束。假設(shè)數(shù)據(jù)未寫(xiě)完,那么從P0.7引腳上讀到的是該數(shù)據(jù)的最高位的反碼。當(dāng)寫(xiě)周期結(jié)束后,讀出值即為寫(xiě)入值。 準(zhǔn)備好/忙(RDY/BSY) 信號(hào) 從圖B中可看出,編程期間ALE(/PROG

22、)為高電平后,P3.4引腳被拉成低電平,表示BUSY編程結(jié)束后,ALE(/PROG)為低電平,表示READY 。 編程校驗(yàn) 如果鎖定位LB1和LB2沒(méi)有被編程,代碼數(shù)據(jù)那么可讀回,用來(lái)校驗(yàn)。鎖定位不能直接被校驗(yàn),只能通過(guò)觀察它們的功能是否被允許而間接得到證實(shí)。 芯片擦除 通過(guò)正確的控制信號(hào)的組合,并保持ALE/PROG引腳脈沖寬度(低電平) 約10ms,那么可對(duì)EEPROM陣列和三個(gè)鎖定位進(jìn)行電擦除,擦除后代碼陣列全為1 。注意,在對(duì)程序存儲(chǔ)器進(jìn)行重新編程前必須執(zhí)行片擦除操作。 讀特征字節(jié) 89C51單片機(jī)內(nèi)有三個(gè)特征字節(jié),地址為030H、031H和032H,分別用來(lái)指示該器件的生產(chǎn)廠商、型號(hào)

23、和編程電壓。 比方: ( 030H)=1EH 表示ATMER公司生產(chǎn)。 (031H)=51H表示型號(hào)為89C51 =61H表示型號(hào)為89LV51 (032H)=FFH表示編程電壓為12V =05H表示編程電壓為5V 程序鎖定位的功能和編程 80C51片內(nèi)有三個(gè)鎖定位,但不含密碼陣列。其編程狀況和特點(diǎn)參見(jiàn)表B。當(dāng)?shù)谝患?jí)加密時(shí),邏輯電壓被取樣并鎖存。在復(fù)位期間,假設(shè)器件為上電而不是復(fù)位,那么鎖存器內(nèi)容初始化為一個(gè)隨機(jī)值,直到復(fù)位操作結(jié)束。 鎖定位的編程參照表B的邏輯電平進(jìn)行。表B 89C51程序鎖定位不同的編程狀態(tài)及其特點(diǎn)2.6 布爾位處理器 在80C51單片機(jī)中,與字節(jié)處理器相對(duì)應(yīng),還特別設(shè)置了

24、一個(gè)結(jié)構(gòu)完整、功能極強(qiáng)的布爾位處理器。位處理器在開(kāi)關(guān)決策、邏輯電路仿真和實(shí)時(shí)控制方面非常有效。 位處理器系統(tǒng)包括以下幾個(gè)功能部件: 位累加器:借用進(jìn)位標(biāo)志位CY/C。在布爾運(yùn)算中CY是數(shù)據(jù)源之一,又是運(yùn)算結(jié)果的存放處,位數(shù)據(jù)傳送的中心。根據(jù)CY的狀態(tài)實(shí)現(xiàn)程序條件轉(zhuǎn)移:JC rel、JNC rel、JBC rel位尋址的RAM:內(nèi)部RAM位尋址區(qū)中的0127位(20H2FH);位尋址的存放器:特殊功能存放器SFR中的可以位尋址的位。位尋址的I/O口:并行I/O口中的可以位尋址的位(如P1.0)。位操作指令:位操作指令可實(shí)現(xiàn)對(duì)位的置位、清0、取反、位狀態(tài)判跳、傳送、位邏輯運(yùn)算、位輸入/輸出等操作。

25、小結(jié) 本章主要介紹了80C51單片機(jī)的硬件結(jié)構(gòu)及特點(diǎn)。其主要內(nèi)容有:1、80C51單片機(jī)的邏輯結(jié)構(gòu)及信號(hào)引腳2、80C51單片機(jī)的存貯器3、80C51單片機(jī)并行I/O口P0P34、 80C51單片機(jī)的時(shí)鐘電路與時(shí)序5、80C51單片機(jī)的工作方式6、布爾處理器課外作業(yè)一:1. 堆棧指示器SP的作用是什么? 80C51單片機(jī)的堆棧的容量不能超過(guò)多少個(gè)字節(jié)?2. 什么是指令周期? 什么是機(jī)器周期? 80C51的一個(gè)機(jī)器周期包括多少時(shí)鐘周期?3. MOV P1, #0FFH應(yīng)當(dāng)理解為輸出全“1到P1口,還是理解為從P1口讀引腳輸入的預(yù)備動(dòng)作呢?4. 把累加器寫(xiě)成A與寫(xiě)成ACC有何不同? 問(wèn)題討論Q1:MOV P1, #0FFH應(yīng)當(dāng)理解為輸出全“1到P1口,還是理解為從P1口讀引腳輸入的預(yù)備動(dòng)作呢?Q2:把累加器寫(xiě)成A與寫(xiě)成ACC有何不同?Ans1:假設(shè)所接外設(shè)為單純輸出設(shè)備,那么理解為送出全“1信號(hào);假設(shè)所接外設(shè)為單純輸入設(shè)備,那么理解為讀并行口數(shù)據(jù)之前的預(yù)備動(dòng)作。Ans2:A和ACC雖指同一個(gè)存放器,但在指令中它們是有區(qū)別的。ACC在匯編后的機(jī)器指令中必有一個(gè)字節(jié)的操作數(shù)是ACC的字

溫馨提示

  • 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)論