IAR中的断点与代码优化等级问题

本文可用来解决CC2530在ZSTACK下可以设置断点,调试的时候却无法到达这个断点的问题。其它在IAR中可以单步调试却无法进入断点的单片机也可以参考。
首先要确定勾选了C-SPY-specific extra output file
IAR中的断点与代码优化等级问题_第1张图片
如果在A行设置的断点,单步调试的时候却只能到达A后边的某几行,可能的一个原因就是代码优化的等级太高了,导致编译器实际上没有在A行停顿。
解决办法:
在OPTION下修改优化等级
IAR中的断点与代码优化等级问题_第2张图片
IAR默认的是最高优化等级。如果程序不大建议不优化。如果优化等级高,那么一些非汇编的延时函数可能无法执行,一些局部变量的值可能在使用过后,即便没有离开自己的作用域就被优化掉。
关于IAR优化的更多知识

你可能感兴趣的:(ZigBee)