AVR有不同的中斷源。每個(gè)中斷和復(fù)位在程序空間都有獨(dú)立的中斷向量。所有的中斷事件都有自己的使能位。當(dāng)使能位置位,且狀態(tài)寄存器的全局中斷使能位I 也置位時(shí),中斷可以發(fā)生。根據(jù)程序計(jì)數(shù)器PC 的不同,在引導(dǎo)鎖定位BLB02 或BLB12 被編程的情況下,中斷可能被自動(dòng)禁止。這個(gè)特性提高了軟件的安全性。詳見(jiàn) P240“ 存儲(chǔ)器編程” 的描述。
程序存儲(chǔ)區(qū)的最低地址缺省為復(fù)位向量和中斷向量。完整的向量列表請(qǐng)參見(jiàn)P42 “中斷” 。 列表也決定了不同中斷的優(yōu)先級(jí)。向量所在的地址越低,優(yōu)先級(jí)越高。RESET 具有最高 的優(yōu)先級(jí),第二個(gè)為 INT0 – 外部中斷請(qǐng)求 0。通過(guò)置位通用中斷控制寄存器 (GICR) 的 IVSEL,中斷向量可以移至引導(dǎo)Flash的起始處,參見(jiàn)P42 “中斷” 。編程熔絲位BOOTRST 也可以將復(fù)位向量移至引導(dǎo) Flash 的起始處。具體參見(jiàn) P228 “ 支持引導(dǎo)裝入程序 – 在寫 的同時(shí)可以讀 (RWW, Read-While-Write) 的自我編程能力 ” 。
任一中斷發(fā)生時(shí)全局中斷使能位I 被清零,從而禁止了所有其他的中斷。用戶軟件可以在中斷程序里置位I 來(lái)實(shí)現(xiàn)中斷嵌套。此時(shí)所有的中斷都可以中斷當(dāng)前的中斷服務(wù)程序。執(zhí)行RETI 指令后I 自動(dòng)置位。
從根本上說(shuō)有兩種類型的中斷。第一種由事件觸發(fā)并置位中斷標(biāo)志。對(duì)于這些中斷,程序 計(jì)數(shù)器跳轉(zhuǎn)到實(shí)際的中斷向量以執(zhí)行中斷處理程序,同時(shí)硬件將清除相應(yīng)的中斷標(biāo)志。中 斷標(biāo)志也可以通過(guò)對(duì)其寫 ”1” 的方式來(lái)清除。當(dāng)中斷發(fā)生后,如果相應(yīng)的中斷使能位為 "0",則中斷標(biāo)志位置位,并一直保持到中斷執(zhí)行,或者被軟件清除。類似的,如果全局 中斷標(biāo)志被清零,則所有已發(fā)生的中斷都不會(huì)被執(zhí)行,直到 I 置位。然后掛起的各個(gè)中斷 按中斷優(yōu)先級(jí)依次執(zhí)行。
第二種類型的中斷則是只要中斷條件滿足,就會(huì)一直觸發(fā)。這些中斷不需要中斷標(biāo)志。若中斷條件在中斷使能之前就消失了,中斷不會(huì)被觸發(fā)。
AVR退出中斷后總是回到主程序并至少執(zhí)行一條指令才可以去執(zhí)行其他被掛起的中斷。要注意的是,進(jìn)入中斷服務(wù)程序時(shí)狀態(tài)寄存器不會(huì)自動(dòng)保存,中斷返回時(shí)也不會(huì)自動(dòng)恢復(fù)。這些工作必須由用戶通過(guò)軟件來(lái)完成。
使用CLI 指令來(lái)禁止中斷時(shí),中斷禁止立即生效。沒(méi)有中斷可以在執(zhí)行CLI 指令后發(fā)生,即使它是在執(zhí)行CLI 指令的同時(shí)發(fā)生的。下面的例子說(shuō)明了如何在寫EEPROM 時(shí)使用這個(gè)指令來(lái)防止中斷發(fā)生以避免對(duì)EEPROM 內(nèi)容的可能破壞。
匯編代碼例程
in r16, SREG ; 保存SREG
cli ; 禁止中斷
sbi EECR, EEMWE ; 啟動(dòng) EEPROM 寫操作
sbi EECR, EEWE
out SREG, r16 ; 恢復(fù)SREG (I 位)
C 代碼例程
char cSREG;
cSREG = SREG; /* 保存SREG */
/* 禁止中斷*/
_CLI();
EECR |= (1<
使用SEI 指令使能中斷時(shí),緊跟其后的第一條指令在執(zhí)行任何中斷之前一定會(huì)首先得到執(zhí)行。
匯編代碼例程
sei ; 置位全局中斷使能標(biāo)志
sleep ; 進(jìn)入休眠模式,等待中斷發(fā)生
; 注意: 在執(zhí)行任何被掛起的中斷之前MCU 將首先進(jìn)入休眠模式
C 代碼例程
_SEI(); /* 置位全局中斷使能標(biāo)志*/
_SLEEP(); /* 進(jìn)入休眠模式,等待中斷發(fā)生*/
/* 注意: 在執(zhí)行任何被掛起的中斷之前MCU 將首先進(jìn)入休眠模式*/
AVR 中斷響應(yīng)時(shí)間最少為 4 個(gè)時(shí)鐘周期。4 個(gè)時(shí)鐘周期后,程序跳轉(zhuǎn)到實(shí)際的中斷處理例 程。在這 4 個(gè)時(shí)鐘期期間 PC 自動(dòng)入棧。在通常情況下,中斷向量為一個(gè)跳轉(zhuǎn)指令,此跳 轉(zhuǎn)需要 3 個(gè)時(shí)鐘周期。如果中斷在一個(gè)多時(shí)鐘周期指令執(zhí)行期間發(fā)生,則在此多周期指令 執(zhí)行完畢后 MCU 才會(huì)執(zhí)行中斷程序。若中斷發(fā)生時(shí) MCU 處于休眠模式,中斷響應(yīng)時(shí)間 還需增加 4 個(gè)時(shí)鐘周期。此外還要考慮到不同的休眠模式所需要的啟動(dòng)時(shí)間。
中斷返回需要4 個(gè)時(shí)鐘。在此期間PC( 兩個(gè)字節(jié)) 將被彈出棧,堆棧指針加二,狀態(tài)寄存器SREG 的I 置位。
上一篇:ATmega32 Flash程序存儲(chǔ)器
下一篇:ATmega32 指令執(zhí)行時(shí)序
推薦閱讀
史海拾趣
面對(duì)日益激烈的國(guó)際競(jìng)爭(zhēng),Acmelux Taiwan Inc公司積極實(shí)施全球化戰(zhàn)略布局。公司先后在歐美、亞洲等地設(shè)立了研發(fā)中心和生產(chǎn)基地,以充分利用全球資源,提升公司的整體競(jìng)爭(zhēng)力。通過(guò)與當(dāng)?shù)仄髽I(yè)的合作與交流,Acmelux不僅拓展了國(guó)際市場(chǎng),還吸收了大量先進(jìn)的技術(shù)和管理經(jīng)驗(yàn),為公司的持續(xù)發(fā)展注入了新的活力。
隨著國(guó)內(nèi)市場(chǎng)的不斷飽和,Deltron公司開(kāi)始積極拓展國(guó)際市場(chǎng)。通過(guò)參加國(guó)際展覽、與國(guó)外企業(yè)建立合作關(guān)系、設(shè)立海外分支機(jī)構(gòu)等方式,Deltron逐漸打開(kāi)了國(guó)際市場(chǎng)的大門。其優(yōu)質(zhì)的產(chǎn)品和服務(wù)得到了國(guó)際客戶的認(rèn)可,為公司的發(fā)展注入了新的活力。
隨著環(huán)保意識(shí)的提高,Datatronic公司開(kāi)始探索綠色發(fā)展的道路。公司注重節(jié)能減排和資源循環(huán)利用,通過(guò)改進(jìn)生產(chǎn)工藝和使用環(huán)保材料等方式降低對(duì)環(huán)境的影響。同時(shí),公司還積極推廣綠色產(chǎn)品和技術(shù),引導(dǎo)客戶樹(shù)立綠色消費(fèi)觀念。這些努力使得Datatronic公司在環(huán)保方面取得了顯著成效,贏得了社會(huì)的廣泛贊譽(yù)。
在激烈的市場(chǎng)競(jìng)爭(zhēng)中,APD公司始終堅(jiān)持品質(zhì)至上的原則。公司建立了嚴(yán)格的質(zhì)量管理體系,從原材料采購(gòu)到產(chǎn)品生產(chǎn)、檢測(cè)等各個(gè)環(huán)節(jié)都嚴(yán)格把關(guān)。憑借卓越的產(chǎn)品品質(zhì)和良好的售后服務(wù),APD贏得了眾多客戶的信賴和支持。
Base Two (2) Systems深知技術(shù)創(chuàng)新的重要性,因此不斷加大對(duì)研發(fā)的投入。公司引進(jìn)了一批高端研發(fā)人才和先進(jìn)設(shè)備,為研發(fā)團(tuán)隊(duì)提供了強(qiáng)有力的支持。在研發(fā)團(tuán)隊(duì)的努力下,公司不斷推出新產(chǎn)品,并對(duì)現(xiàn)有產(chǎn)品進(jìn)行升級(jí)改進(jìn),以滿足市場(chǎng)的不斷變化和客戶的多樣化需求。
在ELMEC看來(lái),產(chǎn)品質(zhì)量是企業(yè)的生命線。為了確保產(chǎn)品的可靠性和穩(wěn)定性,公司建立了一套完善的質(zhì)量管理體系。從原材料采購(gòu)到產(chǎn)品生產(chǎn)、從質(zhì)量控制到售后服務(wù),每一個(gè)環(huán)節(jié)都經(jīng)過(guò)嚴(yán)格把控。同時(shí),ELMEC還積極引進(jìn)國(guó)際先進(jìn)的質(zhì)量管理方法和標(biāo)準(zhǔn),不斷提高產(chǎn)品的整體質(zhì)量水平。這些努力使得ELMEC的產(chǎn)品在市場(chǎng)上享有很高的聲譽(yù)。
在protel 99se里如何一次修改多個(gè)引腳的尺寸 初學(xué)protel 99se,關(guān)于PCB設(shè)計(jì)上有一個(gè)問(wèn)題不明白,比如說(shuō),我想要修改雙列直插式單片機(jī)的所有引腳的尺寸,我不想一個(gè)個(gè)引腳的去改,這太麻煩了,請(qǐng)問(wèn)有沒(méi)有什么方法只用修改一次就能把40個(gè)引腳全部修改完。麻煩說(shuō)出具體步驟,謝謝… 查看全部問(wèn)答∨ |
多少頻率的開(kāi)關(guān)電源能夠被稱作高頻開(kāi)關(guān)電源? 多少頻率的開(kāi)關(guān)電源能夠被稱作高頻開(kāi)關(guān)電源?… 查看全部問(wèn)答∨ |
運(yùn)用SIM508模塊上網(wǎng)的問(wèn)題?。?!謝謝各位大俠了 這是連接GPRS的AT的指令,如果我想要上www.baidu.com這個(gè)網(wǎng)址后面的AT指令該怎么發(fā)?。????????????????????????????????????? at+CGCLASS=\"B\" & ...… 查看全部問(wèn)答∨ |
我的VS2005怎么突然不能進(jìn)行C語(yǔ)言級(jí)別的調(diào)試了,設(shè)置斷點(diǎn)不會(huì)停在斷點(diǎn),老是提示“沒(méi)有可用于當(dāng)前位置的源代碼?!币胰ワ@示反匯編的代碼,這是怎么一回事???昨天調(diào)試都還是一切好好的,GOOGLE沒(méi)找到怎么解決!… 查看全部問(wèn)答∨ |
嵌入式學(xué)習(xí),嵌入式學(xué)習(xí)有哪些要素呢 學(xué)習(xí),老師是非常關(guān)鍵的環(huán)節(jié)。對(duì)于嵌入式的學(xué)習(xí)當(dāng)然也不例外。所以,在嵌入式的學(xué)習(xí)中,老師是很重要的要素之一。 嵌入式學(xué)習(xí),挑選什么樣的老師? 雙師型老師。具體的來(lái)說(shuō),一方面,具備嵌入式的研發(fā)經(jīng)驗(yàn),有獨(dú)立開(kāi)發(fā)的項(xiàng)目和作品,在嵌入式行 ...… 查看全部問(wèn)答∨ |
最近做關(guān)于485方面的通信設(shè)備,但第一次接觸,感覺(jué)比較迷惘,希望哪位大蝦給推薦幾本好書,謝謝?!? 查看全部問(wèn)答∨ |
我用串口監(jiān)測(cè)軟件,截獲了上位機(jī)軟件對(duì)單片機(jī)發(fā)送的指令和返回的數(shù)據(jù)(16進(jìn)制數(shù)據(jù)),還有波特率、奇偶校驗(yàn)、停止位、數(shù)據(jù)位長(zhǎng)度這些參數(shù)的值。 我自己用VB將MSCOMM控件的參數(shù)設(shè)置成和上述設(shè)置一致,然后發(fā)送相同的16進(jìn)制指令,很奇怪,單片機(jī)沒(méi)什 ...… 查看全部問(wèn)答∨ |
|
昨天還好好的,今天就提示這樣的問(wèn)題了。不知和解? 能下載,就是下載完后需要等待好長(zhǎng)一段時(shí)間才能出現(xiàn)調(diào)試窗口?!? 查看全部問(wèn)答∨ |
設(shè)計(jì)資源 培訓(xùn) 開(kāi)發(fā)板 精華推薦
- 基于AVR EVK1105的移動(dòng)遠(yuǎn)程桌面多媒體設(shè)備
- 基于AVR EVK1105平臺(tái)的兒童伴睡寶方案設(shè)計(jì)
- 基于AVR的太陽(yáng)能高速公路智能電子顯示屏設(shè)計(jì)
- 基于MIPS32設(shè)計(jì)的智能電網(wǎng)家庭用電監(jiān)控系統(tǒng)
- 基于Cerebot MX4開(kāi)發(fā)板的家用智能監(jiān)控系統(tǒng)整體方案設(shè)計(jì)
- 確定運(yùn)算放大器輸出驅(qū)動(dòng)能力的方法分析
- 寵物狗無(wú)線感知交互系統(tǒng)軟硬件設(shè)計(jì)
- stm32晶振不起振的原因 stm32單片機(jī)的基本工作原理
- 從三個(gè)層次來(lái)介紹用于機(jī)器人主控板的設(shè)計(jì)思想
- 人工智能在汽車行業(yè)中的應(yīng)用
- 麥格納集成式艙內(nèi)感知系統(tǒng) 引領(lǐng)車輛安全創(chuàng)新
- 2025世界人工智能大會(huì)上的各種機(jī)器人
- 際上導(dǎo)航:高精度組合定位感知技術(shù)在智能輔助駕駛中的應(yīng)用
- 量產(chǎn)元年的人形機(jī)器人,要破局C端?
- 上半年賺304億元的寧德時(shí)代,給出固態(tài)電池量產(chǎn)時(shí)間表
- 新泗威車載后排航空座椅控制顯示器 | 申報(bào)2025第七屆金輯獎(jiǎng)最佳技術(shù)實(shí)踐應(yīng)用獎(jiǎng)
- L3 智駕,需要?dú)⑹旨?jí)座艙
- 2025動(dòng)力電池中場(chǎng)戰(zhàn)局,正力新能“三化策略”應(yīng)戰(zhàn)
- 智能手機(jī)共存解決方案協(xié)同合作使用共用天線
- TI 中國(guó)大學(xué)計(jì)劃20周年——寫祝福送好禮!
- ADI有獎(jiǎng)下載活動(dòng)之6 ADI基于IEC61850的智能電子設(shè)備(IED)系統(tǒng)解決方案
- 瑞薩電子RL78/G14評(píng)估板DIY精彩上演!
- Microchip有獎(jiǎng)直播:如何充分利用零漂移運(yùn)算放大器
- 英飛凌ADAS解決方案,確保您每一次安全出行 參與贏好禮!
- Vishay官方微信君駕到,掃碼關(guān)注贏好禮
- 揭秘正確選擇探頭的5大要素 (泰克原裝探頭促銷,高貴不貴,199元起)
- 直播已結(jié)束|TI Zigbee 3.0及多協(xié)議解決方案
- Vicor白皮書下載——雙向電源:“安靜”改變世界的驅(qū)動(dòng)力
- 恩智浦LPC2000系列全套資料!
- 高通:中國(guó)在自動(dòng)駕駛汽車標(biāo)準(zhǔn)化上或?qū)㈩I(lǐng)先于美國(guó)
- Navya合作SK電訊與ESMO 利用5G蜂窩網(wǎng)絡(luò)研發(fā)自動(dòng)駕駛技術(shù)
- 英特爾攜手百度繼續(xù)在人工智能、自動(dòng)駕駛和5G領(lǐng)域開(kāi)展合作
- FiRa聯(lián)盟成立,超寬帶系統(tǒng)生態(tài)系統(tǒng)初現(xiàn)
- Arm將自動(dòng)化導(dǎo)入物聯(lián)網(wǎng)連接管理
- 應(yīng)堅(jiān)持電網(wǎng)調(diào)度一體化不動(dòng)搖
- 多能互補(bǔ)綜合能源系統(tǒng)設(shè)計(jì)及優(yōu)化
- 江蘇蘇州建成配網(wǎng)網(wǎng)格邊緣代理系統(tǒng)
- 國(guó)網(wǎng)河北電力拓展綜合能源服務(wù)新模式
- 國(guó)家電網(wǎng):10個(gè)省級(jí)電網(wǎng)用電負(fù)荷創(chuàng)新高
- 目前一些開(kāi)發(fā)板廠商所面臨的問(wèn)題
- 你有沒(méi)有近期特別想買的開(kāi)發(fā)板?
- MSP430FR5969如何只啟動(dòng)外部16M晶振HFXT
- 瑞薩電子2015之起航篇-R7C809
- 電源管理集成電路 (PMIC) 會(huì)是未來(lái)的主流方向嗎?
- 人力單軌車,超有創(chuàng)意的概念
- 為什么拷貝不過(guò)去
- PI DER-533 - 20 W USB PD Power Supply 數(shù)據(jù)手冊(cè)分享
- 請(qǐng)教:實(shí)現(xiàn)毫秒級(jí)脈沖序列延時(shí)的電路
- 不同模塊用到的變量定義問(wèn)題,這樣做有無(wú)問(wèn)題?