版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第6章 8051單片機(jī)的中斷系統(tǒng)6.1 微型計(jì)算機(jī)中斷技術(shù)概述6.1.1 中斷的概念1.中斷及中斷技術(shù)的特點(diǎn) 計(jì)算機(jī)在執(zhí)行某一程序的過程中,由于計(jì)算機(jī)系統(tǒng)之外的某種原因,有必要盡快地中止當(dāng)前程序的運(yùn)行,而去執(zhí)行相應(yīng)的處理程序,待處理程序結(jié)束后,再返回來(lái)繼續(xù)執(zhí)行被中止了的那個(gè)程序。這種某一程序在執(zhí)行過程中由于外界的原因,中間被打斷的情況就稱為“中斷”。“中斷”類似于程序設(shè)計(jì)中的調(diào)用子程序,區(qū)別在于這些外部原因的發(fā)生是隨機(jī)的,而子程序調(diào)用是程序設(shè)計(jì)人員事先安排好的。能夠打斷當(dāng)前程序的外部事件,被稱為中斷源。中斷屬于一種對(duì)事件的實(shí)時(shí)處理過程,中斷源可能隨時(shí)迫使CPU停止當(dāng)前正在執(zhí)行的工作,轉(zhuǎn)而去處理
2、中斷源指示的另一項(xiàng)工作,待后者完成后,再返回原來(lái)工作的“斷點(diǎn)”處,繼續(xù)原來(lái)的工作。一個(gè)計(jì)算機(jī)一般具有多個(gè)中斷源,這就存在中斷優(yōu)先權(quán)和中斷嵌套的問題。例如,一個(gè)人在讀書時(shí)如果接了電話并且正在通話時(shí),又有人敲門,由于敲門的優(yōu)先權(quán)更高,這個(gè)人又“響應(yīng)”這個(gè)敲門的中斷申請(qǐng),暫停通話,去與敲門人交談;交談完畢,接著原來(lái)的話茬繼續(xù)通話,直到通話完畢,再返回書桌前繼續(xù)看書。這里,敲門的中斷源就比電話的中斷源優(yōu)先權(quán)高,因此,出現(xiàn)了中斷嵌套,即高級(jí)優(yōu)先權(quán)的中斷源可以打斷低級(jí)中斷優(yōu)先權(quán)的中斷服務(wù)程序,而去執(zhí)行高級(jí)中斷源的中斷處理,直至該處理程序完畢,再返回接著執(zhí)行低級(jí)中斷源的中斷服務(wù)程序,直至這個(gè)處理程序完畢,最
3、后返回主程序。計(jì)算機(jī)響應(yīng)中斷的條件是,計(jì)算機(jī)的CPU是處于開中斷狀態(tài)的,同時(shí)只能在一條指令執(zhí)行完畢后才能響應(yīng)中斷請(qǐng)求。2.中斷功能 利用中斷技術(shù),使計(jì)算機(jī)能夠完成更多的功能。(1)可實(shí)現(xiàn)高速CPU; (2) 可實(shí)現(xiàn)實(shí)時(shí)處理; (3) 實(shí)現(xiàn)故障的緊急處理; (4)便于人機(jī)聯(lián)系。 總之,隨著計(jì)算機(jī)硬件軟件技術(shù)的發(fā)展,中斷技術(shù)也在不斷豐富,所以中斷功能已經(jīng)成為評(píng)價(jià)計(jì)算機(jī)系統(tǒng)的整體性能的一項(xiàng)重要指標(biāo)。6.1.2中斷處理過程CPU響應(yīng)中斷源的中斷請(qǐng)求后,就轉(zhuǎn)去進(jìn)行中斷處理。不同的中斷源,其中斷處理內(nèi)容可能不同,但其主要內(nèi)容及順序都如圖6-1所示。圖6-1 中斷處理流程從圖6-1可以看到中斷處理的過程,下
4、面做幾點(diǎn)補(bǔ)充說(shuō)明:1. 保護(hù)現(xiàn)場(chǎng)與恢復(fù)現(xiàn)場(chǎng) 為了使中斷服務(wù)程序的執(zhí)行不破壞CPU中寄存器或存儲(chǔ)單元的原有內(nèi)容,以免在中斷返回后影響主程序的運(yùn)行,因此,要把CPU中有關(guān)寄存器或存儲(chǔ)單元的內(nèi)容推入堆棧中保護(hù)起來(lái),這就是所謂保護(hù)現(xiàn)場(chǎng)。而在中斷服務(wù)程序結(jié)束時(shí)和返回主程序之前,則需要把保護(hù)起來(lái)的那些現(xiàn)場(chǎng)內(nèi)容從堆棧中彈出,以便恢復(fù)寄存器或存儲(chǔ)單元原有的內(nèi)容,這就是恢復(fù)現(xiàn)場(chǎng)。注意一定要按先進(jìn)后出的原則進(jìn)行推入和彈出堆棧。2. 開中斷與關(guān)中斷 在中斷處理正在進(jìn)行的過程中,可能又有新的中斷請(qǐng)求到來(lái),一般說(shuō)來(lái),為防止這種高于當(dāng)前優(yōu)先級(jí)的中斷請(qǐng)求打斷當(dāng)前的中斷服務(wù)程序的執(zhí)行,CPU響應(yīng)中斷后應(yīng)關(guān)斷(很多CPU是自動(dòng)
5、關(guān)中斷的,但8051單片機(jī)不是自動(dòng)關(guān)閉的,需要用軟件指令關(guān)閉),而在編寫保護(hù)現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)的程序時(shí),也應(yīng)在關(guān)閉中斷后進(jìn)行,以免使保護(hù)現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)的工作不被干擾,這樣,就可屏蔽其他中斷請(qǐng)求了。如果要想響應(yīng)更高級(jí)的中斷源的中斷請(qǐng)求那么應(yīng)在現(xiàn)場(chǎng)保護(hù)之后,將CPU處于開中斷的狀態(tài),這樣就使系統(tǒng)具有中斷嵌套的功能。對(duì)于不同的CPU, 開中斷和關(guān)中斷的方法有所不同,有關(guān)8051單片機(jī)的開中斷和關(guān)中斷的辦法將在下節(jié)敘述。 3.中斷服務(wù) 中斷服務(wù)是中斷處理程序的主要內(nèi)容,將根據(jù)中斷功能去編寫,以滿足用戶的需要。復(fù)雜的中斷服務(wù)程序也可以用子程序形式。4.中斷返回 中斷返回是把當(dāng)前運(yùn)行的中斷服務(wù)程序轉(zhuǎn)回到被中斷
6、請(qǐng)求中斷的主程序上來(lái)。中斷返回指令與子程序返回不同,用專用的中斷返回指令RETI來(lái)完成。因此,這條指令是中斷服務(wù)程序的最后一條指令;另外,開中斷后,必須運(yùn)行一條指令后才有響應(yīng)中斷的可能性,所以,后面緊跟一條RETI指令,在執(zhí)行完RETI指令前不可能響應(yīng)新的中斷申請(qǐng)。6.2 8051單片機(jī)的中斷控制由于單片機(jī)的結(jié)構(gòu)和功能有限,中斷系統(tǒng)不算復(fù)雜。但從實(shí)際應(yīng)用的角度來(lái)看,8051單片機(jī)的中斷系統(tǒng)已足夠。下面針對(duì)8051單片機(jī)的中斷系統(tǒng)做詳細(xì)介紹。6.2.1中斷源與中斷標(biāo)志位8051型單片機(jī)提供了5個(gè)中斷源:兩個(gè)外部中斷源和三個(gè)內(nèi)部中斷源,8052增加了一個(gè)中斷源定時(shí)器2中斷。每一個(gè)中斷源都有一個(gè)中斷
7、申請(qǐng)標(biāo)志,但串行口占兩個(gè)中斷標(biāo)志位,一共六個(gè)中斷標(biāo)志,表6-1給出了它們的名稱。表6-1 中斷源和中斷申請(qǐng)標(biāo)志分 類中斷源名稱中斷申請(qǐng)標(biāo)志觸發(fā)方式中斷入口地址外部中斷外部中斷0IE0(TCON.1)INT0(P3.2)引腳上的低電平/下降沿引起的中斷0003H內(nèi)部中斷T0定時(shí)器/計(jì)數(shù)器0中斷IF0(TCON.5)T0定時(shí)器/計(jì)數(shù)器溢出后引起的中斷000BH外部中斷外部中斷1IE1(TCON.3)INT1(P3.3)引腳上的低電平/下降沿引起的中斷0013H內(nèi)部中斷T1定時(shí)器/計(jì)數(shù)器1中斷IF1(TCON.7)T1定時(shí)器/計(jì)數(shù)器溢出后引起的中斷001BH內(nèi)部中斷串口中斷RI (SCON.0)TI
8、 ( SCON.1)串行口接收完成或發(fā)送完一幀數(shù)據(jù)后引起的中斷0023H外/內(nèi)部中斷定時(shí)器2中斷(僅8052)TF2(T2CON.7)EXF2(T2CON.6)T2定時(shí)器/計(jì)數(shù)器計(jì)數(shù)滿后溢出,置標(biāo)志位TF2;或當(dāng)外部輸入T2EX發(fā)生從1到0的下降時(shí)置標(biāo)志位EXF2,引起中斷002BH(1)外部中斷源,指可以向單片機(jī)提出中斷申請(qǐng)的外部原因引起的,共有兩個(gè)中斷源:外部中斷0和外部中斷1,它們的請(qǐng)求信號(hào)分別由引腳 (P3.2)和 (P3.3 )接入。外部中斷的信號(hào)被稱為外部事件,這個(gè)信號(hào)究竟是低電平有效還是下降沿有效,可以被軟件設(shè)定,稱之為“外部中斷觸發(fā)方式選擇”。(2)內(nèi)部中斷源,有定時(shí)器中斷和串
9、行中斷兩種。定時(shí)器中斷是為滿足定時(shí)或計(jì)數(shù)的需要而設(shè)置的。在8051單片機(jī)內(nèi)部有兩個(gè)定時(shí)器計(jì)數(shù)器,當(dāng)其內(nèi)部計(jì)數(shù)器溢出時(shí),即表明定時(shí)時(shí)間已到或計(jì)數(shù)值已滿,這時(shí)就以計(jì)數(shù)溢出作為中斷請(qǐng)求去置位一個(gè)標(biāo)志位,作為單片機(jī)接收中斷請(qǐng)求的標(biāo)志。這個(gè)中斷請(qǐng)求是在單片機(jī)內(nèi)部發(fā)生的,因此,無(wú)需從單片機(jī)芯片的外部引入輸入端。串行中斷是為串行數(shù)據(jù)傳送的需要而設(shè)計(jì)的,每當(dāng)串行口接收和發(fā)送完一幀串行數(shù)據(jù)時(shí),就產(chǎn)生一個(gè)中斷請(qǐng)求。至于中斷申請(qǐng)標(biāo)志位,是在兩個(gè)特殊功能寄存器TCON和SCON中定義了相應(yīng)位作為中斷標(biāo)志位;當(dāng)其中某位為0時(shí),相應(yīng)的中斷源沒有提出中斷申請(qǐng),當(dāng)其中某位變成1時(shí),表示相應(yīng)中斷源已經(jīng)提出了中斷申請(qǐng)。對(duì)于這些申
10、請(qǐng)何時(shí)予以響應(yīng),由硬件和軟件共同確定。所有的中斷申請(qǐng)標(biāo)志位都可以由軟件置位或清0,其效果與硬件置位(置1)或清0標(biāo)志位是相同的。這就是說(shuō),可以由軟件產(chǎn)生或者撤銷一次中斷申請(qǐng)。8052單片機(jī)增加了定時(shí)器2,當(dāng)定時(shí)/計(jì)數(shù)器方式的計(jì)數(shù)器(TH2,TL2)計(jì)數(shù)滿后溢出,置位中斷請(qǐng)求標(biāo)志位TF2(T2CON.7),向CPU申請(qǐng)中斷處理;當(dāng)外部輸入端口T2EX(P1.1)發(fā)生從10下降沿時(shí),也將置位中斷請(qǐng)求標(biāo)志位EXF2(T2CON.6),向CPU申請(qǐng)中斷處理。6.2.2 與中斷有關(guān)的特殊功能寄存器SFR與中斷有關(guān)的特殊功能寄存器是中斷允許控制寄存器(IE)、 定時(shí)器控制寄存器(TCON)、中斷優(yōu)先級(jí)控制
11、寄存器(IP)及串行口控制寄存器(SCON)。這四個(gè)寄存器都屬于專用寄存器,且可以位尋址,通過置位和清零這些位以便對(duì)中斷進(jìn)行控制。1. 中斷允許控制寄存器(IE) 這個(gè)特殊功能寄存器的字節(jié)地址為0A8H,其位地址為0A8H0AFH,也可以用IE.0IE.7表示。該寄存器中各位的定義及位地址表示如下:位地址AFHAEHADHACHABHAAHA9HA8H位符號(hào)EAET2ESET1EX1ET0EX0其中只有7位有定義,它們是:EA中斷允許的總控制位。 EA=0時(shí),中斷總禁止相當(dāng)于關(guān)中斷,即禁止所有中斷。 EA=1時(shí),中斷總允許,相當(dāng)于開中斷??偟闹袛嘣试S后,各個(gè)中斷源是否可以申請(qǐng)中斷,則由其余各中
12、斷源的中斷允許位進(jìn)行控制。EX0外部中斷0允許控制位,當(dāng)EX0=0,禁止外中斷0;EX0=1,允許外中斷0。EX1外部中斷1允許控制位,當(dāng)EX1=0,禁止外中斷1;EX1=1,允許外中斷1。ET0定時(shí)器0中斷允許控制位,當(dāng)ET0=0, 禁止該中斷;ET0=1,允許定時(shí)器0中斷。ET1定時(shí)器1中斷允許控制位,當(dāng)ET1=0,禁止該中斷;ET1=1,允許定時(shí)器1中斷。ES串行口中斷允許控制位,當(dāng)ES=0,禁止串行中斷;ES=1,允許串行中斷。ET2定時(shí)器2中斷允許控制位,當(dāng)ET2=0,禁止該中斷;ET2=1,允許定時(shí)器2中斷。由上可見,8051單片機(jī)通過中斷允許控制寄存器進(jìn)行兩級(jí)中斷控制。EA位作為
13、總控制位,以各中斷源的中斷允許位作為分控制位。但總控制位為禁止(EA=0)時(shí),無(wú)論其它位是1或0,整個(gè)中斷系統(tǒng)是關(guān)閉的。只有總控制位為1時(shí),才允許由各分控制位設(shè)定禁止或允許中斷,因此,單片機(jī)復(fù)位時(shí),IE寄存器的初值是(IE)=00H,中斷系統(tǒng)是處于禁止?fàn)顟B(tài),即關(guān)中斷。還要注意,單片機(jī)在響應(yīng)中斷后不會(huì)自動(dòng)關(guān)中斷(8086等很多CPU響應(yīng)中斷后則自動(dòng)關(guān)中斷),因此,如果在轉(zhuǎn)入中斷處理程序后,如果想禁止更高級(jí)的中斷源的中斷申請(qǐng),可以用軟件方式關(guān)閉中斷。對(duì)于中斷允許寄存器狀態(tài)的設(shè)置,由于IE既可以字節(jié)尋址又可以位尋址,因此,對(duì)該寄存器的設(shè)置既能夠用字節(jié)操作指令,也可以使用位操作指令進(jìn)行設(shè)置。例如,假定
14、要開放外中斷0,使用字節(jié)操作的指令是: MOV IE, #81H如果使用位操作指令則需要兩條指令,但更清晰 SETB EA SETB EX02.定時(shí)器控制寄存器(TCON) 該寄存器的字節(jié)地址為88H,位地址88H8FH,也可以用TCON.0TCON.7表示。寄存器的定義及位地址表示如下:位地址8FH8EH8DH8CH8BH8AH89H88H位符號(hào)TF1TR1TF0TR0IE1IT1IE0IT0這個(gè)寄存器既有中斷控制功能,又有定時(shí)器/計(jì)數(shù)器的控制功能。其中與中斷有關(guān)的控制位有6位:IE0 外部中斷0 ()請(qǐng)求標(biāo)志位,當(dāng)CPU采樣到 引腳出現(xiàn)中斷請(qǐng)求后,此位由硬件置1。在中斷響應(yīng)完成后轉(zhuǎn)向中斷服
15、務(wù)程序時(shí),再由硬件自動(dòng)清0。這樣,就可以接收下一次外中斷源的請(qǐng)求。IE1 外中斷1 ()請(qǐng)求標(biāo)志位,功能同上。IT0 外中斷0請(qǐng)求信號(hào)方式控制位,當(dāng)IT0 =1,后沿負(fù)跳變有效; IT0 = 0,低電平有效。此位可由軟件置1或清0。IT1 外中斷1請(qǐng)求信號(hào)方式控制位,IT1=1,后沿負(fù)跳變有效;IT1 = 0,低電平有效。TF0 計(jì)數(shù)器0溢出標(biāo)志位,當(dāng)計(jì)數(shù)器0產(chǎn)生計(jì)數(shù)溢出時(shí),該位由硬件置1,當(dāng)轉(zhuǎn)到中斷服務(wù)程序時(shí),再由硬件自動(dòng)清0。這個(gè)標(biāo)志位的使用有兩種情況:當(dāng)采用中斷方式時(shí),把它作為中斷請(qǐng)求標(biāo)志位用,該位為1,當(dāng)CPU開中斷時(shí),則CPU響應(yīng)中斷;而采用查詢方式時(shí),作查詢狀態(tài)位使用。TF1 計(jì)數(shù)
16、器1溢出標(biāo)志位,功能同TF0。3.中斷優(yōu)先級(jí)控制寄存器(IP) 8051中斷優(yōu)先級(jí)的控制比較簡(jiǎn)單,因?yàn)橄到y(tǒng)只定義了高低兩個(gè)優(yōu)先級(jí),各中斷源的優(yōu)先級(jí)由特殊功能寄器IP設(shè)定。通過對(duì)特殊功能寄器IP的編程,可以把五個(gè)(8052六個(gè))中斷源分別定義在兩個(gè)優(yōu)先級(jí)中。IP是中斷優(yōu)先級(jí)寄存器,可以位尋址。IP的低6位分別各對(duì)應(yīng)一個(gè)中斷源:某位為1時(shí),相應(yīng)的中斷源定義為高優(yōu)先級(jí);某位為0時(shí),定義為低優(yōu)先級(jí)。軟件可以隨時(shí)對(duì)IP的各位清零或置位。IP寄存器的字節(jié)地址為0B8H,位地址為0B8H0BFH,或用IP.0IP.7表示。寄存器的定義和位地址表如下:位地址BFHBEHBDHBCHBBHBAHB9HB8H位符
17、號(hào)PT2(IP.5)PS(IP.4)PT1(IP.3)PX1(IP.2)PT0(IP.1)PX0(IP.0) PX0外部中斷0優(yōu)先級(jí)設(shè)定位;該位為0優(yōu)先級(jí)為低;該位為1,優(yōu)先級(jí)為高。 PT0定時(shí)中斷0優(yōu)先級(jí)設(shè)定位;定義同上。 PX1外部中斷1優(yōu)先級(jí)設(shè)定位;定義同上。 PT1定時(shí)中斷1優(yōu)先級(jí)設(shè)定位;定義同上。 PS 串行中斷優(yōu)先級(jí)設(shè)定位;定義同上。 PT2定時(shí)中斷2優(yōu)先級(jí)設(shè)定位;定義同上。(僅8052)另外,8051單片機(jī)的硬件把全部中斷源在同一個(gè)優(yōu)先級(jí)的情況下按下列順序排列了優(yōu)先權(quán), 優(yōu)先權(quán)最高,定時(shí)器2優(yōu)先權(quán)最低: 一個(gè)中斷服務(wù)子程序被另一個(gè)中斷申請(qǐng)所中斷,被稱為中斷嵌套。8051單片機(jī)至少
18、可以實(shí)現(xiàn)兩級(jí)中斷嵌套。圖6-2是兩級(jí)中斷嵌套的示意圖。圖6-2 兩級(jí)中斷嵌套示意圖在中斷開放的條件下,中斷優(yōu)先級(jí)結(jié)構(gòu)解決了如下兩個(gè)向題:1)正在執(zhí)行一個(gè)中斷服務(wù)子程序時(shí),如果發(fā)生了另一個(gè)中斷申請(qǐng),CPU是否立即響應(yīng)它而形成中斷嵌套;2)如果一個(gè)中斷服務(wù)子程序執(zhí)行完之后,發(fā)現(xiàn)已經(jīng)有若干中斷都提出了申請(qǐng),那么應(yīng)該先響應(yīng)哪一個(gè)申請(qǐng)。在開放中斷的條件下,用下述四個(gè)原則使用中斷優(yōu)先級(jí)結(jié)構(gòu):(1)非中斷服務(wù)子程序可以被任何一個(gè)中斷申請(qǐng)所中斷,而與優(yōu)先級(jí)結(jié)構(gòu)無(wú)關(guān)。 (2)如果若干中斷同時(shí)提出申請(qǐng),則CPU將選擇優(yōu)先級(jí)、優(yōu)先權(quán)最高者予以響應(yīng)。 (3)低優(yōu)先級(jí)可以被高優(yōu)先級(jí)的中斷申請(qǐng)所中斷。換句話說(shuō),同級(jí)不能形
19、成嵌套、高優(yōu)先級(jí)不能被低優(yōu)先級(jí)嵌套,當(dāng)禁止嵌套時(shí),必須執(zhí)行完當(dāng)前中斷服務(wù)子程序之后才考慮是否響應(yīng)另一個(gè)中斷申請(qǐng)。 (4)同一個(gè)優(yōu)先級(jí)里,優(yōu)先權(quán)的順序是由硬件決定而不能改變的。但是用戶可以通過改變優(yōu)先級(jí)的方法改變中斷響應(yīng)的順序。例如,8051單片機(jī)中串行口的優(yōu)先權(quán)最低,但是可以在中斷優(yōu)先級(jí)寄存器IP中寫入10H,則只有串行口是最高優(yōu)先級(jí)。若同時(shí)有若干中斷提出申請(qǐng),則一定會(huì)優(yōu)先響應(yīng)串行口的申請(qǐng)。 805l復(fù)位以后,特殊功能寄存器IP的內(nèi)容為00H。所以在初始化程序中要考慮到對(duì)其編程。4. 串行口控制寄存器(SCON) 其寄存器字節(jié)地址為98H,位地址98H9FH,或SCON.0SCON.7,寄存器
20、的定義和位地址表示如下:位地址9FH9EH9DH9CH9BH9AH99H98H位符號(hào)SM0SM1SM2RENTB8RB8TIRI其中與中斷有關(guān)的控制位共兩位:(1) TI串行口中斷請(qǐng)求標(biāo)志位。當(dāng)發(fā)送完一幀串行數(shù)據(jù)后,由硬件中斷置1,在轉(zhuǎn)向中斷服務(wù)程序后,用軟件清0。(2) RI串行口接收中斷請(qǐng)求標(biāo)志位。當(dāng)接收完一幀串行數(shù)據(jù)后,由硬件中斷置1,在轉(zhuǎn)向中斷服務(wù)程序后,用軟件清0。串行中斷請(qǐng)求由TI和RI的邏輯或得到,即無(wú)論是發(fā)送標(biāo)志還是接收標(biāo)志都會(huì)產(chǎn)生串行中斷請(qǐng)求。8051單片機(jī)中斷系統(tǒng)示意圖如圖6-3所示。6.2.3 中斷響應(yīng)過程中斷響應(yīng)就是CPU對(duì)某一中斷源所提出的中斷請(qǐng)求的響應(yīng)。中斷請(qǐng)求被C
21、PU響應(yīng)后,再經(jīng)過一系列的操作,然后才轉(zhuǎn)向中斷服務(wù)程序,完成中斷所要求的處理任務(wù),對(duì)8051的整個(gè)中斷響應(yīng)過程,分為以下幾個(gè)問題順序進(jìn)行說(shuō)明。1.對(duì)外中斷請(qǐng)求的采樣 中斷響應(yīng)過程的第一步是中斷請(qǐng)求采樣。所謂中斷請(qǐng)求采樣,就是如何識(shí)別外部中斷請(qǐng)求信號(hào),并把它鎖定在定時(shí)器控制寄存器(TCON )的相應(yīng)標(biāo)志位中,只有兩個(gè)外中斷源才有采樣問題。8051單片機(jī)的每個(gè)機(jī)器周期的S5P2(第5狀態(tài)第2節(jié)拍)對(duì)外中斷請(qǐng)求引腳( P3.2和P3.3 )進(jìn)行采樣。如果有中斷請(qǐng)求,則把 IE0 或 IE1 置位。外中斷0 ()和外部中斷1 ()是兩套相同的中斷系統(tǒng),只是使用的管腳和特殊功能寄存器中的控制位不同。了解
22、的工作原理,就可理解的工作原理。外部中斷0,使用了管腳P3.2的第二功能。只要該引腳上得到了從外設(shè)送來(lái)的“適當(dāng)信號(hào)” 圖6-3 8051單片機(jī)中斷系統(tǒng)示意圖就可以導(dǎo)致標(biāo)志位 IE0 硬件置位。其過程如下:(1)外部中斷的觸發(fā)方式選擇。什么是外設(shè)的“適當(dāng)信號(hào)”呢?首先要看特殊功能寄存器中的一位TCON. 0位,它被稱為“外部中斷0的觸發(fā)方式控制位IT0”。當(dāng)預(yù)置IT0 = 0時(shí),被稱為“電平觸發(fā)方式”,即P3.2腳上的低電平可以向CPU申請(qǐng)中斷。而當(dāng)IT0=1時(shí),P3.2上每一個(gè)下降沿都觸發(fā)一次中斷。這就是兩種觸發(fā)方式的選擇。為什么又增加了一種沿觸發(fā)方式呢?因?yàn)槭褂秒娖接|發(fā)方式時(shí),如果 P3.2
23、 腳上申請(qǐng)中斷的低電平持續(xù)時(shí)間很長(zhǎng),在執(zhí)行完一遍中斷服務(wù)子程序之后,該低電平仍未撤銷,那么還會(huì)引起下一次中斷申請(qǐng),甚至若干次中斷申請(qǐng),直至 P3.2 腳上的電平變高時(shí)為止。這種情況下可能產(chǎn)生操作錯(cuò)誤,所以才引入了第二種觸發(fā)方式:每個(gè)下降沿引起一次中斷申請(qǐng),其后的低電平持續(xù)時(shí)間內(nèi)不再會(huì)引起錯(cuò)誤的中斷申請(qǐng)。這就又引起了另一項(xiàng)規(guī)定:凡是采用電平觸發(fā)的情況下,在這次中斷服務(wù)子程序執(zhí)行完之前,P3.2腳上的低電平必須變成高電平。正是由于這條規(guī)定,人們習(xí)慣于選擇“沿觸發(fā)方式”,很少使用電平觸發(fā)方式。(2)中斷標(biāo)志位IE0一旦被置位,就認(rèn)為中斷申請(qǐng)己經(jīng)提出,是否響應(yīng)中斷則應(yīng)由特殊功能寄存器 IE 和 IP
24、決定。如果CPU響應(yīng)了這個(gè)中斷,則應(yīng)該清除標(biāo)志位IE0;對(duì)于邊沿觸發(fā)方式,此時(shí)硬件能夠自動(dòng)清IE0,對(duì)于電平觸發(fā)方式,只有外部中斷申請(qǐng)信號(hào)變成高電平,才能夠自動(dòng)清除中斷標(biāo)志位。如果CPU暫時(shí)不能夠響應(yīng)中斷,則 IE0 始終為1,表示中斷申請(qǐng)有效。(3)除外中斷,其他中斷源的中斷請(qǐng)求都在單片機(jī)芯片的內(nèi)部可以直接置位相應(yīng)的中斷請(qǐng)求標(biāo)志位,因此,不存在中斷請(qǐng)求標(biāo)志位問題。但仍然存在從中斷請(qǐng)求信號(hào)的產(chǎn)生到中斷請(qǐng)求標(biāo)志位置位的過程。圖6-3左側(cè)表示了中斷請(qǐng)求標(biāo)志位與中斷請(qǐng)求信號(hào)的關(guān)系。2.中斷查詢與響應(yīng) 采樣是解決外中斷請(qǐng)求的鎖定問題,即把有效的外中斷請(qǐng)求信號(hào)鎖定在各個(gè)中斷請(qǐng)求標(biāo)志位中。余下的問題就是C
25、PU如何知道中斷請(qǐng)求的發(fā)生,CPU是通過對(duì)中斷請(qǐng)求標(biāo)志位的查詢來(lái)確定中斷的產(chǎn)生,一般把這個(gè)查詢叫做中斷查詢。因此,8051單片機(jī)在每一個(gè)機(jī)器周期的最后一個(gè)狀態(tài)(S6),按前述的優(yōu)先級(jí)順序?qū)χ袛嗾?qǐng)求標(biāo)志位進(jìn)行查詢。如果查詢到標(biāo)志位為1,則表明有中斷請(qǐng)求產(chǎn)生,因此,就緊跟著的下一個(gè)機(jī)器周期的S1狀態(tài)進(jìn)行中斷響應(yīng)。中斷響應(yīng)過程如下: (1) 由硬件自動(dòng)生成一個(gè)長(zhǎng)調(diào)用指令 LCALL addrl6。這里的地址就是中斷程序入口地址, 詳見表6-1。(2) 生成了 LCALL 指令后,CPU執(zhí)行該指令,首先將程序計(jì)數(shù)器PC當(dāng)前的內(nèi)容壓入堆棧,稱為保護(hù)斷點(diǎn)。(3) 再將中斷入口地址裝入PC,使程序執(zhí)行,于是
26、轉(zhuǎn)向相應(yīng)的中斷入口地址。但各個(gè)中斷入口地址只相差8個(gè)字節(jié)單元,多數(shù)情況下難以存放一個(gè)完整的中斷服務(wù)程序。因此,一般是在這個(gè)中斷入口地址處存放一條無(wú)條件轉(zhuǎn)移指令( LJMP addr16 )指令,使程序轉(zhuǎn)移到addr16處,在這里執(zhí)行中斷服務(wù)程序。然而如果存在下列情況時(shí),中斷請(qǐng)求不予響應(yīng):(1) CPU正處于一個(gè)同級(jí)的或更高級(jí)的中斷服務(wù)中。(2)當(dāng)前指令是中斷返回(RETI )或子程序返回(RET)、訪問IE、IP的指令。這些指令規(guī)定:必須在完成這些指令后,還應(yīng)接著執(zhí)行一條后面的指令后才能夠響應(yīng)中斷請(qǐng)求。3.中斷響應(yīng)時(shí)間 所謂中斷響應(yīng)時(shí)間是指從查詢中斷請(qǐng)求標(biāo)志位到轉(zhuǎn)向中斷入口地址的時(shí)間。8051
27、單片機(jī)的最短響應(yīng)時(shí)間為三個(gè)機(jī)器周期。其中一個(gè)機(jī)器周期用于查詢中斷請(qǐng)求標(biāo)志位的時(shí)間,而這個(gè)機(jī)器周期恰好是指令的最后一個(gè)機(jī)器周期,在這個(gè)機(jī)器結(jié)束后,中斷請(qǐng)求即被響應(yīng),產(chǎn)生 LCALL 指令。而執(zhí)行這條長(zhǎng)調(diào)用指令需要兩個(gè)機(jī)器周期,所以總共需要三個(gè)機(jī)器周期。但有時(shí),中斷響應(yīng)時(shí)間多達(dá)8個(gè)機(jī)器周期之長(zhǎng)。例如,在中斷查詢時(shí),正好是開始執(zhí)行 RET、RETI 或訪問 IE、IP 指令,則需把當(dāng)前指令執(zhí)行完再繼續(xù)執(zhí)行一條指令,才能進(jìn)行中斷響應(yīng)。執(zhí)行 RET、RETI 等指令最長(zhǎng)需要兩個(gè)機(jī)器周期,但后面跟著的指令假如是 MUL、DIV 乘除指令,則又需要四個(gè)機(jī)器周期,從而形成了8個(gè)機(jī)器周期的最長(zhǎng)響應(yīng)時(shí)間。一般情況
28、下,中斷響應(yīng)時(shí)間在38個(gè)機(jī)器周期之間。通常用戶不必考慮中斷響應(yīng)時(shí)間,只有在精確定時(shí)的應(yīng)用場(chǎng)合才需要中斷響應(yīng)時(shí)間,以保證精確的定時(shí)控制。4. 中斷請(qǐng)求的撤除 一旦中斷響應(yīng),中斷請(qǐng)求標(biāo)志位就應(yīng)該及時(shí)撤除,否則就意味著中斷請(qǐng)求繼續(xù)存在,會(huì)引起中斷的混亂。下面按中斷類型說(shuō)明中斷請(qǐng)求如何撤除。(1) 定時(shí)器中斷請(qǐng)求硬件自動(dòng)撤除。 定時(shí)器中斷被響應(yīng)后,硬件自動(dòng)把對(duì)應(yīng)的中斷請(qǐng)求標(biāo)志位( TF0、TF1)清0,因此,其中斷請(qǐng)求是自動(dòng)撤除的。(2) 外部中斷請(qǐng)求自動(dòng)與強(qiáng)制撤除。對(duì)于邊沿觸發(fā)方式的外部中斷請(qǐng)求,一旦響應(yīng)后通過硬件自動(dòng)把中斷請(qǐng)求標(biāo)志位( IE1 或 IE0 )清除,即中斷請(qǐng)求的標(biāo)志位也是自動(dòng)撤除的。
29、但對(duì)于電平觸發(fā)方式,情況則不同。光靠清除中斷標(biāo)志位,并不能解決中斷請(qǐng)求的撤除問題。因?yàn)?,這時(shí)中斷標(biāo)志位是撤除了,但中斷請(qǐng)求的有效低電平仍然存在,在以后的中斷請(qǐng)求采樣時(shí),又使 IE0 或 IE1 重新置1,為此想要徹底解決中斷請(qǐng)求的撤除,還必須在中斷響應(yīng)后強(qiáng)制地把中斷請(qǐng)求輸入引腳從低電平改為高電平。為此,可加入圖6-4的電路。用D觸發(fā)器鎖存外來(lái)的中斷請(qǐng)求低電平信號(hào),并通過觸發(fā)器的輸出端Q送給引腳 或。中斷響應(yīng)后,為撤除中斷請(qǐng)求,利用D觸發(fā)器的直接置位端SD,完成把 Q 強(qiáng)制成高電平。 圖6-4 在電平方式下的外中斷請(qǐng)求的撤除電路所以,在 P1.0 口線輸出一個(gè)負(fù)脈沖就可以使D觸發(fā)器置1,從而撤除
30、了低電平的中斷請(qǐng)求。負(fù)脈沖指令如下: ORL P1, #01H; P1.0 輸出高電平 ANL P1,#0FEH; P1.0 輸出低電平可見,在電平方式下的外中斷請(qǐng)求的真正撤除,是在中斷響應(yīng)后轉(zhuǎn)入中斷服務(wù)程序中,通過軟件方法實(shí)現(xiàn)的。所以,由于增加了附加電路,這種電平方式很少應(yīng)用,用戶都愿意使用邊沿觸發(fā)的外中斷方式。(3) 串行中斷請(qǐng)求軟件撤除。串行中斷的標(biāo)志位是TI和RI,但對(duì)這兩個(gè)標(biāo)志位不是自動(dòng)清0,因?yàn)椋谥袛囗憫?yīng)后,還需要測(cè)試這兩個(gè)標(biāo)志位的狀態(tài),以判定是發(fā)送還是接收操作,然后才能撤除。串行中斷請(qǐng)求的撤除也采用軟件撤除方法,在中斷服務(wù)程序中進(jìn)行。5. 中斷服務(wù)程序的編寫要點(diǎn)及斷點(diǎn)的數(shù)據(jù)保護(hù)
31、 首先,再次強(qiáng)調(diào)必須記住各中斷源的中斷入口地址。8051單片機(jī)規(guī)定,單片機(jī)復(fù)位入口地址是0000H,用戶一般在復(fù)位地址處,編寫一條長(zhǎng)轉(zhuǎn)移指令 LJMP addrl6,從這個(gè)地址執(zhí)行主程序,一旦有中斷請(qǐng)求,就會(huì)中斷響應(yīng),然后轉(zhuǎn)入中斷入口地址。(1) 斷點(diǎn)數(shù)據(jù)保護(hù)問題的提出和保護(hù)方法。在用戶編寫中斷服務(wù)程序中,首先應(yīng)該進(jìn)行斷點(diǎn)的數(shù)據(jù)保護(hù)。設(shè)在當(dāng)前執(zhí)行的主程序中使用了 ACC、R0 和 R1 等寄存器。某時(shí)刻發(fā)生了中斷響應(yīng),立即轉(zhuǎn)向中斷服務(wù)子程序中去,如果這個(gè)子程序也使用了ACC、R0 和 R1三個(gè)寄存器,很明顯,這三個(gè)寄存器在原來(lái)主程序中的內(nèi)容將被沖掉。待到中斷服務(wù)子程序執(zhí)行完之后,雖然可以返回程
32、序斷點(diǎn),但是由于三個(gè)寄存器的數(shù)據(jù)丟失,必然鑄成錯(cuò)誤。所以,每當(dāng)發(fā)生一次中斷,都要考慮程序中斷點(diǎn)數(shù)據(jù)的保護(hù)問題,或者說(shuō)每一個(gè)中斷服務(wù)子程序的一開始就要考慮數(shù)據(jù)入棧問題。使用堆棧保護(hù)斷點(diǎn)的數(shù)據(jù)方法是:在中斷服務(wù)子程序的一開始,就把所需要保護(hù)的單元按用戶指定的順序,使用 PUSH 指令逐一連續(xù)壓入堆棧。在中斷服務(wù)子程序的最后,再用 POP 指令把堆棧的內(nèi)容按先進(jìn)后出的原則彈出到相應(yīng)的寄存器單元中。應(yīng)該注意的兩點(diǎn)是:第一,入棧和出棧順序要相反;第二,因?yàn)橛布陨碛腥霔2僮?,所以在中斷服?wù)子程序的最后數(shù)據(jù)出棧數(shù)目要與入棧數(shù)目完全相同,否則會(huì)造成硬件自動(dòng)出棧的地址錯(cuò)誤。堆棧是為了保護(hù)斷點(diǎn)數(shù)據(jù)而在單片機(jī)內(nèi)專
33、門設(shè)定的一個(gè)RAM區(qū)。堆棧的深淺可以由用戶編程決定,特殊功能寄存器SP被稱為“堆棧指針”。因?yàn)镾P的內(nèi)容是堆棧區(qū)的一個(gè)8位地址,在初始化時(shí),SP的初值就是棧底地址,發(fā)生入棧和出棧操作時(shí),SP的內(nèi)容都會(huì)增1或者減1??偸侵赶驐m斠粋€(gè)被保護(hù)的數(shù)據(jù)。例如,初始化程序中置SP內(nèi)容為60H,表示堆棧區(qū)被用戶設(shè)置在61-7FH單元范圍,第一個(gè)8位碼入棧后將被存于61H單元,SP為61H;第二個(gè)8位碼入棧后存于62H單元,SP內(nèi)容變?yōu)?2H。使用堆棧時(shí)要注意,已被設(shè)定為堆棧區(qū)的字節(jié)一般不能再做數(shù)據(jù)緩沖區(qū)使用。在發(fā)生兩個(gè)中斷服務(wù)子程序嵌套時(shí),可以這樣設(shè)計(jì),主程序只使用工作寄存器0區(qū),第一個(gè)中斷服務(wù)子程序只使用
34、工作寄存器1區(qū),第二個(gè)中斷服務(wù)子程序只使用2區(qū)。于是減少了堆棧操作。避免數(shù)據(jù)入棧時(shí)可能產(chǎn)生的編程錯(cuò)誤。(2) 中斷響應(yīng)全過程。以上介紹了中斷系統(tǒng)的幾個(gè)環(huán)節(jié),作為總結(jié),以下按中斷過程的幾個(gè)步驟,說(shuō)明如何掌握中斷的設(shè)計(jì)。1) 在初始化程序中,要對(duì)幾個(gè)特殊功能寄存器賦給初值,以便做好中斷的準(zhǔn)備工作。例如,清除中斷標(biāo)志位、置外部中斷觸發(fā)方式、開中斷,決定優(yōu)先級(jí)等。中斷的初始化工作,主要在于選擇所用的特殊功能寄存器的初值。2) 每當(dāng)產(chǎn)生激活每個(gè)中斷源的物理?xiàng)l件時(shí),該中斷源就會(huì)通過硬件置相應(yīng)的中斷申請(qǐng)標(biāo)志位為1,表示已經(jīng)提出了中斷申請(qǐng)。雖然這個(gè)中斷申請(qǐng)可能不被立即響應(yīng),但這個(gè)申請(qǐng)總是有效的,直至它被清零時(shí)
35、為止。從上電復(fù)位開始,每個(gè)機(jī)器周期內(nèi) CPU 都會(huì)對(duì)六個(gè)中斷標(biāo)志位查詢一遍是否有置位者,如果發(fā)現(xiàn)有中斷申請(qǐng)?zhí)岢觯荒芰⒓错憫?yīng)該中斷,那么本次查詢無(wú)效,待下一個(gè)機(jī)器周期重新自動(dòng)查詢,這就是說(shuō),標(biāo)志位的狀態(tài)可以保存,但是自動(dòng)查詢的結(jié)果卻不被保存。3) 當(dāng)CPU查詢到一個(gè)或幾個(gè)中斷申請(qǐng)已經(jīng)提出時(shí),只有同時(shí)滿足如下四個(gè)條件時(shí),才能在下一個(gè)機(jī)器周期開始響應(yīng)其中一個(gè)申請(qǐng):中斷申請(qǐng)中有未被禁止者(已開中斷);CPU 當(dāng)前并未執(zhí)行任何中斷服務(wù)子程序,或者正在執(zhí)行的中斷服務(wù)子程序的優(yōu)先級(jí)比申請(qǐng)者要低時(shí);當(dāng)前機(jī)器周期恰是當(dāng)前執(zhí)行的指令的最后一個(gè)機(jī)器周期時(shí);當(dāng)前正在執(zhí)行的指令并不是下述四種指令之一:子程序返回指令
36、 RET 或 RETI,或者對(duì)于IE、IP的兩種寫操作指令。若恰是這四種指令之一時(shí),必須執(zhí)行完這一條指令,再執(zhí)行完下一條指令之后,才會(huì)響應(yīng)新的中斷中請(qǐng)。當(dāng)然,上述四條之一不滿足就不會(huì)立即響應(yīng)中斷申請(qǐng)。當(dāng)有若干申請(qǐng)同時(shí)存在時(shí)CPU將按優(yōu)先級(jí)和優(yōu)先權(quán)的順序擇高響應(yīng)。一個(gè)中斷中請(qǐng)標(biāo)志位被置位以后,在它未被響應(yīng)之前,如果用軟件清零此標(biāo)志位,則視該次申請(qǐng)被正常撤銷,不會(huì)引起中斷系統(tǒng)的混亂。4) 響應(yīng)一個(gè)中斷之后,CPU有三個(gè)自動(dòng)操作:第一,保護(hù)程序計(jì)數(shù)器PC中的16位斷點(diǎn)地址;第二,把相應(yīng)的中斷入口地址自動(dòng)地送入PC,這就相當(dāng)于執(zhí)行了一條長(zhǎng)調(diào)用指令而轉(zhuǎn)入中斷服務(wù)子程序。第三,將該次申請(qǐng)的標(biāo)志位用硬件自動(dòng)
37、清除,但是電平觸發(fā)方式的外部中斷標(biāo)志位和串行口中斷標(biāo)志位不能被硬件清零,而后者必須在中斷服務(wù)子程序中予以軟件清零。在中斷服務(wù)子程序的一開始,除了要決定是否有清除中斷申請(qǐng)標(biāo)志之外,還要做兩個(gè)工作:一是決定是否允許中斷嵌套而重新給中斷允許寄存器 IE 賦值;二是入棧保護(hù)斷點(diǎn)數(shù)據(jù)。從建立中斷申請(qǐng)標(biāo)志位到執(zhí)行第一條中斷服務(wù)子程序的指令,一般要經(jīng)過38個(gè)機(jī)器周期。依不同情況有別。5) 在一個(gè)中斷服務(wù)子程序正在執(zhí)行過程中,又有另一個(gè)不允許嵌套的中斷申請(qǐng)來(lái)了。這種情況下,只能在第一個(gè)中斷服務(wù)子程序執(zhí)行完之后,返回原斷點(diǎn)再執(zhí)行一條指令,才會(huì)形成第二個(gè)斷點(diǎn),轉(zhuǎn)而開始第二個(gè)中斷服務(wù)子程序的執(zhí)行。6) 中斷服務(wù)子程
38、序的最后,軟件設(shè)計(jì)人員應(yīng)該掌握三點(diǎn):第一,決定斷點(diǎn)數(shù)據(jù)出棧問題;第二,決定再開哪個(gè)中斷或再關(guān)哪些中斷;第三是中斷服務(wù)子程序的最后一條指令必須是中斷返回指令RETI。CPU 最后遇到 RETI 指令時(shí),首先通過硬件自動(dòng)恢復(fù)PC的斷點(diǎn)地址,然后CPU從斷點(diǎn)處繼續(xù)原來(lái)程序的執(zhí)行。下面給出中斷實(shí)例。例6.1 利用中斷方式,設(shè)計(jì)一個(gè)空調(diào)控溫系統(tǒng),要求空調(diào)溫度保持在(20±1)。解:假設(shè)本例的硬件連接如下,空調(diào)的開關(guān)線圈和P1.7相連,即 P1.7=1對(duì)應(yīng)線圈接通(空調(diào)打開); Pl.7=0對(duì)應(yīng)線圈斷開(空調(diào)關(guān)閉)。溫度傳感器連接在和,分別提供(加熱)和(制冷)信號(hào),即 若T21,則=0; 苦T
39、19,則=0。 程序應(yīng)該在T< 19時(shí)啟動(dòng)空調(diào)加熱裝置,在T21時(shí)停止空調(diào)加熱裝置。該系統(tǒng)硬件配置和時(shí)序圖如圖6-5所示。 ORG 0000H LJMP MAIN ;EXT 0 vector at 0003H EX0ISR:CLR P1.7;turn air-conditioner off RETI ORG 0013H EX1ISR:SETB P1.7;turn air-conditioner on RETI ORG 30HMAIN:MOV IE, #85H;enable external interrupts SETB IT0;negative edge triggered SETB IT1 SETB P1.7;turn air-conditioner on JB P3.2, SKIP;if T21 degrees CLR P1.7;turn f air-conditioner off SKIP:SJMP$;do nothing END主函數(shù)的前3條指令開放外部中斷,并將和都設(shè)為下降沿觸發(fā)方式。由于當(dāng)前的(P3.2)和(P3.3)的輸入狀態(tài)未知,所以
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ó)際貨運(yùn)代理與貨代公司聯(lián)營(yíng)合同3篇
- 二零二五年度房地產(chǎn)糾紛解決中英文術(shù)語(yǔ)合同2篇
- 二零二五年度戶外廣告牌避雷設(shè)施安裝合同3篇
- 發(fā)熱待查病例
- 二零二五年度企事業(yè)單位水電暖供應(yīng)協(xié)議2篇
- 高中數(shù)學(xué)人教A版必修5課件:2.5.2數(shù)列求和習(xí)題課(42張)
- 二零二五年度新型瓷磚店面經(jīng)營(yíng)承包協(xié)議范本3篇
- 品牌聯(lián)名推廣合作合同(2篇)
- 《手衛(wèi)生與醫(yī)療安全》課件
- 2025年湘教新版五年級(jí)數(shù)學(xué)下冊(cè)階段測(cè)試試卷含答案
- 2024年銷售員工年度工作總結(jié)
- 2024-2025學(xué)年廣東省深圳市南山區(qū)監(jiān)測(cè)數(shù)學(xué)三年級(jí)第一學(xué)期期末學(xué)業(yè)水平測(cè)試試題含解析
- 人工智能 課件 第五章 機(jī)器學(xué)習(xí)
- 【MOOC】人因工程學(xué)-東北大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 中國(guó)慢性阻塞性肺疾病基層診療指南(2024年)解讀
- 高中政治統(tǒng)編版選擇性必修二《法律與生活》綜合測(cè)試卷(一)(原卷版)
- 帶狀皰疹后神經(jīng)痛的診治課件教案
- 淺談風(fēng)電機(jī)組偏航制動(dòng)器故障原因及案例分析
- 2024-2025部編版語(yǔ)文一年級(jí)上冊(cè)語(yǔ)文園地八
- 細(xì)胞生物學(xué)練習(xí)題庫(kù)與參考答案
- 現(xiàn)場(chǎng)生命急救知識(shí)與技能學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
評(píng)論
0/150
提交評(píng)論