STM32读内部FLASH,偶尔读取错误

问题:STM32读内部FLASH,偶尔读取错误

解决建议:

  1. 接示波器,查flash电源滤波 TVS。
  2. reset复位引脚示波器查看上电时候的曲线,上电到正常电压的时候需要多长时间,上电延时
  3. 程序已经采取读5遍的措施了,如果连续5遍都读不正确(中间加5ms间隔),则写flash。
  4. 数据做CRC处理,通过CRC效验可以确保数据正确。
  5. 为增强实际的可靠性,写入数据,在写入数据后,再读出来进行数据的比对,确认写入是否正确;或者在需要读出的时候,读两次、或者多次,检查每次的数据是否一致。