请教关于LPC2131运行出错的问题

[复制链接]
2423|0
 楼主| Tsuisting 发表于 2007-6-6 12:46 | 显示全部楼层 |阅读模式
用LPC2131自己做的板子,以前能正常运行.<br />使用工程模板建立的UC0SII&nbsp;for&nbsp;lpc21xx工程,在选择DebugInFLASH时,能正常下载,但运行到目标板初始化时就会发生取数据中止.<br />void&nbsp;TargetResetInit(void)<br />{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//会在这个地方发生取数据中止<br />&nbsp;&nbsp;&nbsp;&nbsp;#ifdef&nbsp;__DEBUG_RAM<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MEMMAP&nbsp;=&nbsp;0x2;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;#endif<br />&nbsp;&nbsp;&nbsp;&nbsp;.......<br />}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;如果建立的工程是ARM&nbsp;Executable&nbsp;Image&nbsp;for&nbsp;lpc21xx,在选择DebugInRAM时,也能正常下载,但也会发生与上面一样的情况.但是好像不是取数据中止,而是在汇编中看到的从0x00000000地址开始都是&quot;[0xffffffff]&nbsp;&nbsp;&nbsp;dci&nbsp;&nbsp;0xffffffff;&nbsp;?&nbsp;undefined&quot;,这是不是说没有写进去?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;在选择DebugInFLASH时就不会出现这种情况,会一直执行到&nbsp;B&nbsp;__main,&nbsp;&nbsp;但从__main到main之间会出现错误.每次执行到地址0x00000394上&quot;stmfd&nbsp;r13!,{r0,r1,r4,r14}&quot;就会发生取数据中止.但如果不使用__main,而是直接跳转到main,则不会出错.<br /><br />&nbsp;&nbsp;&nbsp;这会是什么原因呢?是我原来写进去的的程序对Flash加密了吗?但我用H-Flasher擦除过了(没有用ISP,是不是一定要用ISP?)还是我的硬件有问题?但我原来下载程序到Flash里面,调试时和脱机时都能正常运行.会不会是我的开发环境不对?但我给LPC2210的开发板写程序却都正常(那个是用的Easy-JTAG).实在想不明白,请各位高手指点:)万分感谢:)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

3

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部