版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第第4 4章中斷、定時(shí)章中斷、定時(shí)/ /計(jì)數(shù)器與串行口計(jì)數(shù)器與串行口u教學(xué)提示教學(xué)提示:5151子系列單片機(jī)應(yīng)用廣泛的一個(gè)重要原因是它子系列單片機(jī)應(yīng)用廣泛的一個(gè)重要原因是它在一個(gè)芯片里集成了應(yīng)用系統(tǒng)所需的大部分在一個(gè)芯片里集成了應(yīng)用系統(tǒng)所需的大部分( (或所有或所有) )硬件功能,硬件功能,本章敘述的是完成這些硬件功能的內(nèi)部標(biāo)準(zhǔn)功能單元,構(gòu)成了本章敘述的是完成這些硬件功能的內(nèi)部標(biāo)準(zhǔn)功能單元,構(gòu)成了5151子系列單片機(jī)的核心體系結(jié)構(gòu)。子系列單片機(jī)的核心體系結(jié)構(gòu)。u教學(xué)要求教學(xué)要求:本章讓學(xué)生掌握內(nèi)部標(biāo)準(zhǔn)功能單元中斷系統(tǒng)、本章讓學(xué)生掌握內(nèi)部標(biāo)準(zhǔn)功能單元中斷系統(tǒng)、定時(shí)定時(shí)/計(jì)數(shù)器和串行通信接口的邏輯
2、結(jié)構(gòu)、功能和應(yīng)用設(shè)計(jì)方法。計(jì)數(shù)器和串行通信接口的邏輯結(jié)構(gòu)、功能和應(yīng)用設(shè)計(jì)方法。 4.1 MCS-51的中斷系統(tǒng)的中斷系統(tǒng) 4.2 MCS-51的定時(shí)的定時(shí)/計(jì)數(shù)器計(jì)數(shù)器 4.3 MCS-51的串行接口的串行接口 4.5本章小結(jié)本章小結(jié)內(nèi)容提要內(nèi)容提要4.1.1 4.1.1 中斷系統(tǒng)的概念中斷系統(tǒng)的概念l 中斷系統(tǒng)的概念和基本結(jié)構(gòu)中斷系統(tǒng)的概念和基本結(jié)構(gòu) 中斷發(fā)生:中斷發(fā)生:CPU正在處理某一程序時(shí),發(fā)生了另一突發(fā)正在處理某一程序時(shí),發(fā)生了另一突發(fā) 事件請(qǐng)求事件請(qǐng)求CPU迅速去處理;迅速去處理; 中斷響應(yīng):中斷響應(yīng): CPU暫時(shí)停止當(dāng)前的工作,轉(zhuǎn)到需要處理的暫時(shí)停止當(dāng)前的工作,轉(zhuǎn)到需要處理的 中
3、斷源的服務(wù)程序的入口,一般在入口處執(zhí)行中斷源的服務(wù)程序的入口,一般在入口處執(zhí)行 一跳轉(zhuǎn)指令轉(zhuǎn)去處理中斷事件一跳轉(zhuǎn)指令轉(zhuǎn)去處理中斷事件(中斷服務(wù)中斷服務(wù)); 中斷返回:中斷返回:待待CPU將中斷事件處理完畢后,再回到原來(lái)將中斷事件處理完畢后,再回到原來(lái) 程序被中斷的地方繼續(xù)處理執(zhí)行程序,這一處程序被中斷的地方繼續(xù)處理執(zhí)行程序,這一處 理過(guò)程稱為中斷返回。理過(guò)程稱為中斷返回。 4.1 中中 斷斷l(xiāng) 中斷系統(tǒng)的概念和基本結(jié)構(gòu) 中斷過(guò)程示意圖中斷過(guò)程示意圖l 為什么要用中斷為什么要用中斷? 當(dāng)當(dāng)CPUCPU與外設(shè)交換信息時(shí),由于外設(shè)的速度比較與外設(shè)交換信息時(shí),由于外設(shè)的速度比較慢,若用查詢的方式,則慢
4、,若用查詢的方式,則CPUCPU就要浪費(fèi)很多時(shí)間去等待就要浪費(fèi)很多時(shí)間去等待外設(shè)。這樣就存在外設(shè)。這樣就存在一個(gè)快速的一個(gè)快速的CPUCPU與慢速的外設(shè)之間的與慢速的外設(shè)之間的矛盾矛盾。為了解決這個(gè)問(wèn)題,就發(fā)展了中斷的概念。為了解決這個(gè)問(wèn)題,就發(fā)展了中斷的概念。 l 中斷的優(yōu)點(diǎn) 分時(shí)操作分時(shí)操作 有了中斷功能,就可以使有了中斷功能,就可以使CPU和外設(shè)同時(shí)工作。提高和外設(shè)同時(shí)工作。提高了了CPU的利用率。的利用率。 實(shí)時(shí)處理實(shí)時(shí)處理 實(shí)時(shí)控制時(shí),需要現(xiàn)場(chǎng)的各種參數(shù)、信息,可在任實(shí)時(shí)控制時(shí),需要現(xiàn)場(chǎng)的各種參數(shù)、信息,可在任何時(shí)間發(fā)出中斷申請(qǐng),何時(shí)間發(fā)出中斷申請(qǐng),CPU就可以馬上響應(yīng)加以處理。就可
5、以馬上響應(yīng)加以處理。 故障處理故障處理 計(jì)算機(jī)在運(yùn)行過(guò)程中,往往會(huì)出現(xiàn)事先預(yù)料不到的計(jì)算機(jī)在運(yùn)行過(guò)程中,往往會(huì)出現(xiàn)事先預(yù)料不到的情況,或出現(xiàn)一些故障。情況,或出現(xiàn)一些故障。l 中斷源 引起中斷的原因,或能發(fā)出中斷申請(qǐng)的來(lái)源,稱引起中斷的原因,或能發(fā)出中斷申請(qǐng)的來(lái)源,稱為中斷源。通常中斷源有以下幾種:為中斷源。通常中斷源有以下幾種:外部輸入、輸出設(shè)備外部輸入、輸出設(shè)備故障源故障源 控制對(duì)象控制對(duì)象 定時(shí)定時(shí)/ /計(jì)數(shù)脈沖計(jì)數(shù)脈沖,當(dāng)定時(shí)當(dāng)定時(shí)/ /計(jì)數(shù)器溢出時(shí)產(chǎn)生中斷請(qǐng)求。計(jì)數(shù)器溢出時(shí)產(chǎn)生中斷請(qǐng)求。 對(duì)于每種中斷事件,要求其能夠發(fā)出中斷請(qǐng)求信對(duì)于每種中斷事件,要求其能夠發(fā)出中斷請(qǐng)求信號(hào),而且要符
6、合號(hào),而且要符合CPU響應(yīng)中斷的條件,即要明確屬于哪響應(yīng)中斷的條件,即要明確屬于哪種中斷源。中斷源是系統(tǒng)規(guī)定的可引起中斷的部件或來(lái)種中斷源。中斷源是系統(tǒng)規(guī)定的可引起中斷的部件或來(lái)源。源。l中斷系統(tǒng)的功能中斷系統(tǒng)的功能實(shí)現(xiàn)中斷及返回實(shí)現(xiàn)中斷及返回能實(shí)現(xiàn)優(yōu)先權(quán)排隊(duì)能實(shí)現(xiàn)優(yōu)先權(quán)排隊(duì)高級(jí)中斷源能中斷低級(jí)的中斷處理高級(jí)中斷源能中斷低級(jí)的中斷處理 l MCS-51單片機(jī)的中斷系統(tǒng)提供單片機(jī)的中斷系統(tǒng)提供5個(gè)中斷申請(qǐng)?jiān)磦€(gè)中斷申請(qǐng)?jiān)?外部中斷外部中斷0和外部中斷和外部中斷1; 定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器(T0)和和(T1)的溢出中斷;的溢出中斷; 串行接口的接收和發(fā)送中斷。串行接口的接收和發(fā)送中斷。這這5個(gè)中斷源
7、可分為兩個(gè)優(yōu)先級(jí),可實(shí)現(xiàn)兩級(jí)中斷服務(wù)個(gè)中斷源可分為兩個(gè)優(yōu)先級(jí),可實(shí)現(xiàn)兩級(jí)中斷服務(wù)程序嵌套。程序嵌套。4.1.2 MCS-514.1.2 MCS-51單片機(jī)的中斷系統(tǒng)單片機(jī)的中斷系統(tǒng)l MCS-51單片機(jī)的中斷系統(tǒng)結(jié)構(gòu)示意圖單片機(jī)的中斷系統(tǒng)結(jié)構(gòu)示意圖4.1.3 4.1.3 中斷系統(tǒng)的控制與實(shí)現(xiàn)中斷系統(tǒng)的控制與實(shí)現(xiàn)u MCS-51單片機(jī)的中斷系統(tǒng)可以提供單片機(jī)的中斷系統(tǒng)可以提供5個(gè)中斷申請(qǐng)個(gè)中斷申請(qǐng)?jiān)?,它們的控制與實(shí)現(xiàn)由片內(nèi)源,它們的控制與實(shí)現(xiàn)由片內(nèi)4個(gè)個(gè)SFR來(lái)完成。來(lái)完成。 定時(shí)定時(shí)/計(jì)數(shù)器的控制寄存器計(jì)數(shù)器的控制寄存器(TCON)和串行接口控制寄存器和串行接口控制寄存器(SCON)的相應(yīng)位規(guī)
8、定的相應(yīng)位規(guī)定中斷類型和觸發(fā)方式中斷類型和觸發(fā)方式; 中斷允許寄存器中斷允許寄存器(IE)控制控制CPU是否響應(yīng)中斷請(qǐng)求是否響應(yīng)中斷請(qǐng)求; 中斷優(yōu)先級(jí)寄存器中斷優(yōu)先級(jí)寄存器(IP)安排各安排各中斷源的優(yōu)先級(jí)中斷源的優(yōu)先級(jí),同一優(yōu)先,同一優(yōu)先級(jí)內(nèi)各中斷同時(shí)提出中斷請(qǐng)求時(shí),由內(nèi)部的查詢邏輯按規(guī)級(jí)內(nèi)各中斷同時(shí)提出中斷請(qǐng)求時(shí),由內(nèi)部的查詢邏輯按規(guī)定的自然優(yōu)先級(jí)確定定的自然優(yōu)先級(jí)確定其響應(yīng)次序其響應(yīng)次序。l MCS-51的中斷源的中斷源 外部中斷外部中斷0 0:來(lái)自來(lái)自P3.2引腳上的外部中斷請(qǐng)求;引腳上的外部中斷請(qǐng)求; 外部中斷外部中斷1 1:來(lái)自來(lái)自P3.3引腳上的外部中斷請(qǐng)求;引腳上的外部中斷請(qǐng)求
9、; T0T0:片內(nèi)定時(shí):片內(nèi)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器0溢出溢出(TF0)中斷請(qǐng)求;中斷請(qǐng)求; T1T1:片內(nèi)定時(shí)片內(nèi)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器1溢出溢出(TF1)中斷請(qǐng)求;中斷請(qǐng)求; 串行接口串行接口:片內(nèi)串行接口完成一幀數(shù)據(jù)的發(fā)送或接收后,產(chǎn)片內(nèi)串行接口完成一幀數(shù)據(jù)的發(fā)送或接收后,產(chǎn)生中斷請(qǐng)求生中斷請(qǐng)求TI或或RI。l 和中斷有關(guān)的特殊功能寄存器和中斷有關(guān)的特殊功能寄存器 定時(shí)定時(shí)/計(jì)數(shù)器控制寄存器計(jì)數(shù)器控制寄存器TCON(88H) TCON:它鎖存:它鎖存2個(gè)定時(shí)個(gè)定時(shí)/計(jì)數(shù)器的溢出中斷標(biāo)志及外計(jì)數(shù)器的溢出中斷標(biāo)志及外部中斷部中斷( )和和( )的中斷標(biāo)志,與中斷有關(guān)的各位的中斷標(biāo)志,與中斷有關(guān)的各位定
10、義如下:定義如下:INT0INT1 位位D7D6D5D4D3D2D1D0字節(jié)地址字節(jié)地址TCONTF1TR1TF0TR0IE1IT1IE0IT088H位地址位地址8FH8EH8DH8CH8BH8AH89H88HIT0:外部中斷:外部中斷0觸發(fā)方式控制位。觸發(fā)方式控制位。 當(dāng)IT0=0,外部中斷0選擇為電平觸發(fā)方式(低電平有效)當(dāng)IT0=1外部中斷0選擇為邊沿觸發(fā)方式(下降沿有效)。 IE0:外部中斷:外部中斷0中斷請(qǐng)求標(biāo)志位。中斷請(qǐng)求標(biāo)志位。 IE0=1時(shí),表示向CPU請(qǐng)求中斷。IT1:外部中斷:外部中斷1觸發(fā)方式控制位。觸發(fā)方式控制位。IE1:外部中斷:外部中斷1中斷請(qǐng)求標(biāo)志位。中斷請(qǐng)求標(biāo)志
11、位。TF0:定時(shí):定時(shí)/計(jì)數(shù)器計(jì)數(shù)器T0溢出中斷請(qǐng)求標(biāo)志位。溢出中斷請(qǐng)求標(biāo)志位。 在T0啟動(dòng)后就開(kāi)始由初值加“1”計(jì)數(shù),直至最高位產(chǎn)生溢出由硬件置位(TF0),向CPU請(qǐng)求中斷。CPU響應(yīng)中斷時(shí),TF0由硬件自動(dòng)清“0”。TF1:定時(shí):定時(shí)/計(jì)數(shù)器計(jì)數(shù)器T1溢出中斷請(qǐng)求標(biāo)志位。溢出中斷請(qǐng)求標(biāo)志位。 串行接口控制寄存器串行接口控制寄存器(98H) SCON是串行接口控制寄存器,與中斷有關(guān)的是它的是串行接口控制寄存器,與中斷有關(guān)的是它的低位低位TI和和RI。 位位D7D6D5D4D3D2D1D0字節(jié)地址字節(jié)地址SCONTIRI98H位地址位地址9FH9EH9DH9CH9BH9AH99H98H RI
12、RI:串行接口接收中斷標(biāo)志位。串行接口接收中斷標(biāo)志位。 當(dāng)允許串行接口接收數(shù)據(jù)時(shí),每接收完一個(gè)串行幀,由當(dāng)允許串行接口接收數(shù)據(jù)時(shí),每接收完一個(gè)串行幀,由硬件置位硬件置位RI,向,向CPU請(qǐng)求中斷。請(qǐng)求中斷。CPU響應(yīng)中斷時(shí),不能響應(yīng)中斷時(shí),不能自動(dòng)清除自動(dòng)清除RI,RI必須由軟件清除。必須由軟件清除。 TITI:串行接口發(fā)送中斷標(biāo)志位。串行接口發(fā)送中斷標(biāo)志位。 當(dāng)當(dāng)CPU將一個(gè)發(fā)送數(shù)據(jù)寫入串行接口發(fā)送緩沖器時(shí),就將一個(gè)發(fā)送數(shù)據(jù)寫入串行接口發(fā)送緩沖器時(shí),就啟動(dòng)了發(fā)送過(guò)程。每發(fā)送完一個(gè)串行幀,由硬件置位啟動(dòng)了發(fā)送過(guò)程。每發(fā)送完一個(gè)串行幀,由硬件置位(TI),向,向CPU請(qǐng)求中斷。同樣,請(qǐng)求中斷。同
13、樣,TI必須由軟件清除。必須由軟件清除。 中斷允許寄存器中斷允許寄存器IE(A8H)IE(A8H) CPU對(duì)中斷系統(tǒng)所有中斷以及某個(gè)中斷源的開(kāi)放和屏蔽是對(duì)中斷系統(tǒng)所有中斷以及某個(gè)中斷源的開(kāi)放和屏蔽是由中斷允許寄存器由中斷允許寄存器(IE)控制的。控制的。 IE的狀態(tài)可通過(guò)程序由軟件設(shè)定;的狀態(tài)可通過(guò)程序由軟件設(shè)定; 某位設(shè)定為某位設(shè)定為“1”,相應(yīng)的中斷源中斷允許;,相應(yīng)的中斷源中斷允許; 某位設(shè)定為某位設(shè)定為“0”,相應(yīng)的中斷源中斷屏蔽;,相應(yīng)的中斷源中斷屏蔽; CPU復(fù)位時(shí),復(fù)位時(shí),IE各位清各位清“0”,禁止所有中斷。,禁止所有中斷。 IEIE各位的定義如下:各位的定義如下: EX0:外
14、部中斷:外部中斷(0)中斷允許位;中斷允許位;ET0:定時(shí):定時(shí)/計(jì)數(shù)器計(jì)數(shù)器T0中斷允許位;中斷允許位;EX1:外部中斷:外部中斷(1)中斷允許位;中斷允許位;ET1:定時(shí):定時(shí)/計(jì)數(shù)器計(jì)數(shù)器(T1)中斷允許位;中斷允許位;ES: 串行接口中斷允許位;串行接口中斷允許位;EA: CPU中斷總允許位。中斷總允許位。 位位D7D6D5D4D3D2D1D0字節(jié)地址字節(jié)地址 IEEAESET1EX1ET0EX0A8H位地址位地址AFHAEHADHACHABHAAHA9HA8H 中斷優(yōu)先級(jí)寄存器中斷優(yōu)先級(jí)寄存器IP(B8H) MCS-51單片機(jī)有兩個(gè)中斷優(yōu)先級(jí),即可實(shí)現(xiàn)二級(jí)中斷服單片機(jī)有兩個(gè)中斷優(yōu)先級(jí)
15、,即可實(shí)現(xiàn)二級(jí)中斷服務(wù)嵌套。務(wù)嵌套。 每個(gè)中斷源的中斷優(yōu)先級(jí)都是由中斷優(yōu)先級(jí)寄存器每個(gè)中斷源的中斷優(yōu)先級(jí)都是由中斷優(yōu)先級(jí)寄存器(IP)中中的相應(yīng)位的狀態(tài)來(lái)規(guī)定的。的相應(yīng)位的狀態(tài)來(lái)規(guī)定的。 某位設(shè)定為某位設(shè)定為“1”,則相應(yīng)的中斷源為高優(yōu)先級(jí)中斷;,則相應(yīng)的中斷源為高優(yōu)先級(jí)中斷; 某位設(shè)定為某位設(shè)定為“0”,則相應(yīng)的中斷源為低優(yōu)先級(jí)中斷。,則相應(yīng)的中斷源為低優(yōu)先級(jí)中斷。 單片機(jī)復(fù)位時(shí),單片機(jī)復(fù)位時(shí),IP各位清各位清“0”,各中斷源同為低優(yōu)先級(jí)中,各中斷源同為低優(yōu)先級(jí)中斷。斷。 PX0:外部中斷:外部中斷0中斷優(yōu)先級(jí)設(shè)定位;中斷優(yōu)先級(jí)設(shè)定位; PT0:定時(shí):定時(shí)/計(jì)數(shù)器計(jì)數(shù)器T0中斷優(yōu)先級(jí)設(shè)定位;
16、中斷優(yōu)先級(jí)設(shè)定位; PX1:外部中斷:外部中斷1中斷優(yōu)先級(jí)設(shè)定位;中斷優(yōu)先級(jí)設(shè)定位; PT1:定時(shí):定時(shí)/計(jì)數(shù)器計(jì)數(shù)器T1中斷優(yōu)先級(jí)設(shè)定位;中斷優(yōu)先級(jí)設(shè)定位; PS:串行接口中斷優(yōu)先級(jí)設(shè)定位。:串行接口中斷優(yōu)先級(jí)設(shè)定位。 位位D7D6D5D4D3D2D1D0字節(jié)地址字節(jié)地址 IPPSPT1PX1PT0PX0B8H 位地址位地址BFHBEHBDHBCHBBHBAHB9HB8H IP寄存器寄存器各位的定義如下各位的定義如下 同一優(yōu)先級(jí)的中斷優(yōu)先權(quán)排隊(duì),由中斷系統(tǒng)硬件同一優(yōu)先級(jí)的中斷優(yōu)先權(quán)排隊(duì),由中斷系統(tǒng)硬件 確定的自然優(yōu)先級(jí)形成,其排列如下表所示。確定的自然優(yōu)先級(jí)形成,其排列如下表所示。中斷源中斷
17、源中斷標(biāo)志中斷標(biāo)志中斷服務(wù)程序入口中斷服務(wù)程序入口優(yōu)先級(jí)順序優(yōu)先級(jí)順序外部中斷外部中斷IE00003H高高定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器0(T0)TF0000BH外部中斷外部中斷IE10013H定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器1(T1)TF1001BH串行口串行口RI或或TI0023H低低 MCS-51單片機(jī)的中斷優(yōu)先級(jí)控制原則單片機(jī)的中斷優(yōu)先級(jí)控制原則 不同級(jí)的中斷源同時(shí)申請(qǐng)中斷時(shí),先響應(yīng)高級(jí)后響應(yīng)低不同級(jí)的中斷源同時(shí)申請(qǐng)中斷時(shí),先響應(yīng)高級(jí)后響應(yīng)低級(jí)。級(jí)。 同級(jí)的中斷源同時(shí)申請(qǐng)中斷時(shí),按事先規(guī)定執(zhí)行。即同級(jí)的中斷源同時(shí)申請(qǐng)中斷時(shí),按事先規(guī)定執(zhí)行。即MCS-51單片機(jī)中規(guī)定的同級(jí)中斷優(yōu)先順序。單片機(jī)中規(guī)定的同級(jí)
18、中斷優(yōu)先順序。 處理低級(jí)中斷又收到高級(jí)中斷請(qǐng)求時(shí),停止低級(jí)轉(zhuǎn)去先處理低級(jí)中斷又收到高級(jí)中斷請(qǐng)求時(shí),停止低級(jí)轉(zhuǎn)去先執(zhí)行高級(jí)。執(zhí)行高級(jí)。 處理高級(jí)中斷又收到低級(jí)中斷請(qǐng)求時(shí),不響應(yīng)它,等待處理高級(jí)中斷又收到低級(jí)中斷請(qǐng)求時(shí),不響應(yīng)它,等待做完高級(jí)處理后再處理低級(jí)中斷做完高級(jí)處理后再處理低級(jí)中斷。4.1.4 4.1.4 中斷響應(yīng)的條件、過(guò)程和時(shí)間中斷響應(yīng)的條件、過(guò)程和時(shí)間 中斷處理過(guò)程分為中斷處理過(guò)程分為4個(gè)階段:中斷請(qǐng)求個(gè)階段:中斷請(qǐng)求中斷響應(yīng)中斷響應(yīng)中中斷服務(wù)斷服務(wù)中斷返回。中斷返回。l 中斷響應(yīng)條件中斷響應(yīng)條件 CPUCPU在每個(gè)機(jī)器周期的在每個(gè)機(jī)器周期的S5P2S5P2時(shí)刻對(duì)各個(gè)中斷源的中斷標(biāo)志
19、進(jìn)時(shí)刻對(duì)各個(gè)中斷源的中斷標(biāo)志進(jìn)行行采樣采樣。 這些采樣值在下一個(gè)機(jī)器周期內(nèi)按優(yōu)先級(jí)和內(nèi)部順序被依這些采樣值在下一個(gè)機(jī)器周期內(nèi)按優(yōu)先級(jí)和內(nèi)部順序被依次查詢。如果次查詢。如果某個(gè)中斷標(biāo)志在上一個(gè)機(jī)器周期的某個(gè)中斷標(biāo)志在上一個(gè)機(jī)器周期的S5P2S5P2被置被置成了成了“1”1”,那么它將于現(xiàn)在的查詢周期中及時(shí)被發(fā)現(xiàn),那么它將于現(xiàn)在的查詢周期中及時(shí)被發(fā)現(xiàn)。 接著接著CPUCPU便執(zhí)行一條由中斷系統(tǒng)提供的硬件便執(zhí)行一條由中斷系統(tǒng)提供的硬件LCALLLCALL指令指令,轉(zhuǎn),轉(zhuǎn)向被稱作中斷向量的向被稱作中斷向量的特定入口地址特定入口地址,進(jìn)入相應(yīng)的中斷服務(wù),進(jìn)入相應(yīng)的中斷服務(wù)程序。程序。l中斷響應(yīng)必須滿足下
20、列條件:中斷響應(yīng)必須滿足下列條件: 無(wú)同級(jí)或高級(jí)中斷正在服務(wù);無(wú)同級(jí)或高級(jí)中斷正在服務(wù); 現(xiàn)行指令執(zhí)行到最后現(xiàn)行指令執(zhí)行到最后1個(gè)機(jī)器周期且已結(jié)束;個(gè)機(jī)器周期且已結(jié)束; 若現(xiàn)行指令為若現(xiàn)行指令為RETI或需訪問(wèn)特殊功能寄存器或需訪問(wèn)特殊功能寄存器IE或或IP的指令時(shí),執(zhí)行完該指令且緊隨其后的另的指令時(shí),執(zhí)行完該指令且緊隨其后的另1條指令也已條指令也已執(zhí)行完。執(zhí)行完。 單片機(jī)便在緊接的下一個(gè)機(jī)器周期的單片機(jī)便在緊接的下一個(gè)機(jī)器周期的S1期間響應(yīng)期間響應(yīng)中斷,否則,將丟棄中斷查詢的結(jié)果!中斷,否則,將丟棄中斷查詢的結(jié)果!l 中斷響應(yīng)過(guò)程中斷響應(yīng)過(guò)程 將相應(yīng)的優(yōu)先級(jí)狀態(tài)觸發(fā)器置將相應(yīng)的優(yōu)先級(jí)狀態(tài)觸發(fā)
21、器置“1”(以阻斷后來(lái)的同級(jí)以阻斷后來(lái)的同級(jí)或低級(jí)的中斷請(qǐng)求或低級(jí)的中斷請(qǐng)求); 執(zhí)行一條硬件執(zhí)行一條硬件LCALL指令,把程序計(jì)數(shù)器指令,把程序計(jì)數(shù)器(PC)的內(nèi)容的內(nèi)容壓入堆棧保存,再將相應(yīng)的中斷服務(wù)程序的入口地址壓入堆棧保存,再將相應(yīng)的中斷服務(wù)程序的入口地址送入送入PC; 進(jìn)入中斷服務(wù)程序后,進(jìn)入中斷服務(wù)程序后,CPU自動(dòng)清除中斷請(qǐng)求標(biāo)志自動(dòng)清除中斷請(qǐng)求標(biāo)志TF0、TF1、IE0、IE1,但不能清除,但不能清除TI和和RI。中斷響應(yīng)過(guò)程 l執(zhí)行中斷服務(wù)程序 在主程序中事先進(jìn)行中斷初始化;在主程序中事先進(jìn)行中斷初始化; 在中斷服務(wù)程序入口地址單元放一條長(zhǎng)轉(zhuǎn)移指令在中斷服務(wù)程序入口地址單元放
22、一條長(zhǎng)轉(zhuǎn)移指令LJMP,這樣中斷服務(wù)程序能靈活地安排這樣中斷服務(wù)程序能靈活地安排64KB程序存儲(chǔ)器的任何程序存儲(chǔ)器的任何 地方;地方; 在中斷服務(wù)程序中,首先用在中斷服務(wù)程序中,首先用軟件保護(hù)現(xiàn)場(chǎng)軟件保護(hù)現(xiàn)場(chǎng),在中斷服務(wù),在中斷服務(wù)之后、之后、中斷返回前恢復(fù)現(xiàn)場(chǎng)中斷返回前恢復(fù)現(xiàn)場(chǎng),以防止中斷返回后,丟失原,以防止中斷返回后,丟失原寄存器的內(nèi)容。寄存器的內(nèi)容。l 中斷返回中斷返回 中斷服務(wù)程序的最后一條指令必須是中斷返回指令中斷服務(wù)程序的最后一條指令必須是中斷返回指令RETIRETI。RETIRETI指令能使指令能使CPUCPU結(jié)束中斷服務(wù)程序的執(zhí)行,返回結(jié)束中斷服務(wù)程序的執(zhí)行,返回到曾經(jīng)被中斷
23、過(guò)的程序處,繼續(xù)執(zhí)行主程序。到曾經(jīng)被中斷過(guò)的程序處,繼續(xù)執(zhí)行主程序。 RETIRETI指令的具體功能是指令的具體功能是: 將中斷響應(yīng)時(shí)壓入堆棧保存的斷點(diǎn)地址從棧頂彈出送回將中斷響應(yīng)時(shí)壓入堆棧保存的斷點(diǎn)地址從棧頂彈出送回PCPC,CPUCPU從原來(lái)中斷的地方繼續(xù)執(zhí)行程序;從原來(lái)中斷的地方繼續(xù)執(zhí)行程序; 將相應(yīng)將相應(yīng)中斷優(yōu)先級(jí)狀態(tài)觸發(fā)器清中斷優(yōu)先級(jí)狀態(tài)觸發(fā)器清“0”0”,通知中斷系統(tǒng),通知中斷系統(tǒng),中斷服務(wù)程序已執(zhí)行完畢。中斷服務(wù)程序已執(zhí)行完畢。中斷處理過(guò)程(匯總中斷響應(yīng)中斷處理過(guò)程(匯總中斷響應(yīng)中斷服務(wù)中斷服務(wù) 中斷返回)中斷返回)(1 1)CPUCPU在每個(gè)機(jī)器周期的在每個(gè)機(jī)器周期的S5P2S
24、5P2時(shí)刻對(duì)各個(gè)中斷源的中斷標(biāo)志時(shí)刻對(duì)各個(gè)中斷源的中斷標(biāo)志 進(jìn)行采樣。進(jìn)行采樣。(2 2)這些采樣值在)這些采樣值在下一個(gè)機(jī)器周期下一個(gè)機(jī)器周期內(nèi)按優(yōu)先級(jí)和內(nèi)部順序被內(nèi)按優(yōu)先級(jí)和內(nèi)部順序被 依次查詢。如果某個(gè)中斷標(biāo)志在上一個(gè)機(jī)器周期的依次查詢。如果某個(gè)中斷標(biāo)志在上一個(gè)機(jī)器周期的S5P2S5P2 被置成了被置成了1 1,那么它將于現(xiàn)在的查詢周期中及時(shí)被發(fā)現(xiàn)。,那么它將于現(xiàn)在的查詢周期中及時(shí)被發(fā)現(xiàn)。(3) 3) 將相應(yīng)的優(yōu)先級(jí)狀態(tài)觸發(fā)器置將相應(yīng)的優(yōu)先級(jí)狀態(tài)觸發(fā)器置“1”(1”(以阻斷后來(lái)的以阻斷后來(lái)的 同級(jí)或低級(jí)的中斷請(qǐng)求同級(jí)或低級(jí)的中斷請(qǐng)求) ); (4) (4) 執(zhí)行一條硬件執(zhí)行一條硬件LCA
25、LLLCALL指令,把程序計(jì)數(shù)器指令,把程序計(jì)數(shù)器(PC)(PC)的內(nèi)容壓入的內(nèi)容壓入 堆棧保存,再將相應(yīng)中斷服務(wù)程序的入口地址送入堆棧保存,再將相應(yīng)中斷服務(wù)程序的入口地址送入PCPC; (5) (5) 進(jìn)入中斷服務(wù)程序后,進(jìn)入中斷服務(wù)程序后,CPUCPU自動(dòng)清除中斷請(qǐng)求標(biāo)志自動(dòng)清除中斷請(qǐng)求標(biāo)志TF0TF0、 TF1TF1、IE0IE0、IE1IE1,但不能清除,但不能清除TITI和和RIRI。中斷響應(yīng)過(guò)程中斷響應(yīng)過(guò)程(6)(6)在主程序中事先進(jìn)行中斷初始化,在在主程序中事先進(jìn)行中斷初始化,在中斷服務(wù)程序中斷服務(wù)程序 入口地址單元放一條長(zhǎng)轉(zhuǎn)移指令入口地址單元放一條長(zhǎng)轉(zhuǎn)移指令LJMPLJMP,這
26、樣中斷服,這樣中斷服 務(wù)程序能靈活地安排務(wù)程序能靈活地安排64KB64KB程序存儲(chǔ)器的任何地方。程序存儲(chǔ)器的任何地方。(7) (7) 在中斷服務(wù)程序中,首先用軟件保護(hù)現(xiàn)場(chǎng),在中斷服在中斷服務(wù)程序中,首先用軟件保護(hù)現(xiàn)場(chǎng),在中斷服 務(wù)之后、中斷返回前恢復(fù)現(xiàn)場(chǎng),以防止中斷返回后,務(wù)之后、中斷返回前恢復(fù)現(xiàn)場(chǎng),以防止中斷返回后, 丟失原寄存器的內(nèi)容。丟失原寄存器的內(nèi)容。(8) (8) 當(dāng)執(zhí)行到當(dāng)執(zhí)行到RET1RET1時(shí),中斷服務(wù)程序結(jié)束。時(shí),中斷服務(wù)程序結(jié)束。(9) (9) 將中斷響應(yīng)時(shí)壓入堆棧保存的斷點(diǎn)地址從棧頂彈出送將中斷響應(yīng)時(shí)壓入堆棧保存的斷點(diǎn)地址從棧頂彈出送 回回PCPC,CPUCPU從原來(lái)中斷
27、的地方繼續(xù)執(zhí)行程序;從原來(lái)中斷的地方繼續(xù)執(zhí)行程序;(10)(10)將相應(yīng)中斷優(yōu)先級(jí)狀態(tài)觸發(fā)器清將相應(yīng)中斷優(yōu)先級(jí)狀態(tài)觸發(fā)器清“0”0”,通知中斷系,通知中斷系 統(tǒng),中斷服務(wù)程序已執(zhí)行完畢。統(tǒng),中斷服務(wù)程序已執(zhí)行完畢。中斷服務(wù)過(guò)程中斷服務(wù)過(guò)程中斷返回中斷返回l中斷響應(yīng)時(shí)間中斷響應(yīng)時(shí)間所謂中斷響應(yīng)時(shí)間,所謂中斷響應(yīng)時(shí)間,是指從是指從查詢中斷請(qǐng)求標(biāo)志位到轉(zhuǎn)入查詢中斷請(qǐng)求標(biāo)志位到轉(zhuǎn)入中斷服務(wù)程序入口地址所需的機(jī)器周期數(shù)中斷服務(wù)程序入口地址所需的機(jī)器周期數(shù)(對(duì)單一中斷源而言)。響應(yīng)中斷最短需要響應(yīng)中斷最短需要3個(gè)機(jī)器周期。個(gè)機(jī)器周期。若若CPU查詢中斷請(qǐng)求查詢中斷請(qǐng)求標(biāo)志的周期正好是執(zhí)行標(biāo)志的周期正好是執(zhí)
28、行1條指令的最后條指令的最后1個(gè)機(jī)器周期,則不個(gè)機(jī)器周期,則不需等待就可響應(yīng)。響應(yīng)中斷執(zhí)行需等待就可響應(yīng)。響應(yīng)中斷執(zhí)行1條長(zhǎng)調(diào)用指令需要條長(zhǎng)調(diào)用指令需要2個(gè)機(jī)個(gè)機(jī)器周期,加上查詢的器周期,加上查詢的1個(gè)機(jī)器周期個(gè)機(jī)器周期,共需要,共需要3個(gè)機(jī)器周期個(gè)機(jī)器周期才才開(kāi)始執(zhí)行中斷服務(wù)程序。開(kāi)始執(zhí)行中斷服務(wù)程序。中斷響應(yīng)的最長(zhǎng)時(shí)間由下列情況所決定:若中斷查詢中斷響應(yīng)的最長(zhǎng)時(shí)間由下列情況所決定:若中斷查詢時(shí)正在執(zhí)行時(shí)正在執(zhí)行RETI或者訪問(wèn)或者訪問(wèn)IE(或或IP)指令的第指令的第1個(gè)機(jī)器周期個(gè)機(jī)器周期,則連查詢?cè)趦?nèi)需要,則連查詢?cè)趦?nèi)需要2個(gè)機(jī)器周期個(gè)機(jī)器周期(以上以上3條指令均需條指令均需2個(gè)機(jī)個(gè)機(jī)器周
29、期器周期);若緊接著要執(zhí)行的指令正好是;若緊接著要執(zhí)行的指令正好是MUL或或DIV指令指令(兩者均為兩者均為4周期指令周期指令),則需等該指令執(zhí)行完后才能進(jìn)入中斷,則需等該指令執(zhí)行完后才能進(jìn)入中斷響應(yīng)周期,再用響應(yīng)周期,再用2個(gè)機(jī)器周期執(zhí)行個(gè)機(jī)器周期執(zhí)行1條長(zhǎng)調(diào)用指令轉(zhuǎn)入中斷條長(zhǎng)調(diào)用指令轉(zhuǎn)入中斷服務(wù)程序,這樣一來(lái)總共服務(wù)程序,這樣一來(lái)總共需要需要8個(gè)機(jī)器周期個(gè)機(jī)器周期。其他情況下的。其他情況下的中斷響應(yīng)時(shí)間一般在中斷響應(yīng)時(shí)間一般在38個(gè)機(jī)器周期之間。個(gè)機(jī)器周期之間。4.1.5 外部中斷的請(qǐng)求與撤除外部中斷的請(qǐng)求與撤除1外部中斷外部中斷4.1.4節(jié)已經(jīng)介紹了節(jié)已經(jīng)介紹了MCS-51單片機(jī)的中斷系
30、單片機(jī)的中斷系統(tǒng)的統(tǒng)的2個(gè)外部中斷源的工作過(guò)程,它有兩種觸發(fā)方個(gè)外部中斷源的工作過(guò)程,它有兩種觸發(fā)方式,即電平觸發(fā)和邊沿觸發(fā)??赏ㄟ^(guò)將式,即電平觸發(fā)和邊沿觸發(fā)??赏ㄟ^(guò)將TCON寄存寄存器中的器中的IT0位和位和IT1位清位清0使其工作在電平觸發(fā)方使其工作在電平觸發(fā)方式,或置為式,或置為1使其工作在邊沿觸發(fā)方式。使其工作在邊沿觸發(fā)方式。在電平觸發(fā)方式下,單片機(jī)在每個(gè)機(jī)器周期在電平觸發(fā)方式下,單片機(jī)在每個(gè)機(jī)器周期的的S5P2期間采樣中斷輸入信號(hào),若為低電平,則期間采樣中斷輸入信號(hào),若為低電平,則可直接觸發(fā)外部中斷。在這種觸發(fā)方式中,中斷源可直接觸發(fā)外部中斷。在這種觸發(fā)方式中,中斷源必須持續(xù)請(qǐng)求,直
31、至中斷產(chǎn)生為止,且要求在中斷必須持續(xù)請(qǐng)求,直至中斷產(chǎn)生為止,且要求在中斷服務(wù)程序返回之前,必須撤除中斷請(qǐng)求信號(hào),否則服務(wù)程序返回之前,必須撤除中斷請(qǐng)求信號(hào),否則機(jī)器將認(rèn)為又發(fā)生了另一次中斷請(qǐng)求。因此,電平機(jī)器將認(rèn)為又發(fā)生了另一次中斷請(qǐng)求。因此,電平觸發(fā)方式適合于外部中斷輸入為低電平,且在中斷觸發(fā)方式適合于外部中斷輸入為低電平,且在中斷服務(wù)程序中能清除該中斷源的申請(qǐng)信號(hào)的情況。服務(wù)程序中能清除該中斷源的申請(qǐng)信號(hào)的情況。在邊沿觸發(fā)方式中,單片機(jī)在采樣中斷輸入信號(hào)時(shí),在邊沿觸發(fā)方式中,單片機(jī)在采樣中斷輸入信號(hào)時(shí),如果連續(xù)采樣到如果連續(xù)采樣到1個(gè)周期的高電平和緊接著個(gè)周期的高電平和緊接著1個(gè)周期的低電
32、個(gè)周期的低電平,則中斷請(qǐng)求標(biāo)志位就被置位,并請(qǐng)求中斷。平,則中斷請(qǐng)求標(biāo)志位就被置位,并請(qǐng)求中斷。這種方式下這種方式下,CPU響應(yīng)中斷進(jìn)入中斷服務(wù)程序時(shí),請(qǐng)求標(biāo)志位會(huì)被響應(yīng)中斷進(jìn)入中斷服務(wù)程序時(shí),請(qǐng)求標(biāo)志位會(huì)被CPU自動(dòng)清除。所以該方式適合于以負(fù)脈沖形式輸入的外部自動(dòng)清除。所以該方式適合于以負(fù)脈沖形式輸入的外部中斷請(qǐng)求。中斷請(qǐng)求。由于外部中斷源在每個(gè)機(jī)器周期被采樣由于外部中斷源在每個(gè)機(jī)器周期被采樣1次,所以輸入次,所以輸入的高電平或低電平必須至少保持的高電平或低電平必須至少保持12個(gè)振蕩周期,以保證能個(gè)振蕩周期,以保證能被采樣到。被采樣到。2中斷請(qǐng)求的撤除中斷請(qǐng)求的撤除CPU響應(yīng)中斷請(qǐng)求后,在中
33、斷返回前,必須響應(yīng)中斷請(qǐng)求后,在中斷返回前,必須撤除請(qǐng)求,否則會(huì)錯(cuò)誤地再一次引起中斷過(guò)程。如撤除請(qǐng)求,否則會(huì)錯(cuò)誤地再一次引起中斷過(guò)程。如前所述,對(duì)于定時(shí)器前所述,對(duì)于定時(shí)器T0與與T1的中斷請(qǐng)求及邊沿觸的中斷請(qǐng)求及邊沿觸發(fā)方式的外部中斷發(fā)方式的外部中斷0和和1來(lái)說(shuō),來(lái)說(shuō),CPU在響應(yīng)中斷后在響應(yīng)中斷后用硬件清除了相應(yīng)的中斷請(qǐng)求標(biāo)志用硬件清除了相應(yīng)的中斷請(qǐng)求標(biāo)志TF0、TF1、IE0與與IE1,即自動(dòng)撤除了中斷請(qǐng)求。,即自動(dòng)撤除了中斷請(qǐng)求。對(duì)于串行口中斷,對(duì)于串行口中斷,CPU響應(yīng)中斷后沒(méi)有用硬件清除響應(yīng)中斷后沒(méi)有用硬件清除中斷標(biāo)志位,必須由用戶編制的中斷外部服務(wù)程序來(lái)清除相中斷標(biāo)志位,必須由用
34、戶編制的中斷外部服務(wù)程序來(lái)清除相應(yīng)的中斷標(biāo)志,如用指令應(yīng)的中斷標(biāo)志,如用指令CLR TI或或CLR RI來(lái)清除串行發(fā)來(lái)清除串行發(fā)送或串行接收中斷標(biāo)志。對(duì)于電平觸發(fā)的外部中斷,由于送或串行接收中斷標(biāo)志。對(duì)于電平觸發(fā)的外部中斷,由于CPU對(duì)外部中斷對(duì)外部中斷0和和1引腳沒(méi)有控制作用,因此需要外接電引腳沒(méi)有控制作用,因此需要外接電路來(lái)撤除中斷請(qǐng)求信號(hào)。路來(lái)撤除中斷請(qǐng)求信號(hào)。下圖描述了一種外部中斷撤出的可行性方案。該外部中下圖描述了一種外部中斷撤出的可行性方案。該外部中斷請(qǐng)求信號(hào)通過(guò)斷請(qǐng)求信號(hào)通過(guò)D觸發(fā)器加到單片機(jī)外部中斷觸發(fā)器加到單片機(jī)外部中斷0或或1引腳上。引腳上。當(dāng)外部中斷信號(hào)使當(dāng)外部中斷信號(hào)使
35、D觸發(fā)器的觸發(fā)器的CLK端發(fā)生正跳變時(shí),由于端發(fā)生正跳變時(shí),由于D端接地,端接地,Q端輸出為端輸出為0,因此向單片機(jī)發(fā)出中斷請(qǐng)求。,因此向單片機(jī)發(fā)出中斷請(qǐng)求。CPU響應(yīng)中斷后,利用響應(yīng)中斷后,利用1根口線根口線(如如P1.0)作應(yīng)答線。作應(yīng)答線。圖4.3 外部中斷請(qǐng)求(電平觸發(fā)方式)的撤除圖在中斷服務(wù)程序中用以下兩條指令來(lái)撤除中斷請(qǐng)求:在中斷服務(wù)程序中用以下兩條指令來(lái)撤除中斷請(qǐng)求:ANL P1,#0FEH;P1.0=0,則,則S=1,D觸發(fā)器觸發(fā)器置位,置位,Q=1 ORL P1,#01H;P1.0=1,則,則S=0,D觸發(fā)器接收信號(hào)觸發(fā)器接收信號(hào)第第1條指令使條指令使P1.0為為0,而,而P
36、1口其他各位的狀態(tài)不變口其他各位的狀態(tài)不變。由于。由于P1.0接至接至D觸發(fā)器的置觸發(fā)器的置“1”端端(S),所以,所以D觸發(fā)器的觸發(fā)器的Q=1,從而撤除了中斷請(qǐng)求信號(hào)。第,從而撤除了中斷請(qǐng)求信號(hào)。第2條指令又使條指令又使P1.0為為1,即,即S=0,以便能繼續(xù)接收新的外部中斷請(qǐng)求信號(hào)。,以便能繼續(xù)接收新的外部中斷請(qǐng)求信號(hào)。4.1.6 4.1.6 中斷系統(tǒng)設(shè)計(jì)舉例中斷系統(tǒng)設(shè)計(jì)舉例l 中斷系統(tǒng)的設(shè)計(jì)過(guò)程通常由以下幾個(gè)部分構(gòu)成中斷系統(tǒng)的設(shè)計(jì)過(guò)程通常由以下幾個(gè)部分構(gòu)成(1) 中斷初始化,在主程序中完成;中斷初始化,在主程序中完成;(2) 在中斷入口地址處安排一跳轉(zhuǎn)指令,跳轉(zhuǎn)至中斷在中斷入口地址處安排
37、一跳轉(zhuǎn)指令,跳轉(zhuǎn)至中斷 服務(wù)子程序入口;服務(wù)子程序入口;(3) 中斷服務(wù)子程序開(kāi)始保護(hù)現(xiàn)場(chǎng),保護(hù)與主程序或中斷服務(wù)子程序開(kāi)始保護(hù)現(xiàn)場(chǎng),保護(hù)與主程序或 其他中斷系統(tǒng)共享的資源,如其他中斷系統(tǒng)共享的資源,如A,PSW,DPTR, Rn等,如果沒(méi)有共享資源,可以不必保護(hù);等,如果沒(méi)有共享資源,可以不必保護(hù);(4) 編制中斷服務(wù)子程序功能主體;編制中斷服務(wù)子程序功能主體;(5) 恢復(fù)現(xiàn)場(chǎng);恢復(fù)現(xiàn)場(chǎng);【例例4.14.1】試編寫設(shè)置外部中斷試編寫設(shè)置外部中斷0 0和串行接口中斷為高優(yōu)和串行接口中斷為高優(yōu)先級(jí),外部中斷先級(jí),外部中斷1 1為低為低優(yōu)先級(jí)優(yōu)先級(jí),并屏蔽,并屏蔽T0T0和和T1T1中斷請(qǐng)求中斷請(qǐng)
38、求的初始化程序段。的初始化程序段。解:根據(jù)題目要求,只要能將中斷請(qǐng)求優(yōu)先級(jí)寄存器解:根據(jù)題目要求,只要能將中斷請(qǐng)求優(yōu)先級(jí)寄存器IP的第的第0、4位置位置“l(fā)”。其余位置。其余位置“0”,將中斷請(qǐng),將中斷請(qǐng)求允許寄存器的第求允許寄存器的第0、2、4、7位置位置“l(fā)”,其余位,其余位置置“0”就可以了。就可以了。 ORG 0000H SJMP MAIN ORG 0003H ;外部中斷外部中斷0的入口地址的入口地址 LJMP INT0INT ;跳轉(zhuǎn)到外部中斷跳轉(zhuǎn)到外部中斷0的中斷服務(wù)程序的中斷服務(wù)程序 ORG 0013H ;外部中斷外部中斷1的入口地址的入口地址 LJMP INT1INT ;跳轉(zhuǎn)到外
39、部中斷跳轉(zhuǎn)到外部中斷1的中斷服務(wù)程序的中斷服務(wù)程序 ORG 0023 ;串口中斷的入口地址串口中斷的入口地址 LJMP SIOINT ;跳轉(zhuǎn)到串口中斷的中斷服務(wù)程序跳轉(zhuǎn)到串口中斷的中斷服務(wù)程序 ORG 0030H MAIN: ;編寫主程序編寫主程序 MOV IP,#00010001B ;設(shè)外部中斷和;串行口中斷設(shè)外部中斷和;串行口中斷 ;為高優(yōu)先級(jí)為高優(yōu)先級(jí) MOV IE,#10010101B ;允許允許INT0、串行口中斷,開(kāi)、串行口中斷,開(kāi)CPU中斷中斷 思考:思考: 試寫一段中斷初始化程序,使其允許試寫一段中斷初始化程序,使其允許T0、T1和串口中和串口中 斷,且斷,且INT0為邊沿觸發(fā)
40、方式,串口為高優(yōu)先級(jí)中斷。為邊沿觸發(fā)方式,串口為高優(yōu)先級(jí)中斷?!纠?.24.2】利用單片機(jī)的定時(shí)器計(jì)數(shù)來(lái)產(chǎn)生中斷,假定單片機(jī)晶振選擇12MHZ,選擇使用T0每1mS產(chǎn)生一次中斷請(qǐng)求,用于調(diào)用動(dòng)態(tài)顯示程序DISP,即顯示程序在此屬于中斷服務(wù)程序。 解:先安排好不同程序的入口地址,在主程序中完成解:先安排好不同程序的入口地址,在主程序中完成定時(shí)定時(shí)器和中斷的初始化器和中斷的初始化,然后打開(kāi)對(duì)應(yīng),然后打開(kāi)對(duì)應(yīng)中斷允許位和總中斷允中斷允許位和總中斷允許位許位,在中斷服務(wù)程序中要,在中斷服務(wù)程序中要注意保護(hù)和恢復(fù)現(xiàn)場(chǎng)注意保護(hù)和恢復(fù)現(xiàn)場(chǎng)。;主程序如下;主程序如下ORG 0000HLJMP MAIN ;跳
41、轉(zhuǎn)到主程序入口;跳轉(zhuǎn)到主程序入口ORG 000BHLJMP DISP;跳轉(zhuǎn)到定時(shí)器;跳轉(zhuǎn)到定時(shí)器T0中斷入口地址中斷入口地址 ORG 0030HMAIN: ;=進(jìn)行定時(shí)器初始化進(jìn)行定時(shí)器初始化= MOV TMOD,#00000001B ;設(shè)置;設(shè)置T0工作在模式工作在模式1 MOV TH0,#0FCH ; MOV TL0,#18H ; 設(shè)置計(jì)數(shù)初值設(shè)置計(jì)數(shù)初值FC18H=64536=65536-1000 SETB TR0 ; TR0=1,啟動(dòng)定時(shí)器,啟動(dòng)定時(shí)器T0 開(kāi)始計(jì)數(shù)開(kāi)始計(jì)數(shù) SETB ET0 ; 開(kāi)放定時(shí)器開(kāi)放定時(shí)器T0 中斷允許位中斷允許位 SETB EA ;開(kāi)放總中斷允許位,等待;
42、開(kāi)放總中斷允許位,等待T0 計(jì)數(shù)滿溢出;計(jì)數(shù)滿溢出; 略略 ;中斷服務(wù)程序代碼:;中斷服務(wù)程序代碼: DISP: PUSH ACC PUSH PSW ;保護(hù)現(xiàn)場(chǎng);保護(hù)現(xiàn)場(chǎng); CLR TR0 ;因?yàn)橐呀?jīng)響應(yīng)中斷請(qǐng)求,故停止定時(shí)器;因?yàn)橐呀?jīng)響應(yīng)中斷請(qǐng)求,故停止定時(shí)器T0 MOV TH0,#0FCH MOV TL0,#18H ;重新賦計(jì)數(shù)初值;重新賦計(jì)數(shù)初值 SETB TR0 ;重新啟動(dòng)定時(shí)器;重新啟動(dòng)定時(shí)器T0 . ;顯示程序代碼(略);顯示程序代碼(略). POP PSW POP ACC ;按先入后出次序恢復(fù)現(xiàn)場(chǎng);按先入后出次序恢復(fù)現(xiàn)場(chǎng); RETI ; 中斷服務(wù)程序結(jié)束,返回?cái)帱c(diǎn),必須用中斷服務(wù)
43、程序結(jié)束,返回?cái)帱c(diǎn),必須用RETI指令;指令;【例例4.34.3】如下圖所示,按如下圖所示,按S接至外部中斷,按一次鍵接至外部中斷,按一次鍵LED點(diǎn)點(diǎn)亮,蜂鳴器發(fā)聲,再按一次鍵亮,蜂鳴器發(fā)聲,再按一次鍵LED滅,蜂鳴器關(guān)閉,循環(huán)滅,蜂鳴器關(guān)閉,循環(huán)往復(fù)。往復(fù)。圖圖 按鍵控制聲光電路按鍵控制聲光電路 實(shí)現(xiàn)程序ORG 0000HLED BITP0.0BUZZER BITP2.7LJMP MAIN;跳轉(zhuǎn)至主程序;跳轉(zhuǎn)至主程序ORG0003HLJMP INT1_INT;跳轉(zhuǎn)至中斷服務(wù)程序;跳轉(zhuǎn)至中斷服務(wù)程序ORG0100HMAIN: SETB IT1;外中斷采用下降沿觸發(fā);外中斷采用下降沿觸發(fā)SETB
44、 EX1;允許中斷;允許中斷SETB EA;開(kāi)總中斷;開(kāi)總中斷SETB F0;按鍵切換標(biāo)志,;按鍵切換標(biāo)志,F(xiàn)0=1,LED滅;滅; ;F0=0,LED亮亮 INT1_INT:CPL F0 ;不需保護(hù)現(xiàn);不需保護(hù)現(xiàn)MOVC,F(xiàn)0MOVLED,C;控制;控制LED輸出輸出MOVBUZZER,C;控制蜂鳴器輸出;控制蜂鳴器輸出RETI;中斷返回;中斷返回 另:請(qǐng)考慮用查詢方式實(shí)現(xiàn)該功能,如何編程?二者有何差異?另:請(qǐng)考慮用查詢方式實(shí)現(xiàn)該功能,如何編程?二者有何差異?l中斷總結(jié)中斷總結(jié) 51單片機(jī)共有5個(gè)中斷源,由4個(gè)SFR(TCON、 SCON、IE和IP)進(jìn)行管理和控制。 初始化時(shí),需要對(duì)5個(gè)內(nèi)
45、容進(jìn)行設(shè)置: 1)中斷服務(wù)程序入口地址的設(shè)定; 2)某一中斷源中斷請(qǐng)求的允許和禁止; 3)對(duì)于外部中斷請(qǐng)求,還需進(jìn)行觸發(fā)方式的設(shè)定; 4)各中斷優(yōu)先級(jí)別的設(shè)定; 5)CPU開(kāi)中斷與關(guān)中斷。4.2 MCS-514.2 MCS-51的定時(shí)的定時(shí)/ /計(jì)數(shù)器計(jì)數(shù)器 u 在工業(yè)檢測(cè)、控制中,許多場(chǎng)合都要用到計(jì)數(shù)或定時(shí)功能。在工業(yè)檢測(cè)、控制中,許多場(chǎng)合都要用到計(jì)數(shù)或定時(shí)功能。例如,對(duì)某個(gè)外部事件進(jìn)行計(jì)數(shù)、定時(shí)巡回檢測(cè)物理參數(shù)、例如,對(duì)某個(gè)外部事件進(jìn)行計(jì)數(shù)、定時(shí)巡回檢測(cè)物理參數(shù)、按一定的時(shí)間間隔進(jìn)行現(xiàn)場(chǎng)控制等。按一定的時(shí)間間隔進(jìn)行現(xiàn)場(chǎng)控制等。u 單片機(jī)片內(nèi)集成有單片機(jī)片內(nèi)集成有兩個(gè)兩個(gè)16位可編程的定時(shí)位
46、可編程的定時(shí)/計(jì)數(shù)器計(jì)數(shù)器:T0和和T1,通過(guò)對(duì)它們的特殊功能寄存器,通過(guò)對(duì)它們的特殊功能寄存器(SFR)的編程,可以用的編程,可以用作定時(shí)或計(jì)數(shù)器,此外,作定時(shí)或計(jì)數(shù)器,此外,T1還可以用作為串行口的波特率還可以用作為串行口的波特率發(fā)生器。發(fā)生器。 4.2.1 4.2.1 定時(shí)定時(shí)/ /計(jì)數(shù)器的基本結(jié)構(gòu)計(jì)數(shù)器的基本結(jié)構(gòu)l 1. 定時(shí)定時(shí)/計(jì)數(shù)器的結(jié)構(gòu)計(jì)數(shù)器的結(jié)構(gòu) 基本部件是兩個(gè)基本部件是兩個(gè)16位位寄存器寄存器T0和和T1,每個(gè)分成兩個(gè),每個(gè)分成兩個(gè)8位寄存器位寄存器(例:例:T0由高由高8位位TH0和低和低8位位TL0組成)組成) TMOD:定時(shí):定時(shí)/計(jì)數(shù)器的工作方式寄存器,由它確定定計(jì)
47、數(shù)器的工作方式寄存器,由它確定定時(shí)時(shí)/計(jì)數(shù)器的工作方式和功能;計(jì)數(shù)器的工作方式和功能; TCON:定時(shí):定時(shí)/計(jì)數(shù)器的控制寄存器,用于控制計(jì)數(shù)器的控制寄存器,用于控制T0、T1的啟動(dòng)和停止以及設(shè)置溢出標(biāo)志的啟動(dòng)和停止以及設(shè)置溢出標(biāo)志。 定時(shí)定時(shí)/計(jì)數(shù)器的結(jié)構(gòu)框圖計(jì)數(shù)器的結(jié)構(gòu)框圖l 2. 2. 定時(shí)定時(shí)/ /計(jì)數(shù)器的工作原理計(jì)數(shù)器的工作原理 定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器T0和和T1的實(shí)質(zhì)是的實(shí)質(zhì)是加加“1”計(jì)數(shù)器計(jì)數(shù)器,即每輸入,即每輸入一個(gè)脈沖,計(jì)數(shù)器加一個(gè)脈沖,計(jì)數(shù)器加“1”,當(dāng)加到計(jì)數(shù)器全為,當(dāng)加到計(jì)數(shù)器全為“1”時(shí),時(shí),再輸入一個(gè)脈沖,就使計(jì)數(shù)器回零,且計(jì)數(shù)器的溢出使再輸入一個(gè)脈沖,就使計(jì)數(shù)器
48、回零,且計(jì)數(shù)器的溢出使TCON中的標(biāo)志位中的標(biāo)志位TF0或或TF1置置“1”,向,向CPU發(fā)出中斷發(fā)出中斷請(qǐng)求請(qǐng)求(定時(shí)定時(shí)/計(jì)數(shù)器中斷允許時(shí)計(jì)數(shù)器中斷允許時(shí))。 區(qū)別:作定時(shí)器時(shí)脈沖來(lái)自于內(nèi)部時(shí)鐘振蕩器,作計(jì)數(shù)器區(qū)別:作定時(shí)器時(shí)脈沖來(lái)自于內(nèi)部時(shí)鐘振蕩器,作計(jì)數(shù)器時(shí)脈沖來(lái)自于外部引腳。時(shí)脈沖來(lái)自于外部引腳。1) 定時(shí)器模式定時(shí)器模式 此時(shí)輸入脈沖是由內(nèi)部時(shí)鐘振蕩器的輸出經(jīng)此時(shí)輸入脈沖是由內(nèi)部時(shí)鐘振蕩器的輸出經(jīng)12分頻后送分頻后送來(lái)的。來(lái)的。 如果晶振頻率為如果晶振頻率為12MHz,則一個(gè)機(jī)器周期是,則一個(gè)機(jī)器周期是1us,定,定時(shí)器每接收一個(gè)輸入脈沖的時(shí)間為時(shí)器每接收一個(gè)輸入脈沖的時(shí)間為1us
49、。 要定一段時(shí)間,只需計(jì)算一下脈沖個(gè)數(shù)即可。要定一段時(shí)間,只需計(jì)算一下脈沖個(gè)數(shù)即可。2) 計(jì)數(shù)器模式計(jì)數(shù)器模式 此時(shí)輸入脈沖是由外部引腳此時(shí)輸入脈沖是由外部引腳P3.4(T0)或或P3.5(T1)輸輸入到計(jì)數(shù)器的。入到計(jì)數(shù)器的。 在每個(gè)機(jī)器周期的在每個(gè)機(jī)器周期的S5P2期間采樣期間采樣T0、T1引腳電平。當(dāng)引腳電平。當(dāng)某周期采樣到一高電平輸入,而下一周期又采樣到一低電某周期采樣到一高電平輸入,而下一周期又采樣到一低電平時(shí),則計(jì)數(shù)器加平時(shí),則計(jì)數(shù)器加“1”。 由于檢測(cè)一個(gè)從由于檢測(cè)一個(gè)從“1”到到“0”的下降沿需要的下降沿需要2個(gè)機(jī)器周期個(gè)機(jī)器周期,因此要求被采樣的電平至少要維持一個(gè)機(jī)器周期,因
50、此要求被采樣的電平至少要維持一個(gè)機(jī)器周期,否則否則會(huì)出現(xiàn)漏計(jì)數(shù)現(xiàn)象,所以最高計(jì)數(shù)頻率為晶振頻率的會(huì)出現(xiàn)漏計(jì)數(shù)現(xiàn)象,所以最高計(jì)數(shù)頻率為晶振頻率的1/24。 當(dāng)晶振頻率為當(dāng)晶振頻率為12MHz時(shí),最高計(jì)數(shù)頻率不超時(shí),最高計(jì)數(shù)頻率不超500kHz,即計(jì)數(shù)脈沖的周期要大于即計(jì)數(shù)脈沖的周期要大于2us。4.2.2 4.2.2 定時(shí)定時(shí)/ /計(jì)數(shù)器的控制與實(shí)現(xiàn)計(jì)數(shù)器的控制與實(shí)現(xiàn) l MCS-51單片機(jī)定時(shí)單片機(jī)定時(shí)/計(jì)數(shù)器的控制與實(shí)現(xiàn)由兩個(gè)特殊功計(jì)數(shù)器的控制與實(shí)現(xiàn)由兩個(gè)特殊功能寄存器能寄存器TMOD、 TCON完成。完成。 1. 工作方式寄存器工作方式寄存器 TMOD(89H) 用于設(shè)置定時(shí)用于設(shè)置定時(shí)/
51、計(jì)數(shù)器的工作方式,低計(jì)數(shù)器的工作方式,低4位用于位用于T0,高,高4位位用于用于T1。其格式如下。其格式如下 位位D7D6D5D4D3D2D1D0字節(jié)地址字節(jié)地址TMODGATEC/M1M0GATE C/M1M089HTT(1) GATE:門控位。:門控位。 GATE0時(shí),當(dāng)軟件使時(shí),當(dāng)軟件使TCON中的中的TR0或或TR1設(shè)置為設(shè)置為“1”,則啟動(dòng)定時(shí),則啟動(dòng)定時(shí)/計(jì)數(shù)器工作;計(jì)數(shù)器工作; GATA1時(shí),軟件使時(shí),軟件使TR0或或TR1設(shè)置為設(shè)置為“1”,同時(shí)外部,同時(shí)外部中斷引腳或也為高電平時(shí),才能啟動(dòng)定時(shí)中斷引腳或也為高電平時(shí),才能啟動(dòng)定時(shí)/計(jì)數(shù)器工作。計(jì)數(shù)器工作。(2) C/T :定時(shí)
52、:定時(shí)/計(jì)數(shù)模式選擇位。計(jì)數(shù)模式選擇位。 C/T0為定時(shí)模式;為定時(shí)模式; C/T=1為計(jì)數(shù)模式。為計(jì)數(shù)模式。(3) M1M0 :工作方式設(shè)置位。定時(shí):工作方式設(shè)置位。定時(shí)/計(jì)數(shù)器有計(jì)數(shù)器有4種工作方式種工作方式,由,由M1M0進(jìn)行設(shè)置進(jìn)行設(shè)置 ,如表如表下表下表所示。所示。 T定時(shí)定時(shí)/計(jì)數(shù)器工作方式設(shè)置表計(jì)數(shù)器工作方式設(shè)置表M1M0工作方式工作方式功能說(shuō)明功能說(shuō)明00方式方式013位定時(shí)位定時(shí)/計(jì)數(shù)器計(jì)數(shù)器01方式方式116位定時(shí)位定時(shí)/計(jì)數(shù)器計(jì)數(shù)器10方式方式28位自動(dòng)重裝初值定時(shí)位自動(dòng)重裝初值定時(shí)/計(jì)數(shù)器計(jì)數(shù)器11方式方式3T0分成兩個(gè)獨(dú)立的分成兩個(gè)獨(dú)立的8位定時(shí)位定時(shí)/計(jì)數(shù)器;計(jì)數(shù)器
53、;T1此方式停止計(jì)數(shù)此方式停止計(jì)數(shù)2. 控制寄存器TCON (88H) TCONTCON的低的低4 4位用于控制外部中斷,位用于控制外部中斷,TCONTCON的高的高4 4位用于位用于控制定時(shí)控制定時(shí)/ /計(jì)數(shù)器的啟動(dòng)和中斷申請(qǐng)。計(jì)數(shù)器的啟動(dòng)和中斷申請(qǐng)。位位D7D6D5D4D3D2D1D0字節(jié)地址字節(jié)地址TCONTF1TR1TF0TR088H位地址位地址8FH8EH8DH8CH8BH8AH89H88H(1)(1) TF1TF1:定時(shí):定時(shí)/ /計(jì)數(shù)器計(jì)數(shù)器T1T1溢出中斷請(qǐng)求標(biāo)志位。溢出中斷請(qǐng)求標(biāo)志位。T1T1計(jì)數(shù)溢出計(jì)數(shù)溢出 時(shí)由硬件自動(dòng)置時(shí)由硬件自動(dòng)置TF1TF1為為“1”1”。在進(jìn)入中斷
54、服務(wù)程序后。在進(jìn)入中斷服務(wù)程序后TF1TF1由硬件自動(dòng)清由硬件自動(dòng)清“0”0”;若用于查詢方式,此位可作為狀態(tài);若用于查詢方式,此位可作為狀態(tài)位供查詢,但應(yīng)注意查詢后由軟件清位供查詢,但應(yīng)注意查詢后由軟件清“0”0”。(2) (2) TR1TR1:定時(shí):定時(shí)/ /計(jì)數(shù)器計(jì)數(shù)器T1T1運(yùn)行控制位。運(yùn)行控制位。TR1TR1置置“1”1”時(shí),定時(shí)時(shí),定時(shí)/ / 計(jì)數(shù)器計(jì)數(shù)器T1T1開(kāi)始工作;開(kāi)始工作;TR1TR1置置“0”0”時(shí),定時(shí)時(shí),定時(shí)/ /計(jì)數(shù)器計(jì)數(shù)器T1T1停止停止 工作。工作。TR1TR1由軟件置由軟件置“1”1”或清或清“0”0”。 (3) (3) TF0TF0 :定時(shí):定時(shí)/ /計(jì)數(shù)
55、器計(jì)數(shù)器T0T0溢出中斷請(qǐng)求標(biāo)志位,其功能與溢出中斷請(qǐng)求標(biāo)志位,其功能與 TF1 TF1類同。類同。(4) (4) TR0TR0 :定時(shí):定時(shí)/ /計(jì)數(shù)器計(jì)數(shù)器T0T0運(yùn)行控制位,其功能與運(yùn)行控制位,其功能與TR1TR1類同。類同。4.2.3 4.2.3 定時(shí)定時(shí)/ /計(jì)數(shù)器的工作方式計(jì)數(shù)器的工作方式 MCS-51單片機(jī)定時(shí)單片機(jī)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器T0有有4種工作方式種工作方式(方式方式0、1、2、3); T1有有3種工作方式種工作方式(方式方式0、1、2); T1還可作為串行通信接口的波特率發(fā)生器;還可作為串行通信接口的波特率發(fā)生器; 若錯(cuò)將若錯(cuò)將T1設(shè)置為方式設(shè)置為方式3,則,則T1將停止
56、工作;將停止工作; 下面以定時(shí)下面以定時(shí)/計(jì)數(shù)器計(jì)數(shù)器T0為例進(jìn)行介紹為例進(jìn)行介紹 。o 1. 方式0當(dāng)TMOD的M1M0為00時(shí),定時(shí)/計(jì)數(shù)器工作于方式0,如圖所示。方式0的邏輯結(jié)構(gòu) 方式方式0 0為為1313位計(jì)數(shù),由位計(jì)數(shù),由TL0TL0的低的低5 5位位( (高高3 3位未用位未用) )和和TH0TH0的的8 8位位組成。組成。 TL0TL0的低的低5 5位溢出時(shí)向位溢出時(shí)向TH0TH0進(jìn)位,進(jìn)位,TH0TH0溢出時(shí),置位溢出時(shí),置位TCONTCON中的中的TF0TF0標(biāo)志,向標(biāo)志,向CPUCPU發(fā)出中斷請(qǐng)求。發(fā)出中斷請(qǐng)求。 1313位定時(shí)位定時(shí)/ /計(jì)數(shù)器是為了與計(jì)數(shù)器是為了與Int
57、elIntel公司早期的產(chǎn)品公司早期的產(chǎn)品MCS-48MCS-48系系列兼容,該系列已過(guò)時(shí),且計(jì)數(shù)初值裝入易出錯(cuò),所以在列兼容,該系列已過(guò)時(shí),且計(jì)數(shù)初值裝入易出錯(cuò),所以在實(shí)際應(yīng)用中常由實(shí)際應(yīng)用中常由1616位的方式位的方式1 1取代。取代。o 2. 方式方式1 當(dāng)當(dāng)M1M0為為01時(shí),定時(shí)時(shí),定時(shí)/計(jì)數(shù)器工作于方式計(jì)數(shù)器工作于方式1,如圖所示。,如圖所示。 方式1的邏輯結(jié)構(gòu) 方式方式1的計(jì)數(shù)位數(shù)是的計(jì)數(shù)位數(shù)是16位,由位,由TL0作為低作為低8位、位、TH0 作為高作為高8位,組成了位,組成了16位加位加“1”計(jì)數(shù)器。計(jì)數(shù)器。 計(jì)數(shù)個(gè)數(shù)計(jì)數(shù)個(gè)數(shù)M與計(jì)數(shù)初值與計(jì)數(shù)初值N的關(guān)系為的關(guān)系為M216N
58、。 用于定時(shí)功能時(shí),定時(shí)時(shí)間用于定時(shí)功能時(shí),定時(shí)時(shí)間t的計(jì)算公式為:的計(jì)算公式為:t=M機(jī)器周期機(jī)器周期=(216N )機(jī)器周期機(jī)器周期 若晶振頻率為若晶振頻率為12MHz,機(jī)器周期,機(jī)器周期=1us,初值,初值N=0 65535范圍時(shí),則可定時(shí)范圍為范圍時(shí),則可定時(shí)范圍為165.536ms。 用于計(jì)數(shù)功能時(shí),初值用于計(jì)數(shù)功能時(shí),初值N=065535范圍時(shí),計(jì)數(shù)范圍時(shí),計(jì)數(shù) 范圍為范圍為165536。o 3. 方式方式2 當(dāng)當(dāng)M1M0為為10時(shí),定時(shí)時(shí),定時(shí)/計(jì)數(shù)器工作在方式計(jì)數(shù)器工作在方式2,其邏,其邏輯結(jié)構(gòu)如圖所示。輯結(jié)構(gòu)如圖所示。方式2的邏輯結(jié)構(gòu) 方式方式2為為自動(dòng)重裝初值的自動(dòng)重裝初值
59、的8位計(jì)數(shù)方式位計(jì)數(shù)方式。 TL0作為作為8位定時(shí)位定時(shí)/計(jì)數(shù)器使用,計(jì)數(shù)器使用,TH0為為8位初值寄存位初值寄存器,保持不變。器,保持不變。 當(dāng)當(dāng)TL0計(jì)滿溢出時(shí),由硬件使計(jì)滿溢出時(shí),由硬件使TF0置置“1”,向,向CPU發(fā)發(fā)出中斷請(qǐng)求,而溢出脈沖打開(kāi)出中斷請(qǐng)求,而溢出脈沖打開(kāi)TL0與與TH0之間的三態(tài)之間的三態(tài)門,將門,將TH0中的計(jì)數(shù)初值自動(dòng)送入中的計(jì)數(shù)初值自動(dòng)送入TL0。TL0從初值從初值重新進(jìn)行加重新進(jìn)行加“1”計(jì)數(shù)。周而復(fù)始,直至計(jì)數(shù)。周而復(fù)始,直至TR0=0才會(huì)才會(huì)停止。停止。 計(jì)數(shù)個(gè)數(shù)計(jì)數(shù)個(gè)數(shù)M與計(jì)數(shù)初值與計(jì)數(shù)初值N的關(guān)系為的關(guān)系為M28N。 用于定時(shí)功能時(shí),定時(shí)時(shí)間用于定時(shí)功
60、能時(shí),定時(shí)時(shí)間t的計(jì)算公式為的計(jì)算公式為t=M機(jī)器周期機(jī)器周期=(28N )機(jī)器周期機(jī)器周期若晶振頻率為若晶振頻率為12MHz,機(jī)器周期,機(jī)器周期=1,初值,初值N=0255范范圍時(shí),則可定時(shí)范圍為圍時(shí),則可定時(shí)范圍為1256。 用于計(jì)數(shù)功能時(shí),初值用于計(jì)數(shù)功能時(shí),初值N=0255范圍時(shí),計(jì)數(shù)范圍為范圍時(shí),計(jì)數(shù)范圍為1256。o 由于工作方式由于工作方式2省去了重裝常數(shù)的程序,特別適合于用作省去了重裝常數(shù)的程序,特別適合于用作波特率發(fā)生器。波特率發(fā)生器。o 4. 方式方式3 當(dāng)當(dāng)M1M0為為11時(shí),時(shí),T0被設(shè)置為方式被設(shè)置為方式3,其邏輯結(jié)構(gòu),其邏輯結(jié)構(gòu)如圖所示。如圖所示。 T0方式方式3的
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 測(cè)繪管理與法律法規(guī)-注冊(cè)測(cè)繪師《測(cè)繪管理與法律法規(guī)》名師預(yù)測(cè)卷1
- 課題申報(bào)參考:跨學(xué)科主題教學(xué)的價(jià)值、困境及出路研究
- 科技產(chǎn)品創(chuàng)新與安全生產(chǎn)的平衡
- 讀書助力職業(yè)發(fā)展-職場(chǎng)類書籍閱讀推廣方案
- 二零二四年幼兒早教中心品牌經(jīng)營(yíng)許可及資產(chǎn)轉(zhuǎn)讓合同3篇
- 2025年貨運(yùn)飛機(jī)保險(xiǎn)合同
- 救生員勞務(wù)合同
- 2025年人教版(2024)九年級(jí)歷史上冊(cè)月考試卷含答案
- 2025年湘教版高三歷史下冊(cè)階段測(cè)試試卷含答案
- 2025年湘教版選修3歷史上冊(cè)階段測(cè)試試卷含答案
- 中央2025年國(guó)務(wù)院發(fā)展研究中心有關(guān)直屬事業(yè)單位招聘19人筆試歷年參考題庫(kù)附帶答案詳解
- 2024年09月北京中信銀行北京分行社會(huì)招考(917)筆試歷年參考題庫(kù)附帶答案詳解
- 外呼合作協(xié)議
- 小學(xué)二年級(jí)100以內(nèi)進(jìn)退位加減法800道題
- 保險(xiǎn)公司2025年工作總結(jié)與2025年工作計(jì)劃
- 2024年公司領(lǐng)導(dǎo)在新年動(dòng)員會(huì)上的講話樣本(3篇)
- 眼科護(hù)理進(jìn)修專題匯報(bào)
- 介入手術(shù)室感染控制管理
- 2024北京初三(上)期末英語(yǔ)匯編:材料作文
- 2024年大型風(fēng)力發(fā)電項(xiàng)目EPC總承包合同
- 禮儀服務(wù)合同三篇
評(píng)論
0/150
提交評(píng)論