问题调试secondary_bootloader

2个职位/ 0个新职位
最后发表
motred
离线
最后看到:5年10个月前
专家
加入:2014-01-20 21:48
问题调试secondary_bootloader

我一直在使用secondary_bootloader项目,在尝试使用JLink Lite调试项目时,我似乎遇到了一些问题。

当我在Keil (v5.12)中开始调试时,看起来代码下载正确了,但随后程序集完全与调试器窗口中的代码不同步,我在Keil命令窗口中得到以下错误:
**JLink警告:XPSR的t位是0,但应该是1。更改为1。

当我尝试逐步执行代码时,PC从0x00000000开始,我可以逐步执行指令,直到到达断点。这些指令似乎与secondary_bootloader代码不对应。

我的其他项目似乎工作得很好,只是secondary_bootloader项目引起了问题。你知道发生了什么吗。

motred
离线
最后看到:5年10个月前
专家
加入:2014-01-20 21:48
我取得了一些进展,但我

我取得了一些进展,但我仍然有一些问题。

PC重置为0x00000000使我认为问题可能是散点文件。当我打开secondary_bootloader的默认scatterfile时,前两行被设置为:
LR_IROM1 0x00000000 0x00008000 {;负荷地区size_region
ER_IROM1 0x00000000 0x00002000 {;加载地址=执行地址

由于RAM从0x20000000开始,我将以下几行更改为:
LR_IROM1 0x20000000 0x20008000 {;负荷地区size_region
ER_IROM1 0x20000000 0x20002000 {;加载地址=执行地址

一旦我做了这个更改,调试器就开始为这个项目工作了。

为什么分散文件被设置为它在演示项目?
关于secondary_bootloader的scatterfile,有什么需要注意的吗?