前提
我是32板子外接传感器,要求上电输出并且进行数据处理
问题描述
debug模式下值都是正确的,分步调试和debug模式下运行程序都是正常的,退出debug模式,单独上电运行程序,发现数据输出有误
解决办法
在系统初始化后加上延时1s~2s或者3 s ~ 5s,确保初始化后电压稳定
问题原因
调试的时候,要程序装载,本身板子上一直有电的,然后这时候再装载程序,那么它是是相对来说这个时间是比较宽裕的,但是你要是不在调试状态,直接断电再上电,那很多的时候它是上电,这个电源还没就稳定,你的程序就开始跑开了,比如这个电源还没稳定,你的程序已经跑到while(1)里边儿去了,那很多时候这个芯片儿就初始化,就没初始化好。
我们知道重新上电瞬间电流会稍微大一点,然后稳定,在电压或者电流波动情况下,程序没有初始化完成,导致计算有误差。
这个没处理好一般指的是这些传感器或者外设没处理好,在系统系统初始化后加点延时,然后打印一些数看看