终于找到中断在SDARM中不能进行的原因了
(中断时超级终端提示Dummy_isr error, interrupt number: 5, INTMSK = 0xffffffdf )
主要问题还是出在MMU上,具体MMU资料还是希望初学者去看看,这里我想说说裸机在SDARM中实现中断的步骤,希望对像我这样刚拿到板子的自学兄弟们有帮助。
方
法1:
在2440test文件中找到MMU.C的函数添加进来,找到(MMU_SetMTT(0x00000000,0x03f00000,
(int)__ENTRY,RW_CB); //bank0),将(int)__ENTRY改为0X30000000,然后在主程序中调用
MMU_Init();即可。
方法2:在2440test文件中找到MMU.C的函数添加进来,然后到2440init.s入口处(即ENTRY下面)添加
EXPORT __ENTRY
__ENTRY (要顶格写)
主函数中调用MMU_Init(),然后再进行中断的调试
具体为什么要这样做,看看地址映射方面的内容就明白了。
阅读(271) | 评论(0) | 转发(0) |