日韩在线不卡免费视频一区,日韩欧美精品一区二区三区经典,日产精品码2码三码四码区,人妻无码一区二区三区免费,日本feerbbwdh少妇丰满

電源漫談
認(rèn)證:優(yōu)質(zhì)創(chuàng)作者
作者動態(tài)
數(shù)字電源控制器大電流I/O pin特性解析
2024-01-03 08:17
SiC功率器件的H3TRB測試規(guī)范解析
2024-01-03 08:15
SiC MOSFET柵極電阻的影響分析
2024-01-03 08:14
光伏微逆變電路的逆變?nèi)珮虻湫屯負(fù)浞治?/div>
2023-03-05 20:04
光伏微逆變器應(yīng)用中的拓?fù)浼肮ぷ髟矸治?/div>
2023-03-05 20:00

MCU中斷處理的那些事(一)

大家好,我是電源漫談,很高興和各位一起分享我的35原創(chuàng)文章,喜歡和支持我的工程師,一定記得給我點(diǎn)贊、收藏、分享。

MCU在正常的運(yùn)行中,總是會遇到一些突然發(fā)生的事情,這些事情往往是MCU的硬件驅(qū)動的,和MCU的運(yùn)行是異步關(guān)系的一些高優(yōu)先級事件,這些事件可以打斷MCU的正常代碼運(yùn)行,從而去操作另外的事情,這個事件就是中斷,它需要去做的事情就是中斷服務(wù)程序ISR.打個比方,一個人正在工作,突然口渴了想喝水,那么"喝水"這個比"工作"更優(yōu)先的事件就可以打斷工作。本文主要針對16MCUDSC的中斷處理系統(tǒng)進(jìn)行一些討論。

圖1 中斷向量的位置及執(zhí)行示意圖

首先我們簡要介紹一下中斷處理系統(tǒng)。16MCU有一個中斷向量系統(tǒng),這個向量系統(tǒng)可以支持高達(dá)8個不可maskTraps源,及高達(dá)246個普通中斷源。有人會問,什么是Traps源?這里其實(shí)就是如前面所描述的那樣,它是不可屏蔽的中斷,這些中斷可以表示一些硬件或者軟件上的故障發(fā)生。

在這些芯片中,每一個中斷源都可以指定為7個不同的優(yōu)先級,即從0-7的優(yōu)先級。大家都知道進(jìn)到中斷和出中斷是需要時間的,一般而言,基本的進(jìn)入中斷的延時為3個指令周期,而出中斷延時為四個指令周期。這就是16MCUDSC的中斷處理系統(tǒng)的一個基本認(rèn)識。

每一個中斷源,都可以觸發(fā)一個獨(dú)立的代碼段的執(zhí)行,這個獨(dú)立的代碼段就稱之為中斷服務(wù)程序ISR,而每一個ISR代碼的起始地址是存儲在芯片Flash的主中斷向量表中,即IVT中。這里需要注意的是,每一個中斷向量都是一個24位的地址。

圖2 芯片F(xiàn)LASH存儲的中斷向量表及輔助中斷向量表

從上圖2可以看出,在MCU內(nèi)部,用戶的代碼是放在中斷向量表之后的,同時,我們也可以看出,除了中斷向量表IVT之外,有的芯片還存在一個輔助中斷向量表AIVT.

圖3 輔助中斷向量的作用

輔助中斷向量AIVT的主要作用是提供一種在不同應(yīng)用之間切換的方式,這種切換不需要重新編程中斷向量,另一種情況,比如說評估采用不同的軟件算法的兩個應(yīng)用的切換等。

圖4 輔助中斷向量的定義和使能

當(dāng)定義了Boot Segment后,并且AIVT使能之后,輔助中斷向量AIVT才可以使用。除了在配置位AIVTDIS上使能AIVT之外,還需要在特殊功能寄存器INTCON2中的AIVTEN位來使能它。當(dāng)使能AIVT后,所有的中斷和中斷處理過程都會使用AIVT而不是用IVT了,這一點(diǎn)需要注意。

圖5 輔助中斷向量表的FLASH位置

圖6 輔助中斷向量的位置

AIVTFLASH中的位置起始于Boot Segment的最后一個PAGE的第一個半頁,這個起始位置由BSLIM來定義(具體某一個中斷向量的地址由頁地址和偏移地址決定),如圖5所示。第二個半頁實(shí)際上是不可以使用的,這里需要注意BSLIM的單位是PAGE

圖7 Boot Segment和AIVT的關(guān)系

圖8 BOOT Segment中AIVT的實(shí)現(xiàn)

這里我們舉例說明,當(dāng)我們設(shè)置三個PAGE作為BOOT Segment時,這里將設(shè)置BSLIM<12:0>0x1FFC,最低的兩位是0,確保實(shí)現(xiàn)3PAGE.具體的FLASH的位置在圖7中可以了解。

總結(jié),以上初步介紹了16MCU的中斷處理系統(tǒng)的一些基本的特性,后面我們將繼續(xù)介紹這一話題。

聲明:本內(nèi)容為作者獨(dú)立觀點(diǎn),不代表電子星球立場。未經(jīng)允許不得轉(zhuǎn)載。授權(quán)事宜與稿件投訴,請聯(lián)系:editor@netbroad.com
覺得內(nèi)容不錯的朋友,別忘了一鍵三連哦!
贊 5
收藏 3
關(guān)注 447
成為作者 賺取收益
全部留言
0/200
成為第一個和作者交流的人吧