日韩一区二区三区精品,欧美疯狂xxxxbbbb牲交,热99re久久免费视精品频,人妻互换 综合,欧美激情肉欲高潮视频

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<EECR |= (1<SREG = cSREG; /* 恢復(fù)SREG (I 位) */

使用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 置位。


關(guān)鍵字:ATmega32  復(fù)位  中斷處理 引用地址:ATmega32 復(fù)位與中斷處理

上一篇:ATmega32 Flash程序存儲(chǔ)器
下一篇:ATmega32 指令執(zhí)行時(shí)序

推薦閱讀

我國(guó)已連續(xù)五年位列全球最大的工業(yè)機(jī)器人市場(chǎng),國(guó)產(chǎn)工業(yè)機(jī)器人的占比首次下降—兩組數(shù)據(jù)之后,是中國(guó)機(jī)器人產(chǎn)業(yè)走到了創(chuàng)新能力亟待提升的關(guān)鍵時(shí)刻。 2017年,中國(guó)工業(yè)機(jī)器人市場(chǎng)銷量再創(chuàng)新高,超過(guò)14萬(wàn)臺(tái),平均增速達(dá)到60%。“但是,整個(gè)國(guó)產(chǎn)機(jī)器人的占比突然下滑6個(gè)百分點(diǎn),這是非常大的特點(diǎn)。” 創(chuàng)新迫在眉睫 “向價(jià)值鏈上游爬升,是中國(guó)機(jī)器人產(chǎn)業(yè)...
在數(shù)字化重塑的浪潮下,車的定義正在被重寫,人們開(kāi)始希望在其汽車中獲得更高水平的舒適性、安全性、效率和消費(fèi)電子功能。但隨著車輛的電子化程度逐漸提高,電子控制單元(ECU)占領(lǐng)了整個(gè)汽車,從防抱死制動(dòng)系統(tǒng)、四輪驅(qū)動(dòng)系統(tǒng)、電控自動(dòng)變速器、主動(dòng)懸架系統(tǒng)、安全氣囊系統(tǒng),逐漸延伸到了車身安全、網(wǎng)絡(luò)、娛樂(lè)、傳感控制系統(tǒng)等。就Strategy Analytics統(tǒng)...
2020年11月24 – 27日,深圳大灣區(qū)工業(yè)博覽會(huì)(DMP 2020)在深圳國(guó)際會(huì)展中心隆重開(kāi)幕,全球領(lǐng)先的CNC磨床制造商——ANCA攜全新FX5E磨床、全新EDG高效解決方案、ANCA集成制造系統(tǒng)(AIMS)、桶形球頭銑刀BSB Endmills以及升級(jí)的ANCA CPX Linear解決方案亮相本屆工博會(huì)(展位號(hào):2E21)。在此展會(huì)期間,ANCA舉辦了新聞發(fā)布會(huì),重點(diǎn)介紹了新產(chǎn)品的亮點(diǎn)及...
前言其實(shí)這個(gè)博文是強(qiáng)迫癥的產(chǎn)物,對(duì)產(chǎn)物;如果要在一個(gè)SD卡上建立文件系統(tǒng)FATFS,我?guī)倪@張卡的第0個(gè)字節(jié),清除到最后一個(gè)字節(jié),確保卡上“無(wú)殘留”,從而不會(huì)影響我后續(xù)的工作;當(dāng)整張卡被清除的那一刻,開(kāi)心!??!文章中的例程包含標(biāo)準(zhǔn)容量卡SDSC的和高容量卡SDHC的例程;以我16G的金士頓SD卡為例;流程首先你需要獲取SD卡上的CSD寄存器值,從而計(jì)算出...

史海拾趣

問(wèn)答坊 | AI 解惑

在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)前位置的源代碼?!币胰ワ@示反匯編的代碼,這是怎么一回事???昨天

我的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通信協(xié)議的好書

最近做關(guān)于485方面的通信設(shè)備,但第一次接觸,感覺(jué)比較迷惘,希望哪位大蝦給推薦幾本好書,謝謝?!?

查看全部問(wèn)答∨

串口通信設(shè)置問(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)答∨

rSTM32F10x中斷能否做成電平中斷?

                                 如題~…

查看全部問(wèn)答∨

drive do not support coverage

昨天還好好的,今天就提示這樣的問(wèn)題了。不知和解? 能下載,就是下載完后需要等待好長(zhǎng)一段時(shí)間才能出現(xiàn)調(diào)試窗口?!?

查看全部問(wèn)答∨
小廣播
設(shè)計(jì)資源 培訓(xùn) 開(kāi)發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號(hào)

 
EEWorld服務(wù)號(hào)

 
汽車開(kāi)發(fā)圈

 
機(jī)器人開(kāi)發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號(hào) 京ICP備10001474號(hào)-1 電信業(yè)務(wù)審批[2006]字第258號(hào)函 京公網(wǎng)安備 11010802033920號(hào) Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved