加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

项目中遇到的问题————Flash擦写

发布时间:2020-12-15 17:36:43 所属栏目:百科 来源:网络整理
导读:在断电保护的压力测试的过程中,不知道为什么,总是运行几十次就卡掉了。而且极其不稳定,有时几十次,有时几百次。用star抓包,发现所有包都很正常,就是在最后发送完以后,没有回状态字,而是直接卡死。刚开始猜想可能的原因,可能是误差累计造成的。因为
在断电保护的压力测试的过程中,不知道为什么,总是运行几十次就卡掉了。而且极其不稳定,有时几十次,有时几百次。用star抓包,发现所有包都很正常,就是在最后发送完以后,没有回状态字,而是直接卡死。刚开始猜想可能的原因,可能是误差累计造成的。因为记得以前在通信的时候晕倒过,如果每一个字节的传送,有时间误差,前几帧还能正常传送,但是随着误差的不断累计,就会造成字节不能正常传送,现在想想不可能是这个错误,因为到最后字节的传送都是正常的。然后发现把断电保护中的Flash操作屏蔽掉后就不会发生这样的错误,根据前人的经验,推测可能的原因,就是发送0x60的错误。因为在这里是通过定时器中断的方式进行发送60的,而Flash擦写又比较耗时,而且不可被打断,也就是会出现这样的一种情况,在Flash擦写还没有结束的时候,产生了中断,造成矛盾。解决方法:在Flash的擦写函数中,先保存中断的状态,关闭中断,处理完成后再恢复。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读