在调试STM32F405的时候发现改变程序时供电电流变化达到20ma,而程序可能只是一点点改动,后来发现将一个IO口置位的代码重复写一遍就小了20ma,在后面的代码写入时电流变化并不是按照开启外设数量而增大,总感觉跟代码有关,但有时候代码只改了一点点,更换了其他人的板子结果是一样,排除硬件问题。
由于公司电脑不能联网,所以帖子配图有些少。
后来我改了一个原子最简单的代码,一个蜂鸣器的代码,如下图:
主程序中那句开启C口时钟和device——init是一样的,但是如果调用Device政府函数注释掉主程序中RCC_那句话,电流达70ma,如果注释掉DEIVCE_init,加入主程序中RCC——电流只有52ma。
上面这是个表现形式,比较直接表明,同时改动优化等级也会影响电流,关键是代码一点点变化带来的电流变化很大,实在是烦扰,以前没有关注这个问题
|