背景
使用STM32L103系列芯片,使用内部EE存放数据(不经常修改),在测试过程中出现串口接受数据不完全的问题,丢包。
原因分析
查看芯片手册发现,内部EE是flash模拟出来的,在写数据之前的时候会禁用中断,写完后开启中断,如果在中途串口有数据接收,数据会丢失。只有在写完后串口才会恢复正常。
解决方案
在使用内部EE的时候,一定要避开频繁的写入,一般固化一些固定的数据,在生产的时候写入一些常量,出厂后就禁止使用内部EE。
版权声明:本文为CSDN博主「Evan_Wang1」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/keystonew/article/details/121360646
暂无评论