日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 單片機 > 單片機
[導讀]中斷函數(shù)只在中斷觸發(fā)源觸發(fā)的時候才會執(zhí)行,其他時間不執(zhí)行. 如果不使用中斷而且如果要根據(jù)某個端口的變化而作相應的函數(shù)操作,就必須不斷地查詢端口的信號,而中斷不用,只要端口一有變化,就會系統(tǒng)就會自動進入中斷函數(shù), 我覺得這就是中斷的目的,也是優(yōu)點。

中斷的優(yōu)點

中斷函數(shù)只在中斷觸發(fā)源觸發(fā)的時候才會執(zhí)行,其他時間不執(zhí)行. 如果不使用中斷而且如果要根據(jù)某個端口的變化而作相應的函數(shù)操作,就必須不斷地查詢端口的信號,而中斷不用,只要端口一有變化,就會系統(tǒng)就會自動進入中斷函數(shù), 我覺得這就是中斷的目的,也是優(yōu)點.

中斷優(yōu)先級

1) AVR單片機在同一個優(yōu)先級中,中斷向量入口地址越低,其優(yōu)先級越高。AVR單片機在響應中斷以后,會禁止系統(tǒng)響應其余中斷。如果程序需要在某個中斷服務程序中響應其它中斷事件,可以在該中斷服務程序中用重新使能全局中斷即可。否則,AVR單片機只有在退出中斷進程時,才重新使能全局中斷。

2) AVR(至少是ATmega16)單片機采用固定的硬件優(yōu)先級方式,不支持通過軟件對中斷優(yōu)先級重新設定。

AVR有不同的中斷源。每個中斷和復位在程序空間都有獨立的中斷向量。所有的中斷事件都有自己的使能位。當使能位置位,且狀態(tài)寄存器的全局中斷使能位I 也置位時,中斷可以發(fā)生。

3) AVR單片機的中斷優(yōu)先級只在同時觸發(fā)中斷時 優(yōu)先級高的中斷先進行處理,而對于51單片機中低級別的中斷不能打斷高級別的中斷,在AVR單片機中低級別的中斷卻可以

中斷相關寄存器

1.MCUCR——MCU控制寄存器

SM2 SE SM1 SM0 ISC11 ISC10 ISC01 ISC00

位3,2——ISC11,ISC10:中斷觸發(fā)方式控制1 位1與位0

外部中斷1由引腳INT1激發(fā),如果SREG寄存器的I標志位和相應的中斷屏蔽位置位的話。在檢測邊沿前MCU首先采樣INT1引腳上的電平。如果選擇了邊沿觸發(fā)方式或電平變化觸發(fā)方式,那么持續(xù)時間大于一個時鐘周期的脈沖將觸發(fā)中斷,過短的脈沖則不能保證觸發(fā)中斷。如果選擇低電平觸發(fā)方式,那么低電平必須保持到當前指令執(zhí)行完成。

ISC11 ISC10 說明

0 0 INT1為低電平時產(chǎn)生中斷請求

0 1 INT1引腳上任意的邏輯電平變化都將引發(fā)中斷

1 0 INT1的下降沿產(chǎn)生異步中斷請求

1 1 INT1的上升沿產(chǎn)生異步中斷請求

位1,0–ISC01,ISC00:中斷0觸發(fā)方式控制位 1與位0

外部中斷0由引腳INT0激發(fā),如果SREG寄存器的I標志位和相應的中斷屏蔽位置位的話。在檢測邊沿前MCU首先采樣INT0引腳上的電平。如果選擇了邊沿觸發(fā)方式或電平變化觸發(fā)方式,那么持續(xù)時間大于一個時鐘周期的脈沖將觸發(fā)中斷,過短的脈沖則不能保證觸發(fā)中斷。如果選擇低電平觸發(fā)方式,那么低電平必須保持到當前指令執(zhí)行完成。

ISC01 ISC00 說明

0 0 INT0為低電平時產(chǎn)生中斷請求

0 1 INT0引腳上任意的邏輯電平變化都將引發(fā)中斷

