搜索
bottom↓
回复: 1

什么原因会导致STM32闪存编程错误(已擦除.....)

[复制链接]

出0入0汤圆

发表于 2012-1-8 15:24:54 | 显示全部楼层 |阅读模式
最近用STM32FRBT6做了一个产品,有本地升级代码和远程升级代码两种方式,产品已经正常使用,但中间出了一个问题,一直没找到原因,后来用其他方法解决。
硬件连接:USART1 接PC 升级接口。
          USART2 接 GPRS
          USART3 接 GPS
进入升级程序,只打开USART1中断,接收数据并更新FLASH,一切正常。但只要升级过程中USART2或者USART3有数据到来,升级就会失败,失败原因是写进去Flash的数据和读出来的不一致。已经测试了几个方法,把USART2和3的端口配置为输出,使用__disable_irq在接收完数据包后关闭中断再编程闪存,仍然不行。最后没办法就在升级的时候关闭两个模块的电源,问题就解决了。一直不明原因,坛子里面有没有碰到类似情况,或者这方面的专家,高手指点一二。

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

 楼主| 发表于 2012-1-9 11:40:28 | 显示全部楼层
新情况,发现GPRS有数据输出时会产生波峰电流,而flash编程的时候极易受到波峰电流干扰,受干扰的原因可能是Bootloader程序为了节省空间没有对某些GPIO进行配置,处于高阻状态,还未证实,先留个记号,有时间再测试。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-19 08:01

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表