导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[happyjackqu]S3C2410(IRQ)中断处理过程



No.72583
作者:happyjackqu
邮件:jinzhuqu@163.com
ID:87244
登陆:3次
文章数:5篇
最后登陆IP:121.32.50.229
最后登陆:2009/7/19 11:29:59
注册:2007/8/16 14:14:56
财富:123
发帖时间:2009/7/19 11:26:24
发贴者IP:113.66.19.28
标题:happyjackqu:S3C2410(IRQ)中断处理过程
摘要:No.72583S3C2410(IRQ)中断处理过程 在此要注意的是区别中断向量表和异常向量表。中断发生后总是从IRQ 或者FIQ 异常入口处进入,然后跳转到相应的异常处理程序处执行,这个异常处理程序一般都是进行查找中断向量表的操作,然后调用中断处理程序。
    以下是在应用中中断处理实现的过程:从中不难体会到中断的处理过程。
定义中断向量表的物理地址:

代码

.equ pISR_DABORT , (_ISR_STARTADDRESS+0x10)    
.equ pISR_RESERVED, (_ISR_STARTADDRESS+0x14)    
.equ pISR_IRQ , (_ISR_STARTADDRESS+0x18)    
.equ pISR_FIQ , (_ISR_STARTADDRESS+0x1c) //异常向量表    
……………………………………………………………………    
.equ pISR_EINT0 , (_ISR_STARTADDRESS+0x20) //中断向量表    
.equ pISR_EINT1 , (_ISR_STARTADDRESS+0x24)    
.equ pISR_EINT2 , (_ISR_STARTADDRESS+0x28)    
.equ pISR_EINT3 , (_ISR_STARTADDRESS+0x2c)   
将中断处理程序入口地址放入中断向量表:
欢迎到我的网店转转:

代码

pISR_EINT0 = (unsigned int)isrEINT0; // isrEINT0 中断处理程序    
pISR_EINT1 = (unsigned int)isrEINT1;   
定义中断处理程序:

代码

.extern Interrupt_Rbutton    
.global isrEINT0    
isrEINT0:    
IRQHandle Interrupt_Rbutton   
定义异常向量表:

代码

b HandlerUndef    
b HandlerSWI    
b HandlerPabort    
b HandlerDabort    
.long FileIDTable    
b HandlerIRQ    
b HandlerFIQ   
定义异常处理函数:

代码

HandlerFIQ: HANDLER HandleFIQ    
HandlerIRQ: HANDLER HandleIRQ    
HandlerUndef: HANDLER HandleUndef    
Handle ......

>>返回讨论的主题



  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:11毫秒 最大:78531毫秒 查询6次