1 0 INT0的下降沿產(chǎn)生異步中斷請求

1 1 INT0的上升沿產(chǎn)生異步中斷請求

2.MCUCSR——MCU控制與狀態(tài)寄存器

JTD ISC2 – JTRF WDRF BORF EXTRF PORF

位6——ISC2:中斷2觸發(fā)方式控制

異步外中斷2由外部引腳INT2激活,如果SREG寄存器的I標志和GICR寄存器相應的中斷屏蔽位置位的話。若ISC2寫0,INT2的下降沿激活中斷。若ISC2寫1,INT2的上升沿激活中斷。INT2的邊沿觸發(fā)方式是異步的。只要INT2引腳上產(chǎn)生寬度大于Table 36所示數(shù)據(jù)的脈沖就會引發(fā)中斷。若選擇了低電平中斷,低電平必須保持到當前指令完成,

然后才會產(chǎn)生中斷。而且只要將引腳拉低,就會引發(fā)中斷請求。改變ISC2時有可能發(fā)生中斷。因此建議首先在寄存器GICR里清除相應的中斷使能位INT2,然后再改變ISC2。最后,不要忘記在重新使能中斷之前通過對GIFR寄存器的相應中斷標志位INTF2寫'1’其清零。

3.GICR——通用中斷控制寄存器

INT1 INT0 INT2 – – – IVSEL IVCE

位7——INT1:使能外部中斷請求1

當INT1為'1’,而且狀態(tài)寄存器SREG的I標志置位,相應的外部引腳中斷就使能了。MCU通用控制寄存器–MCUCR的中斷敏感電平控制1位1/0(ISC11與ISC10)決定中斷是由上升沿、下降沿,還是INT1電平觸發(fā)的。只要使能,即使INT1引腳被配置為輸出,只要引腳電平發(fā)生了相應的變化,中斷將產(chǎn)生。

位6——INT0:使能外部中斷請求0

當INT0為'1’,而且狀態(tài)寄存器SREG的I標志置位,相應的外部引腳中斷就使能了。MCU通用控制寄存器–MCUCR的中斷敏感電平控制0位1/0(ISC01與ISC00)決定中斷是由上升沿、下降沿,還是INT0電平觸發(fā)的。只要使能,即使INT0引腳被配置為輸出,只要引腳電平發(fā)生了相應的變化,中斷將產(chǎn)生。

位 5——INT2:使能外部中斷請求2

當INT2為'1’,而且狀態(tài)寄存器SREG的I標志置位,相應的外部引腳中斷就使能了。MCU通用控制寄存器–MCUCR的中斷敏感電平控制2位1/0(ISC2與ISC2)決定中斷是由上升沿、下降沿,還是INT2電平觸發(fā)的。只要使能,即使INT2引腳被配置為輸出,只要引腳電平發(fā)生了相應的變化,中斷將產(chǎn)生。

4.GIFR——通用中斷標志寄存器

INTF1 INTF0 INTF2 – – – – –

位 7——INTF1:外部中斷標志1

INT1引腳電平發(fā)生跳變時觸發(fā)中斷請求,并置位相應的中斷標志INTF1。如果SREG的位I以及GICR寄存器相應的中斷使能位INT1為”1”,MCU即跳轉(zhuǎn)到相應的中斷向量。進入中斷服務程序之后該標志自動清零。此外,標志位也可以通過寫入”1”來清零。

位6——INTF0:外部中斷標志0

INT0引腳電平發(fā)生跳變時觸發(fā)中斷請求,并置位相應的中斷標志INTF0。如果SREG的位I以及GICR寄存器相應的中斷使能位INT0為”1”,MCU即跳轉(zhuǎn)到相應的中斷向量。進入中斷服務程序之后該標志自動清零。此外,標志位也可以通過寫入”1”來清零。

位 5——INTF2:外部中斷標志2

