![新編單片機(jī)原理與應(yīng)用(潘永雄)80C51內(nèi)核增強(qiáng)型單片機(jī)芯片_第1頁(yè)](http://file4.renrendoc.com/view/68c33df1a6dadc83e299ec0904ae9c85/68c33df1a6dadc83e299ec0904ae9c851.gif)
![新編單片機(jī)原理與應(yīng)用(潘永雄)80C51內(nèi)核增強(qiáng)型單片機(jī)芯片_第2頁(yè)](http://file4.renrendoc.com/view/68c33df1a6dadc83e299ec0904ae9c85/68c33df1a6dadc83e299ec0904ae9c852.gif)
![新編單片機(jī)原理與應(yīng)用(潘永雄)80C51內(nèi)核增強(qiáng)型單片機(jī)芯片_第3頁(yè)](http://file4.renrendoc.com/view/68c33df1a6dadc83e299ec0904ae9c85/68c33df1a6dadc83e299ec0904ae9c853.gif)
![新編單片機(jī)原理與應(yīng)用(潘永雄)80C51內(nèi)核增強(qiáng)型單片機(jī)芯片_第4頁(yè)](http://file4.renrendoc.com/view/68c33df1a6dadc83e299ec0904ae9c85/68c33df1a6dadc83e299ec0904ae9c854.gif)
![新編單片機(jī)原理與應(yīng)用(潘永雄)80C51內(nèi)核增強(qiáng)型單片機(jī)芯片_第5頁(yè)](http://file4.renrendoc.com/view/68c33df1a6dadc83e299ec0904ae9c85/68c33df1a6dadc83e299ec0904ae9c855.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第5章80C51內(nèi)核增強(qiáng)型單片機(jī)芯片5.189C51RX系列單片機(jī)概述5.2P89C51RX引腳功能5.3P89C51RX系列片內(nèi)存儲(chǔ)器結(jié)構(gòu)5.4可編程計(jì)數(shù)器陣列PCA及應(yīng)用5.589C51RX系列中斷控制系統(tǒng)5.6硬件看門狗5.7P89C6XX2系列*5.8P89C66X系列簡(jiǎn)介5.189C51RX系列單片機(jī)概述1.Philips公司第一代P89C51RXXH系列芯片1999年3月,Philips公司先后推出了以增強(qiáng)型MCS-51CPU作為內(nèi)核的新一代8位單片機(jī)芯片P89C51RC+H、P89C51RD+H、P89C51RA+H、P89C51RB+H、P89C51RA2H、P89C51RB2H、P89C51RC2H、P89C51RD2H等(統(tǒng)稱為第一代P89C51RX系列芯片,彼此之間只是片內(nèi)存儲(chǔ)器種類、容量以及編程電壓不同)。P89C51RX系列具有如下特點(diǎn):(1)采用增強(qiáng)型MCS-51內(nèi)核,硬件資源、封裝形式及引腳排列、指令系統(tǒng)與增強(qiáng)型80C51芯片保持100%兼容,即P89C51RX系列完全可以替換具有相同封裝形式的8XC5X、8XC5XX2系列芯片。(2)擴(kuò)充了片內(nèi)RAM存儲(chǔ)器容量,在89C51RX內(nèi)部,除了256字節(jié)的內(nèi)部RAM外,還集成了256~768字節(jié)的內(nèi)部擴(kuò)展RAM(簡(jiǎn)稱ERAM)。(3)集成了與Intel8XC51FX系列完全兼容的5模塊可編程計(jì)數(shù)器陣列PCA。(4)可以使用與MCS-51相同的每機(jī)器周期12個(gè)時(shí)鐘模式(在標(biāo)準(zhǔn)時(shí)鐘模式下,晶振頻率為0~33MHz),也可以采用每機(jī)器周期6時(shí)鐘模式(晶振頻率為0~20MHz,指令執(zhí)行時(shí)間快一倍)。(5)提供了硬件看門狗計(jì)數(shù)器WDT。(6)具有7個(gè)中斷源(4個(gè)中斷優(yōu)先級(jí))。2.Philips公司第二代P89C51RX系列芯片2002年5月,Philips公司推出了第二代P89C51RX系列芯片,主要特征是器件型號(hào)中沒(méi)有字母“H〞,與第一代P89C51RX系列芯片相比,做了如下改進(jìn):(1)第一代P89C51RX芯片時(shí)鐘模式配置位FX2的記錄載體為OTPROM,缺省時(shí)為6時(shí)鐘模式,可編程為12時(shí)鐘模式,但編程后不能再使用6時(shí)鐘模式;而第二代P89C51RX系列芯片時(shí)鐘模式配置位FX2的記錄載體為FlashROM,缺省時(shí)為12時(shí)鐘模式,可編程為6時(shí)鐘模式,可通過(guò)并行編程方式擦除,恢復(fù)為12時(shí)鐘模式。(2)增加了時(shí)鐘模式選擇特殊功能存放器CKCON。即當(dāng)FX2位處于擦除或未編程狀態(tài)(即FX2位為1)時(shí),可通過(guò)軟件修改CKCON的X2位選擇系統(tǒng)時(shí)鐘模式(但值得注意的是,位于FlashROM保密字節(jié)內(nèi)的系統(tǒng)時(shí)鐘配置位FX2比CKCON存放器內(nèi)的X2位優(yōu)先,即當(dāng)FX2位被編程后,X2位無(wú)效)。(3)當(dāng)CPU運(yùn)行在“6時(shí)鐘/機(jī)器周期〞狀態(tài)時(shí),可通過(guò)CKCON存放器選擇外設(shè)時(shí)鐘模式,如圖5-1所示。圖5-1CKCON存放器各位含義表5-1第二代P89C51RX系列芯片CPU和外設(shè)時(shí)鐘選擇關(guān)系
FX2位狀態(tài)(位于FlashROM保密字節(jié)內(nèi))X2位狀態(tài)(CKCON.0)外設(shè)時(shí)鐘控制位(CKCON.6~CKCON.1)CPU時(shí)鐘外設(shè)時(shí)鐘擦除(未編程)0(默認(rèn))X12時(shí)鐘12時(shí)鐘擦除(未編程)106時(shí)鐘6時(shí)鐘擦除(未編程)116時(shí)鐘12時(shí)鐘編程X(無(wú)效)06時(shí)鐘6時(shí)鐘編程X(無(wú)效)16時(shí)鐘12時(shí)鐘表5-2P89C51RX系列常見(jiàn)型號(hào)
型號(hào)片內(nèi)程序存儲(chǔ)器(FlashROM)片內(nèi)RAM容量缺省時(shí)鐘模式可選時(shí)鐘最高工作頻率內(nèi)部RAM內(nèi)部擴(kuò)展RAM6時(shí)鐘12時(shí)鐘P89C51RD2XX64K256B768B12620MHz33MHz
P89C51RC2XX32K256B256B12620MHz33MHz
P89C51RB2XX16K256B256B12620MHz33MHz
P89C51RA2XX8K256B256B12620MHz33MHz3.Atmel公司T89C51RX系統(tǒng)芯片Atmel公司也于2000年前后推出以FlashROM作為片內(nèi)程序存儲(chǔ)器的T89C51RX系列芯片、以O(shè)TPROM作為片內(nèi)程序存儲(chǔ)器的TS87C51RX系列芯片。T89C51RX芯片硬件資源、引腳排列與P89C51RX系列保持100%,但資源比P89C51RX系列多,主要表達(dá)在:(1)片內(nèi)集成了2KB、可擦寫10萬(wàn)次的E2PROM存儲(chǔ)器,方便了系統(tǒng)運(yùn)行參數(shù)的保存。(2)在PLCC68封裝、VQFP64封裝的T89C51RX芯片品種中,增加了P4、P5兩個(gè)8位I/O口,即I/O引腳數(shù)目為48根〔6口×8位〕。(3)工作電壓范圍寬。P89C51RX系列電源電壓為5.0V±10%,而T89C51RX系列電源電壓為3.0~5.5V;對(duì)低電壓版本,電源電壓為2.7~3.6V。(4)改進(jìn)了X2時(shí)鐘模式,即在6時(shí)鐘/機(jī)器周期狀態(tài)下,可以選擇每一外設(shè)的時(shí)鐘頻率。即T89C51RX系列芯片內(nèi)CKCON存放器各位含義與Philips第二代P89C51RX系列芯片相同。(5)可以改變外部RAM讀選通、寫選通脈沖寬度。缺省狀態(tài)下,讀選通、寫選通脈沖寬度為6時(shí)鐘周期,但在T89C51RX中,可以選擇30時(shí)鐘周期,以便讀寫存取速度慢的RAM存儲(chǔ)器。5.2P89C51RX引腳功能圖5-2P89C51RX系列芯片封裝形式及引腳排列(a)?DIP封裝;(b)?LQFP封裝;(c)?LCC封裝圖5-2P89C51RX系列芯片封裝形式及引腳排列(a)?DIP封裝;(b)?LQFP封裝;(c)?LCC封裝5.3P89C51RX系列片內(nèi)存儲(chǔ)器結(jié)構(gòu)表5-389C51RX系列特殊功能存放器表5-389C51RX系列特殊功能存放器表5-389C51RX系列特殊功能存放器表5-389C51RX系列特殊功能存放器5.3.1片內(nèi)程序存儲(chǔ)器89C51RX系列采用FlashROM作為片內(nèi)程序存儲(chǔ)器,容量從8~64KB,無(wú)須通過(guò)EPROM、FlashROM芯片擴(kuò)展外部程序存儲(chǔ)器,因此引腳一般通過(guò)2.0kΩ電阻接高電平??梢栽谕ㄓ镁幊唐魃蠈?duì)89C51RX系列芯片編程,也可以用ISP、IAP方式進(jìn)行編程。5.3.2片內(nèi)數(shù)據(jù)存儲(chǔ)器圖5-389C51RX/87C51RX存儲(chǔ)器結(jié)構(gòu)256字節(jié)內(nèi)部RAM、外部RAM讀寫方法與增強(qiáng)型MCS-51相同;內(nèi)部擴(kuò)展RAM地址空間與外部RAM地址空間重疊,也是通過(guò)MOVX指令讀寫。為了區(qū)別MOVX指令的讀寫對(duì)象——內(nèi)部擴(kuò)展RAM或外部RAM,89C51RX系列輔助功能存放器AUXR中增加了EXTRAM選擇位。EXTRAM為0,MOVX指令讀寫對(duì)象為內(nèi)部擴(kuò)展RAM;EXTRAM為1,MOVX指令讀寫對(duì)象為外部RAM。由于復(fù)位時(shí),AUXR存放器內(nèi)容為xxxxxx00B,因此復(fù)位后,MOVX指令讀寫對(duì)象為內(nèi)部擴(kuò)展RAM。當(dāng)需要讀寫外部RAM時(shí),須通過(guò)如下指令,將EXTRAM位置1。ORAUXR,#00000010B ;由于AUXR存放器不具有位尋址 功能,只能通過(guò)或指令將指 ;定位置1MOVDPTR,#XXXX ;外部RAM地址送DPTRMOVXA,@DPTR ;讀外部RAM單元內(nèi)容【例5.1】編寫一段程序,將外部RAM中2000H~200FH單元內(nèi)容送內(nèi)部擴(kuò)展RAM的0000~000FH單元。參考程序如下:MOVDPTR,#2000H ;外部RAM單元首地址送DPTRMOVR7,#10H ;傳送字節(jié)數(shù)送R7INCAUXR1 ;切換數(shù)據(jù)指針MOVDPTR,#0000H ;將內(nèi)部擴(kuò)展RAM首地址送另一數(shù)據(jù)指針NEXT:INCAUXR1 ;切換數(shù)據(jù)指針,使DPTR指向外部單元ORAUXR,#00000010BMOVXA,@DPTR ;讀外部RAM單元內(nèi)容到AccINCDPTR ;指向外部RAM下一單元INCAUXR1 ;切換數(shù)據(jù)指針,使DPTR指向內(nèi)部擴(kuò)展RAMANLAUXR,#11111101B ;將EXTRAM位為0,使MOVX指令讀寫對(duì)象 為ERAMMOVX@DPTR,A ;數(shù)據(jù)送內(nèi)部擴(kuò)展RAMINCDPTR ;指向內(nèi)部擴(kuò)展RAM下一單元DJNZR7,NEXT ;?R7不為0時(shí)循環(huán)5.4可編程計(jì)數(shù)器陣列PCA及應(yīng)用圖5-4可編程計(jì)數(shù)器陣列PCA5.4.1PCA結(jié)構(gòu)及控制圖5-5PCA計(jì)數(shù)器及控制圖5-6PCA中斷控制邏輯1.?PCA模式存放器CMODPCA模式存放器CMOD各位含義如下:CIDLWDTE___CPS1CPS0ECFCMOD(OD9H)B7b6b5b4b3b2b1b0(1)?CPS1、CPS0——用于選擇PCA計(jì)數(shù)器計(jì)數(shù)脈沖來(lái)源。PCA內(nèi)五個(gè)模塊共用一個(gè)16位加法計(jì)數(shù)器〔CH和CL〕,計(jì)數(shù)脈沖來(lái)源由CMOD存放器的CPS1、CPS0位決定:CPS1、CPS0 計(jì)數(shù)脈沖源00 內(nèi)部時(shí)鐘信號(hào)fosc/6〔6時(shí)鐘模式〕或fosc/12〔12時(shí)鐘模式〕01 內(nèi)部時(shí)鐘信號(hào)fosc/2〔6時(shí)鐘模式〕或fosc/4〔12時(shí)鐘模式〕10 定時(shí)器T0的溢出脈沖11 來(lái)自ECI/P1.2引腳的外部脈沖(在6時(shí)鐘模式下,外部脈沖最高頻率為fosc/4;在12時(shí)鐘模式下,外部脈沖最高頻率為 fosc/8)(2)?ECF——PCA計(jì)數(shù)器CH/CL溢出中斷允許。當(dāng)PCA計(jì)數(shù)器溢出時(shí),PCA控制存放器CCON的溢出標(biāo)志CF有效。如果ECF=1,且中斷允許存放器IE的EC、EA位為1,那么CPU將響應(yīng)PCA計(jì)數(shù)器溢出中斷。(3)?CIDL——節(jié)電狀態(tài)下PCA運(yùn)行控制。當(dāng)CIDL=0時(shí),在節(jié)電狀態(tài)下,PCA計(jì)數(shù)器繼續(xù)計(jì)數(shù)〔圖5-5中的與非門輸出恒為1,與PCON存放器節(jié)電運(yùn)行控制位IDL內(nèi)容無(wú)關(guān)〕;反之,當(dāng)CIDL=1時(shí),在節(jié)電狀態(tài)下,PCA計(jì)數(shù)器停止計(jì)數(shù)〔由于CIDL位為1,圖5-5中與非門輸出狀態(tài)由PCON存放器節(jié)電運(yùn)行控制位IDL決定,當(dāng)IDL位為1時(shí),與非門輸出為0,PCA計(jì)數(shù)器停止計(jì)數(shù)〕。(4)?WDTE——禁止/允許模塊4看門狗工作。2.?PCA計(jì)數(shù)器〔CH和CL〕16位加法計(jì)數(shù)器,計(jì)數(shù)脈沖由CMOD存放器的CPS1、CPS0位定義,每來(lái)一個(gè)脈沖,計(jì)數(shù)器加1,當(dāng)CH溢出時(shí),CCON存放器內(nèi)的溢出標(biāo)志CF置位。3.PCA控制存放器CCONCFCR_CCF4CCF3CCF2CCF1CCF0CCOD(OD8H)B7b6b5b4b3b2b1b0(1)?CCF4~CCF0——分別是模塊4~模塊0的中斷標(biāo)志位。當(dāng)產(chǎn)生匹配〔比較〕或捕捉時(shí)由硬件置1。但CPU響應(yīng)PCA中斷請(qǐng)求后,不能自動(dòng)去除,需要軟件清零。(2)?CR——PCA計(jì)數(shù)器啟動(dòng)控制位。在正常狀態(tài)下,CR=1時(shí),計(jì)數(shù)脈沖開(kāi)關(guān)閉合,每來(lái)一個(gè)計(jì)數(shù)脈沖,計(jì)數(shù)器加1;當(dāng)CR=0時(shí),PCA計(jì)數(shù)器停止計(jì)數(shù)。(3)?CF——PCA計(jì)數(shù)器溢出標(biāo)志。當(dāng)PCA計(jì)數(shù)器溢出時(shí),CF自動(dòng)置1〔不自動(dòng)去除,需要軟件清零〕。4.模塊比較/捕捉存放器〔CCAPnH和CCAPnL〕和模塊模式存放器CCAPMn每一模塊對(duì)應(yīng)一個(gè)16位比較/捕捉存放器〔即高8位CCAPnH和低8位CCAPnL〕、模塊工作方式存放器CCAPMn。每一模塊的工作方式由對(duì)應(yīng)模塊的工作方式存放器CCAPMn決定,如模塊0的工作方式由模塊0的工作方式存放器CCAPM0決定、模塊1的工作方式由模塊1的工作方式存放器CCAPM1決定,依此類推,模塊4的工作方式由模塊4的工作方式存放器CCAPM4決定。模塊工作方式存放器CCAPM0~CCAPM4結(jié)構(gòu)、各位含義相同,如下所示:_ECOMnCAPPnCAPNnMATnTCGnPWMnECCFnB7b6b5b4b3b2b1b0CCAPM0(0DAH)CCAPM1(0DBH)CCAPM2(0DCH)CCAPM3(0DDH)CCAPM4(0DEH)其中:ECOMn——比較器允許/禁止位。CAPPn——上升沿捕捉允許/禁止位。CAPNn——下降沿捕捉允許/禁止位。MATn——匹配允許/禁止位。如果MATn=1,那么當(dāng)PCA計(jì)數(shù)器當(dāng)前值與對(duì)應(yīng)模塊的比較/捕捉存放器相同時(shí),將CCON存放器中對(duì)應(yīng)中斷標(biāo)志位置1。TOGn——觸發(fā)輸出允許/禁止位。如果TOGn=1,那么當(dāng)PCA計(jì)數(shù)器當(dāng)前值與對(duì)應(yīng)模塊的比較/捕捉存放器相同時(shí),觸發(fā)相應(yīng)模塊的CEX引腳翻轉(zhuǎn)。PWMn——脈沖寬度調(diào)制允許/禁止位。ECCFn——允許/禁止CCF中斷。表5-4PCA模塊工作方式
CCAPMn(n=0~4)寄存器位模塊工作方式-ECOMnCAPPnCAPNnMATnTOGnPWMnECCFn×0000000無(wú)××10000×16位捕捉(CEXn引腳上升沿觸發(fā))××01000×16位捕捉(CEXn引腳下降沿觸發(fā))××1100×16位捕捉(CEXn引腳上、下沿觸發(fā))×100100×16位軟件定時(shí)器×100110×16位高速輸出×10000108位PWM輸出×1001×0×看門狗定時(shí)器(模塊4)5.4.2PCA模塊初始化步驟PCA模塊初始化步驟包括:(1)初始化PCA的模式存放器CMOD,選擇PCA計(jì)數(shù)脈沖源、允許/禁止節(jié)電模式下PCA計(jì)數(shù)器計(jì)數(shù)、禁止/允許PCA計(jì)數(shù)器溢出中斷。(2)計(jì)數(shù)初值送CH/CL,完成PCA計(jì)數(shù)器CH/CL的初始化。(3)初始化相應(yīng)模塊工作方式存放器CCAPMn,選擇所需的工作模式。(4)初始化相應(yīng)模塊的比較/捕捉存放器(CCAPnL、CCAPnH)。(5)啟動(dòng)PCA計(jì)數(shù)器(即執(zhí)行“SETBCR〞命令,將CCON存放器的CR位置1,使PCA計(jì)數(shù)器計(jì)數(shù))。5.4.3PCA模塊工作模式圖5-7捕捉模式對(duì)于下降沿捕捉來(lái)說(shuō),當(dāng)CEXn引腳出現(xiàn)高電平到低電平變化時(shí),將就PCA計(jì)數(shù)器(CH、CL)的當(dāng)前值分別寫入(即捕捉)模塊的比較/捕捉存放器(CCAPnH、CCAPnL)中;對(duì)于上升沿捕捉來(lái)說(shuō),當(dāng)CEXn引腳出現(xiàn)低電平到高電平變化時(shí),將PCA計(jì)數(shù)器(CH、CL)的當(dāng)前值捕捉到相應(yīng)模塊的比較/捕捉存放器(CCAPnH、CCAPnL)中。在發(fā)生捕捉時(shí),CCON存放器對(duì)應(yīng)的中斷標(biāo)志位CCF自動(dòng)置1,如果相應(yīng)的CCAPMn存放器的ECCF位為1,將產(chǎn)生PCA中斷請(qǐng)求。對(duì)于捕捉方式來(lái)說(shuō),可以使用CEXn引腳的下沿觸發(fā),也可以使用上沿觸發(fā),或上沿、下沿均觸發(fā)(雙觸發(fā))。捕捉模式常用于測(cè)量CEXn引腳上的脈沖周期、兩信號(hào)相位差等。2.軟件定時(shí)器當(dāng)PCA模式存放器CMOD的WDTE位為0;而模塊模式CCAPMn存放器的MAT位為1(否那么匹配時(shí)相應(yīng)CCFn位不置1,無(wú)法通過(guò)查詢或中斷方式確定定時(shí)時(shí)間到),其他位為0時(shí),相應(yīng)PCA模塊工作于定時(shí)器狀態(tài),定時(shí)時(shí)間由CH/CL初值、模塊比較/捕捉存放器CCAPnH、CCAPnL決定,如圖5-8所示。完成比較/捕捉存放器高8位CCAPnH裝入后,ECOM位為1,比較處于允許狀態(tài)。當(dāng)PCA計(jì)數(shù)器等于模塊比較/捕捉存放器(即發(fā)生匹配)時(shí),CCON存放器相應(yīng)標(biāo)志位CCFn有效,如果ECCFn位為1,將產(chǎn)生PCA中斷請(qǐng)求。圖5-8PCA軟件定時(shí)器模式3.高速輸出模式圖5-9高速輸出模式4.8位PWM輸出圖5-108位PWM輸出方式圖5-11各模塊輸出的PWM脈沖波形【例5.2】假設(shè)時(shí)鐘頻率為16MHz,在6時(shí)鐘/機(jī)器周期模式下,利用PCA的PWM輸出模式產(chǎn)生如圖5-12所示半橋式脈沖寬度調(diào)制變換器開(kāi)關(guān)電源所需鼓勵(lì)信號(hào)。圖5-12半橋式開(kāi)關(guān)電源鼓勵(lì)信號(hào)圖5-13利用89C51RX脈寬調(diào)制獲得的半橋式開(kāi)關(guān)電源鼓勵(lì)信號(hào)參考程序如下:;PCA初始化MOVCMOD,#00000010B ;?CIDL=0,節(jié)電狀態(tài)下停止 PCA計(jì)數(shù);計(jì)數(shù)脈沖頻率fOSC/2, ;即8MHz;禁止PCA溢出中斷。PWM周 期為256*0.125μs, ;即32μs,頻率為31.25kHz MOVCH,#00H MOVCL,#00H MOVCCAP0L,#50H ;假設(shè)正常情況下,T2=10μs,即初值為80MOVCCAP0H,#50HMOVCCAP1L,#30H ;假設(shè)正常情況下,T1=6μs,即初值為48MOVCCAP1H,#30HMOVCCAP2L,#80H ;模塊2輸出方波,初值固定為128MOVCCAP2H,#80HMOVCCAPM0,#42H ;?PCA模塊0工作于PWM模式MOVCCAPM1,#42H ;?PCA模塊1工作于PWM模式MOVCCAPM2,#42H ;?PCA模塊2工作于PWM模式SETBCR ;啟動(dòng)PCA計(jì)數(shù)器5.看門狗模式圖5-14PCA看門狗方式通過(guò)如下指令初始化PCA模塊4,使其工作于看門狗模式:MOVCCAPM4,#00001000B ;模塊4模式存放器CCAPM4的 MAT位為1MOVCCAP4L,#0FFH ;先初始化模塊4比較存放器低8位MOVCCAP4H,#0FFH ;初始化模塊4比較存放器高8位, 同時(shí)自動(dòng)將CCAPM4的 ;?ECOM位置1,允許比較ORLCMOD,#40H ;將CMOD的WDTE位置1,允許看 門狗工作下面是在主程序中重寫模塊4捕捉/比較存放器CCAP4H、CCAP4L以防止PCA看門狗復(fù)位的子程序。PCAWDT:CLREA ;先禁止中斷,防止重寫模塊4捕捉/比較 存放器時(shí)產(chǎn)生中斷MOVCCAP4L,#00H ;把00H寫入CCPA4LMOVCCAP4H,CH ;把PCA計(jì)數(shù)器當(dāng)前值高位CH寫入CCAP4HSETBEA ;開(kāi)中斷RET ;返回由于PCA計(jì)數(shù)器不停,主程序調(diào)用該子程序后,PCA計(jì)數(shù)器一定略大于模塊4的捕捉/比較存放器,因此只要主程序以略小于PCA溢出周期調(diào)用該子程序就能防止PCA看門狗觸發(fā)CPU復(fù)位。但必須注意的是:不能在定時(shí)器中斷效勞程序內(nèi)調(diào)用上面的子程序,因?yàn)榧词褂捎跓釠_擊、干擾等原因引起PC“走飛〞,造成系統(tǒng)癱瘓后,仍可能響應(yīng)定時(shí)中斷,使PCA看門狗不能觸發(fā)復(fù)位操作,恢復(fù)系統(tǒng)運(yùn)行。5.589C51RX系列中斷控制系統(tǒng)在同優(yōu)先級(jí)中斷中,硬件查詢順序如下:中斷源 入口地址外中斷 0003H定時(shí)器T0溢出中斷 000BH外中斷 0013H定時(shí)器T1溢出中斷 001BHPCA計(jì)數(shù)器中斷 0033H串行口中斷 0023H定時(shí)器T2中斷 002BH圖5-1589C51RX中斷控制存放器IE及優(yōu)先級(jí)IPH、IP(a)?89C51RX中斷控制存放器IE;(b)?89C51RX中斷優(yōu)先級(jí)IP;(c)?89C51RX中斷優(yōu)先級(jí)高位IPH圖5-1589C51RX中斷控制存放器IE及優(yōu)先級(jí)IPH、IP(a)?89C51RX中斷控制存放器IE;(b)?89C51RX中斷優(yōu)先級(jí)IP;(c)?89C51RX中斷優(yōu)先級(jí)高位IPH圖5-1589C51RX中斷控制存放器IE及優(yōu)先級(jí)IPH、IP(a)?89C51RX中斷控制存放器IE;(b)?89C51RX中斷優(yōu)先級(jí)IP;(c)?89C51RX中斷優(yōu)先級(jí)高位IPH5.6硬件看門狗89C51RX具有“一次使能帶有復(fù)位輸出〞的硬件看門狗定時(shí)器〔簡(jiǎn)稱WDT〕電路,它主要由一個(gè)14位的看門狗計(jì)數(shù)器WDT和看門狗定時(shí)器復(fù)位存放器WDTRST組成。其中WDT計(jì)數(shù)器既不能讀,也不能寫,啟動(dòng)后每個(gè)機(jī)器周期WDT加1〔WDT啟動(dòng)后,除復(fù)位外,沒(méi)有其他方法使WDT停止計(jì)數(shù)〕。當(dāng)WDT計(jì)數(shù)器溢出時(shí),強(qiáng)迫CPU進(jìn)入復(fù)位狀態(tài),同時(shí)在RST引腳上輸出一個(gè)高電平的復(fù)位脈沖,使系統(tǒng)內(nèi)與CPU復(fù)位引腳RST相連的其他外圍芯片,如8255、8155等復(fù)位。在“6時(shí)鐘/機(jī)器周期〞模式下,RST引腳上的高電平復(fù)位脈沖持續(xù)時(shí)間為98個(gè)時(shí)鐘周期;而在12時(shí)鐘模式下,高電平復(fù)位脈沖持續(xù)時(shí)間為2×98,即196個(gè)時(shí)鐘周期,以保證外圍電路芯片可靠復(fù)位。為防止正常操作時(shí),WDT計(jì)數(shù)器溢出,造成系統(tǒng)復(fù)位,必須在小于214?(16384)?個(gè)機(jī)器周期內(nèi)(如果系統(tǒng)時(shí)鐘頻率為12MHz,對(duì)于12時(shí)鐘/機(jī)器周期模式來(lái)說(shuō),機(jī)器周期為1μs,16384個(gè)機(jī)器周期就是16.386ms)?對(duì)看門狗復(fù)位存放器WDTRST?(字節(jié)地址為0A6H)?順序?qū)懭?EH和0E1H,強(qiáng)迫看門狗計(jì)數(shù)器WDT復(fù)位(這是防止看門狗計(jì)數(shù)器WDT溢出的惟一方法)??赏ㄟ^(guò)如下方法啟動(dòng)和強(qiáng)迫看門狗計(jì)數(shù)器復(fù)位并重新計(jì)數(shù):MOVWDTRST,#1EH ;寫入立即數(shù)1EHMOVWDTRST,#0E1H ;寫入立即數(shù)0E1H,啟動(dòng)WDT功能然后,在程序中適當(dāng)位置插入這兩條指令,強(qiáng)迫WDT復(fù)位并重新計(jì)數(shù),防止溢出。當(dāng)PC走飛時(shí),將不能按時(shí)執(zhí)行上述兩條指令,經(jīng)過(guò)16384個(gè)機(jī)器周期后,WDT計(jì)數(shù)器溢出,強(qiáng)迫CPU及其他可編程芯片復(fù)位,重新執(zhí)行程序,恢復(fù)系統(tǒng)的運(yùn)行。盡管在走飛到WDT溢出前、復(fù)位操作期間以及復(fù)位后執(zhí)行系統(tǒng)初始化命令時(shí),系統(tǒng)處于非正常工作狀態(tài),但時(shí)間不長(zhǎng),在許多應(yīng)用系統(tǒng),如各種監(jiān)控設(shè)備中是允許的。由于在掉電模式下,系統(tǒng)時(shí)鐘停止輸出,因此WDT計(jì)數(shù)器也停止計(jì)數(shù),不會(huì)產(chǎn)生匹配。對(duì)于采用增強(qiáng)型MCS-51內(nèi)核芯片來(lái)說(shuō),硬件復(fù)位或外中斷均能使CPU退出掉電狀態(tài)。當(dāng)通過(guò)復(fù)位方式退出掉電狀態(tài)時(shí),無(wú)須考慮WDT溢出,原因是復(fù)位后WDT也被復(fù)位。但對(duì)于通過(guò)外中斷退出掉電狀態(tài)來(lái)說(shuō),必須保證退出掉電狀態(tài)后的幾個(gè)機(jī)器周期內(nèi)WDT不會(huì)溢出,而觸發(fā)CPU復(fù)位。為此,可在進(jìn)入掉電狀態(tài)前和掉電中斷效勞程序中執(zhí)行上述兩條指令,強(qiáng)迫WDT復(fù)位并重新計(jì)數(shù),這樣至少要經(jīng)過(guò)16384個(gè)機(jī)器周期后,WDT才溢出,以便CPU有足夠時(shí)間執(zhí)行掉電中斷效勞程序。如:……MOVWDTRST,#1EH ;寫入立即數(shù)1EHMOVWDTRST,#0E1H ;寫入立即數(shù)0E1H,強(qiáng)迫WDT重新計(jì)數(shù)ORLPCON,#02H ;使PCON存放器的PD位為1,強(qiáng)迫機(jī)器 進(jìn)入掉電狀態(tài)由于在節(jié)電狀態(tài)下,系統(tǒng)時(shí)鐘電路仍在工作,即WDT計(jì)數(shù)器仍在計(jì)數(shù),為防止WDT溢出復(fù)位CPU,在進(jìn)入節(jié)電模式前除了執(zhí)行寫WDTRST存放器外,還需啟動(dòng)一個(gè)定時(shí)器(定時(shí)時(shí)間小于16384個(gè)機(jī)器周期),在定時(shí)器中斷效勞程序中執(zhí)行寫WDTRST存放器命令,使WDT計(jì)數(shù)器復(fù)位,然后再進(jìn)入節(jié)電狀態(tài),例如:…… MOVWDTRST,#1EH ;寫入立即數(shù)1EHMOVWDTRST,#0E1H ;寫入立即數(shù)0E1H,強(qiáng)迫WDT重新計(jì)數(shù)MOVA,TMODORLA,#01H ;這里用定時(shí)器T0作為節(jié)電狀態(tài)下重寫 WDTRST存放器的定時(shí)器,;工作在方式 1,軟件啟動(dòng)MOVTLO,#80HMOVTHO,#0C1H ;假設(shè)晶振頻率為12MHz,在12時(shí)鐘模式 下,為保險(xiǎn)起見(jiàn)將定時(shí)器 ;?T0溢出時(shí)間設(shè)為16.0ms,因此對(duì)應(yīng)的 初值為0C180HSETBET0 ;允許定時(shí)器T0中斷SETBEA ;開(kāi)中斷SETBTR0 ;啟動(dòng)定時(shí)器T0ORLPCON,#01H ;將PCON存放器IDL位置1,使CPU進(jìn)入 節(jié)電狀態(tài)定時(shí)器T0中斷效勞程序:TIME0:PUSHPSWMOVTLO,#80HMOVTHO,#0C1H ;重裝初值MOVWDTRST,#1EH ;寫入立即數(shù)1EHMOVWDTRST,#0E1H ;寫入立即數(shù)0E1H,強(qiáng)迫WDT復(fù)位并重 新計(jì)數(shù)ORLPCON,#01H ;將PCON存放器IDL位置1,使CPU再進(jìn) 入節(jié)電狀態(tài)POPPSWRETI但必須在其他中斷效勞程序中關(guān)閉節(jié)電重寫WDTRST存放器的定時(shí)器T0,防止正常運(yùn)行狀態(tài)下響應(yīng)T0中斷造成WDT失效。有時(shí)16384個(gè)機(jī)器周期顯得太短,為此Atmel公司的T89C51RX系列、TS87C51RX系列芯片硬件看門狗電路增加了看門狗計(jì)數(shù)長(zhǎng)度選擇存放器WDTPRG,使WDT計(jì)數(shù)器長(zhǎng)度最大為21位,經(jīng)過(guò)221,即2?097?152個(gè)機(jī)器周期后才溢出。表5-5WDTPRG存放器各位含義〔字節(jié)地址為0A7H,復(fù)位后初 值為XXXXX000B〕-----S2S1S0WDT計(jì)數(shù)器長(zhǎng)度為14位,溢出時(shí)間為16384機(jī)器周期000WDT計(jì)數(shù)器長(zhǎng)度為15位,溢出時(shí)間為32768機(jī)器周期001WDT計(jì)數(shù)器長(zhǎng)度為16位,溢出時(shí)間為65536機(jī)器周期010WDT計(jì)數(shù)器長(zhǎng)度為17位,溢出時(shí)間為131072機(jī)器周期011WDT計(jì)數(shù)器長(zhǎng)度為18位,溢出時(shí)間為262144機(jī)器周期100WDT計(jì)數(shù)器長(zhǎng)度為19位,溢出時(shí)間為524288機(jī)器周期101WDT計(jì)數(shù)器長(zhǎng)度為20位,溢出時(shí)間為1048576機(jī)器周期110WDT計(jì)數(shù)器長(zhǎng)度為21位,溢出時(shí)間為2097152機(jī)器周期1115.7P89C6XX2系列2002年4月,Philips公司推出了P89C6XX2系列芯片,該系列芯片實(shí)際上是P89C51RX芯片的簡(jiǎn)化版,功能介于P89C5XX2系列和P89C51RX系列之間。與P89C51RX系列相比,
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年全球及中國(guó)半導(dǎo)體用水溶性助焊劑行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025年全球及中國(guó)第一人稱視角射擊游戲行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025年全球及中國(guó)HDPE模制容器行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025年全球及中國(guó)茂金屬線型低密度聚乙烯樹(shù)脂行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 合同起草范本
- 汽車自駕租賃合同
- 房屋委托代管合同
- 2025贈(zèng)與合同公證書
- 維修工聘用合同范本
- 收獲成長(zhǎng)迎接新起點(diǎn)主題班會(huì)
- 2024年江西省南昌市南昌縣中考一模數(shù)學(xué)試題(含解析)
- 繪本的分鏡設(shè)計(jì)-分鏡的編排
- 查干淖爾一號(hào)井環(huán)評(píng)
- 體檢中心分析報(bào)告
- 人教版初中英語(yǔ)七八九全部單詞(打印版)
- 臺(tái)球運(yùn)動(dòng)中的理論力學(xué)
- 最高人民法院婚姻法司法解釋(二)的理解與適用
- 關(guān)于醫(yī)保應(yīng)急預(yù)案
- 新人教版五年級(jí)上冊(cè)數(shù)學(xué)應(yīng)用題大全doc
- 2022年版義務(wù)教育勞動(dòng)課程標(biāo)準(zhǔn)學(xué)習(xí)培訓(xùn)解讀課件筆記
- 2022年中國(guó)止血材料行業(yè)概覽:發(fā)展現(xiàn)狀對(duì)比分析研究報(bào)告(摘要版) -頭豹
評(píng)論
0/150
提交評(píng)論