最近在使用IAR调试程序的时候,突然发现程序中如果有断点,程序就不能单步执行了。
如下图所示,程序全速执行到断点处。
这时候如果点最上面工具栏的单步调试按钮时,程序会一直在这一行,不能继续往下走。
以前调试时到断点后点单步执行,程序就会继续往下执行。但是最近突然出现了这种情况,在网上找解决方法一直没找到。今天无意间发现了,原来是一个地方设置的问题。
不能单步执行,就是没有勾选SL_LINK 中的 Disable interrupt when stepping
这个选项。这个选项的意思就是当单步运行的时候就禁止断点功能。
将这个选项勾上,这时候程序运行到断点处之后,单步执行就可以使用了。
将这个选项选上之后,就可以正常单步调试了。