最近调试触摸屏裸机程序,下到SDRAM中就是进不了中断,在ADS下调试,触摸屏一发出中断就提示Dummy error......
后来想了一下,其实在ADS中调试中断这个方法论都是错误的,利用supervivi的download&run功能调试也是错误的。
因为两种情况下内部SRAM的地址0处都不存在你要调试的程序的中断向量表,不能正确将中断引导到你编写的中断服务程序中来。
解决办法:
1.直接烧写到nand第0块(如果代码大于4K,启动代码中必须要有拷贝到SDRAM功能)
2.改写自己的程序,在初始化中断之前将中断向量表拷贝到内部SRAM。这个方法貌似有点难度,汇编要比较牛才行。
3.利用MMU的重定向功能。这就是网上有人说要包含MMU.C然后主程序里面调用init_mmu的原因了。
阅读(514) | 评论(0) | 转发(0) |