s3c2410 中断

本文探讨了S3C2410处理器在MMU开启和关闭状态下异常处理的不同方式,并通过实例说明了如何定义和使用虚拟地址指针来实现异常跳转。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

s3c2410异常产生时,若MMU开启,pc跳向虚拟地址的0x00000000-0x0000001c执行异常;若MMU没有开启,PC跳向物理地址的0x00000000-0x0000001c执行异常。

 

若地址映射时,0x30000000,0x00000000,0x8C000000指向同一个物理地址,

#define pISR (*(unsigned *)(0x00000000+0x18)) //定义虚拟地址指针(指向虚拟地址0x00000018处)
0x00000000换成过0x30000000,0x8C000000,都可以正常工作
pISR =(unsigned)(0xEA000000)+(((unsigned)IsrHandler - (0x8C000000 + 0x18 + 0x8) )>>2);  //向虚拟地址处写入跳转语句

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值