INT2引腳電平發(fā)生跳變時觸發(fā)中斷請求,并置位相應的中斷標志INTF2。如果SREG的位I以及GICR寄存器相應的中斷使能位INT2為”1”,MCU即跳轉(zhuǎn)到相應的中斷向量。進入中斷服務程序之后該標志自動清零。此外,標志位也可以通過寫入”1”來清零。注意,當INT2中斷禁用進入某些休眠模式時,該引腳的輸入緩沖將禁用。這會導致INTF2標志設置信號的邏輯變化。

一些重要的點

一、中斷信號往往是電信號的某種變化形式,如

脈沖的上升沿或下降沿

高電平或低電平

電平變化

二、中斷向量

中斷請求被cpu檢測到之后,如果中斷控制系統(tǒng)允許,cpu會自動轉(zhuǎn)移,執(zhí)行一個固定的程序空間地址的指令。

這個固定地址叫做中斷入口地址,也叫中斷向量。而這個地址是有單片機的硬件來決定的。

一般這個地址不放置具體的程序,只放置一條跳轉(zhuǎn)指令,轉(zhuǎn)向真正的中斷服務程序。

三、AVR不支持軟件改變中斷優(yōu)先級,即其優(yōu)先級是固定的。

四、中斷源分為三類

1.非屏蔽中斷,如reset中斷,無法屏蔽

2.屏蔽中斷,大部分中斷都是可屏蔽的

3.軟件中斷,AVR不支持,好像ARM里面有,可以作為操作系統(tǒng)的中斷調(diào)用。

五、中斷響應條件

響應A中斷 = 全局中斷允許標志 AND 中斷A允許標志 AND 中斷A標志

全局中斷允許標志對于AVR就是其標志寄存器SREG的I位,SREG.7,gcc中打開和關閉的方法為sei()和cli()

中斷允許標志,一般來說每個中斷都會有單獨的允許標志位,放置在某個相關的寄存器中,通過單獨設置那一位可以打開或關閉相應的中斷。

中斷標志,一般說來這個標志都是硬件觸發(fā)的,就是一旦滿足那個條件,這個標志自動為1,不需要手動設置。

六、中斷向量區(qū)大小 = 中斷源個數(shù) x 每個中斷向量所占的字數(shù)

七、中斷標志位一般會在cpu響應中斷后自動清除,或在中斷服務程序中通過讀寫專門的寄存器而自動清除。

當然也可以對其進行軟件清除,清除方法是對其寫1(這點比較怪)

八、中斷標志會一直保持,如果中斷被禁止或者是cpu不能馬上響應的話。這是稱作“掛起”,一旦cpu可以響應了,則馬上按優(yōu)先級處理中斷。

九、個別中斷不帶中斷標志,比如配置為低電平觸發(fā)的外部中斷。只要滿足條件就會向cpu一直發(fā)送中斷申請。

這里就會出現(xiàn)這樣的問題:

1.cpu暫時沒響應中斷,低電平?jīng)]有了,這樣就少了一次服務

2.cpu響應了,響應完事,低電平還在,又多服務了一次

所以設計的時候要注意

一般這種低電平觸發(fā)中斷方式用于喚醒處于休眠模式的cpu,可參考具體方案。

十、AVR響應中斷時會將全局中斷允許位關掉,不響應其它中斷,所以也就不允許中斷的嵌套。

當然可以在中斷服務程序中,將其開啟,但是這樣做是非常危險的,不提倡。

十一、中斷響應的過程如下

1.清零全局中斷

2.將具體被響應的中斷標志位清零

3.中斷斷點地址壓入堆棧,同時SP減2

4.自動將中斷向量地址壓入PC,強制執(zhí)行。

以上均由硬件自動完成,軟件需要做的事情如下:

1.中斷入口處指令:rjmp reset

2.中斷服務程序

3.返回指令 reti

十二、

非常要注意的是中斷只保存和恢復了斷點的PC值,對其它的寄存器均沒有保護,所以如果在中斷服務程序中要是改變了某些寄存器的值的話就容易出現(xiàn)問題。

所以,中斷服務程序要盡量短,不做多余的操作,并且一旦對sreg有破壞的話,一定要在先將其壓入堆棧。

十三、技巧

在使能一個中斷允許位之前,最好將改中斷的中斷標志位清除,然后馬上使能允許位。

