我的IAR版本是8.1,芯片是CC2530,协议栈本版本是2.3,我的程序中设置了一个断点,在进入debugger后,点击全速运行,运行至断点处停下,这时如果我点击单步运行的话,程序会一直在那个语句运行(仅仅是一条语句,如a++;),每次都要点击很多次单步运行,才会跳出那个语句,这究竟是怎么回事?望解答!
PS:如果我不跑协议栈的话,是不会出现上述问题的。难道是因为代码量太大了,就会出现上述问题?有解决方法吗?
CC2540蓝牙4.0BLE开发:
TI把代码优化等级开到最高了,你看看汇编指令,单步的时候是不是一步一步的
linus crazy:
回复 CC2540蓝牙4.0BLE开发:
谢谢你的解答,我在断点所在函数前设置了#progma optimize=none,问题还是存在
niao cai:
我是菜鸟,我有一次遇到类似的问题,结果发现并不是卡死在断点处,而是又重新进入了断点
user450161651:
我现在遇到了设定的断点,无法进入。网上目前还没有找到怎么解决的。
YiKai Chen:
回复 user450161651:
设定的断点,无法进入,有可能是因為程序根本沒有執行到那邊
user450161651:
回复 YiKai Chen:
找到了无法设定断点的原因,project那里clean一下再编译就行。
现在是设定的某个断点,用run to cursor无法跳转到断点运行。
有的地方,把程序位置上下调整下就能运行,有的始终没有找到原因。