MDK的编译选项中,有几个优化的选项,一个是优化级别,一个是One ELF Section per Function。这最后一个ELF的选项,选上了以后,代码编译时会有什么效果和影响呢?
我写的一个段小程序,在定时中断中翻转IO口(按照设定频率),如果选择优化级别3的话,IO口翻转了以后,会立刻恢复原样(从高电平翻转到低电平后几个us就会重新回到高电平)。如果选择优化级别0的话,IO口的动作就和我设计的是一样的了。
另外,这个One ELF Section per Function的选项同样会影响我的编译结果。如果编译的时候不选择他,IO口的翻转不是按照设定频率来的,看波形是乱的,所以现在是有点没有头绪,不知道这些东西为什么要选上。什么时候要选,什么时候不选~~ |