這樣可以避免一些不必要的錯誤,如果之前改標志為1的話,就會產(chǎn)生一個錯誤的中斷。

再說一次,清除標志位的方法是對其寫1。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

在現(xiàn)代嵌入式系統(tǒng)中,實時性保障是確保系統(tǒng)穩(wěn)定運行和高效處理任務的關鍵。特別是在涉及硬實時任務(如DMA傳輸)時,合理設計多級中斷系統(tǒng)和任務調(diào)度方案至關重要。本文將探討如何使用ARM Cortex-M的NVIC優(yōu)先級分組機...

關鍵字: 中斷系統(tǒng) 嵌入式系統(tǒng)

當多個同級別中斷同時發(fā)出中斷請求時,單片機中斷系統(tǒng)將按照自然優(yōu)先級別進行中斷排序,并首先響應其中自然優(yōu)先級別最高的中斷。

關鍵字: 中斷優(yōu)先級 單片機 中斷系統(tǒng)

MCS-51單片機中斷系統(tǒng)的結構如圖4-1所示。MCS-51單片機有5個中斷源,分別是2個外部中斷源、2個定時/計數(shù)器中斷源和1個串行接口中斷源。與中斷系統(tǒng)有關的寄存器有TCON、SCON、IE和IP,它們都可以按位尋址...

關鍵字: MCS-51 單片機 中斷系統(tǒng)

單片機系統(tǒng)用戶可以通過中斷系統(tǒng)的軟件和硬件實現(xiàn)對某一中斷請求的開放(或允許)和屏蔽。開放是指中斷請求發(fā)生時中斷系統(tǒng)響應該請求,并完成相應的中斷服務處理工作;相反地,屏蔽是指中斷系統(tǒng)既不接收中斷請求,也不進行中斷處理。

關鍵字: MCS-51 單片機 中斷系統(tǒng)

中斷系統(tǒng)是計算機的重要組成部分。實時控制、故障自動處理、計算機與外圍設備間的數(shù)據(jù)傳送往往采用中斷系統(tǒng)。中斷系統(tǒng)的應用大大提高了計算機效率。

關鍵字: 中斷系統(tǒng) 8XC552 單片機

8XC51GB有15個中斷源,對應有15個固定的中斷矢量地址(見圖10.8)。其中有7個外部中斷是INT0~INT6,外部中斷引腳與端口3和端口5引腳的功能復用;有8個內(nèi)部中斷,它們分別是3個定時器中斷(定時器T0、T1...

關鍵字: 8XC51GB 中斷系統(tǒng)

中斷是計算機中一個很重要的概念,中斷技術的引入使計算機的發(fā)展和應用大大地推進了一步。因此,中斷功能的強弱已成為衡量一臺計算機功能完善與否的重要指標之一。

關鍵字: MCS 51單片機 中斷系統(tǒng)

1.PowerPC中斷系統(tǒng)簡介PowerPC處理器的中斷系統(tǒng)由兩部分組成,一是內(nèi)核的中斷及異常的處理;二是中斷控制器。以P2020處理器為例,包括E500內(nèi)核中斷及異常處理系統(tǒng)和OpenPIC中斷控制器。在E500內(nèi)核中...

關鍵字: Power 中斷系統(tǒng)

引言   現(xiàn)場總線作為生產(chǎn)過程自動化發(fā)展的重點,對推動自動化技術起到巨大的推動作用,是現(xiàn)代化工業(yè)的標志。MODBUS作為現(xiàn)場總線的一種通信協(xié)議,它實現(xiàn)了PLC控制器、工控儀表與設備間的通

關鍵字: avr單片機 智能控制系統(tǒng) modbus協(xié)議

一、項目概述 1.1 引言 溫室是一種可以改變植物生長環(huán)境、為植物生長創(chuàng)造最佳條件、避免外界四季變化和惡劣氣候?qū)ζ溆绊懙膱鏊?。它以采光覆蓋材料作為全部或部分結構材料,可在冬季或其

關鍵字: avr單片機
關閉