最近在使用ADS1.2调试S3C2440的时候遇到下面的问题:
1、在启动AXD后遇到 DBT Warning 00049: Image probably in wrong byte sex 这样的错误,经过多次试验,发现时JLink没有配置好的原因:
CPU的Endian应该配置为Little endian,如下:
经过这样的配置后关闭AXD,再重新打开AXD后在加载完image映像文件后就很自然地今天到AXD调试界面:
2、第二个问题是在直接运行的时候出现错误如下:
在网上查找了一些答案,有的说在Options->Configure Processor....中将Semihosting前面的复选框去掉,我这样试过后出现其它的问题,依然不能单步调试。另外一种解决方法是点击J-link的Configure,如图: 在CPU下的Reset strategy下选择No reset即可。
由于我的AK100仿真器出问题了,因此迫不得已用Jlink+Keil+SWD方式来调试LPC1111单片机,keil的版本是V4.73,Jlink的驱动最先用的是Jlink ARM v4.08版本,最开始是各种折腾,总之反正是没有能够调试成功,也不能擦写flash。后面我一步一步测试,先是用Jlink v4.08版本的JFlash来烧写LPC1111单片机,不成功;然后我将Jlink 驱动版本升级到v4.34然后就可以用JFlash烧写LPC1111了;这时在转到keil中来,我在以前的keil工程中直接选择Jlink仿真器,能识别到器件,但无论怎么样都不能烧写单片机flash,没有办法,网上各种方法都查询完了,最后我无意中新建立了一个空的工作,里面就一个main函数,这个时候我编译后,就可以烧写flash和单步调试了,将之前的代码移植到这个工程中也可以烧写和单步调试了