在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!)    创芯人才网--重磅上线啦!
查看: 2548|回复: 4

44b0中断的详解

[复制链接]
发表于 2005-7-27 15:43:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
LBSALE[1]LBSALE[这个贴子最后由coffeeyu在 2005/07/28 01:42pm 第 2 次编辑]

44b0中断的详解
44b0中断的详解
S3C44B0X的中断控制器有30个中断源。
S3C44B0X支持新的中断处理模式称为(vectored interrupt mode),在多个中段请求发生时,
由硬件优先级逻辑确定应该有哪个中断得到服务,同时硬件逻辑使中断相量表的跳转指令加载到
(0X18或0X1C)位置,在该位置执行跳转指令使程序跳到相应的中断服务线程,因此相对与传
统的arm的软件方法能够大大减少中断进入延时。
有两种类型的中断模式,FIQ (快速中断)和IRQ.所有的中断源在中断请求时应该确定使用的
中断模式。在网络上广为流传的44b0开发板例程中,大部分使用的都是IRQ中断模式(请查阅
寄存器rINTCON)。
一般来讲,使用44b0开发板进行调试时,无需更改44b.h,44blib.h,def.h,option.h,44binit.s,
44blib.c,44blib_a.s,memcfg.s,option.s等程序,甚至无需看懂,即可编程使用44b0开发板。
如前所述,硬件逻辑使中断相量表的跳转指令加载到(0X18或0X1C)位置,在该位置执行跳转指令
使程序跳到相应的中断服务线程,用户只需定义相应的中断服务程序即可。中断向量表的定义如下
(节选,请看44b.h)
/* ISR */
#define pISR_RESET (*(unsigned *)(_ISR_STARTADDRESS+0x0))
#define pISR_UNDEF (*(unsigned *)(_ISR_STARTADDRESS+0x4))
#define pISR_SWI (*(unsigned *)(_ISR_STARTADDRESS+0x8))
#define pISR_PABORT (*(unsigned *)(_ISR_STARTADDRESS+0xc))
#define pISR_DABORT (*(unsigned *)(_ISR_STARTADDRESS+0x10))
#define pISR_RESERVED (*(unsigned *)(_ISR_STARTADDRESS+0x14))
#define pISR_IRQ (*(unsigned *)(_ISR_STARTADDRESS+0x18))
#define pISR_FIQ (*(unsigned *)(_ISR_STARTADDRESS+0x1c))
.........................................
#define pISR_EINT4567 (*(unsigned *)(_ISR_STARTADDRESS+0x74))
#define pISR_EINT3 (*(unsigned *)(_ISR_STARTADDRESS+0x78))
#define pISR_EINT2 (*(unsigned *)(_ISR_STARTADDRESS+0x7c))
#define pISR_EINT1 (*(unsigned *)(_ISR_STARTADDRESS+0x80))
#define pISR_EINT0 (*(unsigned *)(_ISR_STARTADDRESS+0x84))
用户定义相应的中断服务程序,可以参考该语句,
pISR_EINT4567=(unsigned)Key_Int;;; //将外部中断4567产生的中断,指向函数Key_Init
当然,用户也可以根据自己的爱好,任意改变函数名,
pISR_EINT4567=(unsigned)MyCat; //函数名由用户定义
最好在程序开头声明一下,
void __irq Mycat(void);;;
显然,至此可以基本理解44b0的中断,是如何与程序中的中断服务子程序联系起来的了。
中断的硬件逻辑,将检测到的中断,以某种方式指向中断服务程序的地址,该地址在头文件
中以宏定义的形式出现。用户在自己的程序中,将中断服务子程序的地址付给该指针,从而
将其联系起来。
发表于 2007-1-29 12:25:36 | 显示全部楼层
不错,不错!
发表于 2007-2-23 07:53:37 | 显示全部楼层
谢谢拉!在哪儿能找到更多东西呢?
发表于 2007-3-7 11:25:19 | 显示全部楼层
kankan
发表于 2007-3-7 11:27:00 | 显示全部楼层
kankan
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-27 04:39 , Processed in 0.037293 second(s), 10 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表