<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > ARM S3C4510B系統中的異常中斷技術(shù)

ARM S3C4510B系統中的異常中斷技術(shù)

作者: 時(shí)間:2012-03-29 來(lái)源:網(wǎng)絡(luò ) 收藏

3.2 SWI的調用與返回

對于SWI的調用要根據現場(chǎng)所處的處理器模式進(jìn)行調用。通常用戶(hù)模式下調用SWI功能只需將處理器所需要的參數存放于寄存器中,然后調用相應功能號的功能。

Mov r0,#80
假設參數為#80
swi 0X1
SWI中斷立即數1

由于SWI中斷功能調用在特權模式下執行,故而當在特權模式下調用SWI功能時(shí),必須對當前模式下的SPSR和寄存器LR進(jìn)行保存。
stmfd sp!,{r0-r12,lr}
保存寄存器
mov r1,sp
mov r0, spsr_svc
stmfd sp!,{r0} ;保存SPSR
……
讀取立即數,調用SWI中斷處理程序
ldmfd sp!,{r0}  ;恢復SPSR
msr spsr_svc, r0
ldmdf sp!,{r0-r12,lr}^ ;恢復其他寄存器

4 中的IRQ中斷實(shí)例

4.1 IRQ異常中斷的產(chǎn)生

處理器常用于進(jìn)行外部異常的響應和操作系統進(jìn)程的控制。CPSR寄存器的I控制位置0時(shí),處理器在指令邊界查詢(xún)是否有IRQ請求,系統的外部中斷管理器或者外設通過(guò)使能處理器的IRQ輸入管腳產(chǎn)生IRQ異常中斷。

4.2 IRQ異常中斷的處理程序

IRQ異常中斷產(chǎn)生后,根據中斷向量的指令跳入相應的中斷處理程序。系統的外圍中斷管理硬件會(huì )將所用的IRQ中斷請求按照優(yōu)先級進(jìn)行排列,把最高優(yōu)先級的IRQ中斷的信息放入寄存器中。通常的IRQ中斷處理程序也需要保存返回地址、寄存器,而且需要屏蔽IRQ中斷,以保證優(yōu)先級較高的中斷完全處理。
sub lr,lr,#4
stmfd sp!,{lr}
保存返回地址
mrs r14,spsr_irq
stmfd sp!,[r12,r14]
保存r12,spsr
mov r12,#IntBase
讀取中斷管理接口的基址

ldr r12,[r12,#IntLevel]
計算當前中斷的物理地址
mrs r14,cpsr
bic r14,r14,#0X80
清零IRQ中斷禁止位
msr cpsr_irq,r14
開(kāi)IRQ中斷
ldr pc,[ pc,r12,lsr #2]
跳轉到相應的中斷處理程序
dcd PirQ0Handler
dcd PirQ1Handler

dcd PirQnHandler
優(yōu)先級為n的中斷處理程序地址
PirQ0Handler
stmfd sp!,{r0-r11}
……
優(yōu)先級為1的中斷處理程序
ldmfd sp!,{r0-r11}
msr spsr_irq,r14
恢復r12和spsr
ldmfd sp!,{pc}^ ;中段返回
……
dcd PirQnHandler
中斷優(yōu)先級為N的中斷處理程序
……

塵埃粒子計數器相關(guān)文章:塵埃粒子計數器原理


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>