问题解决了!
这只是一个调试问题,但与预期不同!
使用调试器(SWIM模式)我在代码中的某处放置了一个断点,但是在硅片上使用调试模块,它会生成一个SW断点=>因此代码在此特定地址上更改,并在运行时进行校验和计算(如果不同)。
对删除的所有断点执行相同的操作=>它按预期工作!
使用模拟器和STICE仿真器模式也一切都很好,因为在这种情况下断点以不同的方式实现。
所以我们必须记住:校验和计算完成后没有SW断点! ;-)
以上来自于谷歌翻译
以下为原文
Problem solved!
It's simply a debugging problem but different than expected!
Working with the debugger (SWIM mode) I put a breakpoint somewhere in my code but doing it with the debug module on the silicon it generates a SW breakpoint => so the code is changed on this specific address and the checksum calculation at runtime if different.
Doing the same with all breakpoints removed => it works as expected!
With the simulator and with the STICE Emulator mode also everything is fine because the breakpoints are implemented in a different way in that case.
So we have to keep in mind: no SW breakpoints when checksum calculation is done! ;-)
问题解决了!
这只是一个调试问题,但与预期不同!
使用调试器(SWIM模式)我在代码中的某处放置了一个断点,但是在硅片上使用调试模块,它会生成一个SW断点=>因此代码在此特定地址上更改,并在运行时进行校验和计算(如果不同)。
对删除的所有断点执行相同的操作=>它按预期工作!
使用模拟器和STICE仿真器模式也一切都很好,因为在这种情况下断点以不同的方式实现。
所以我们必须记住:校验和计算完成后没有SW断点! ;-)
以上来自于谷歌翻译
以下为原文
Problem solved!
It's simply a debugging problem but different than expected!
Working with the debugger (SWIM mode) I put a breakpoint somewhere in my code but doing it with the debug module on the silicon it generates a SW breakpoint => so the code is changed on this specific address and the checksum calculation at runtime if different.
Doing the same with all breakpoints removed => it works as expected!
With the simulator and with the STICE Emulator mode also everything is fine because the breakpoints are implemented in a different way in that case.
So we have to keep in mind: no SW breakpoints when checksum calculation is done! ;-)
举报