自学内容网 自学内容网

STM32G4 拉高boot0后usb无法进入dfu模式

问题背景

使用stm32g431制作了两块最小板,通过按键上拉的方式使设备进入dfu模式,每次通过usb dfu更新应用程序

问题描述

在一次使用网页通过dfu输入固件时出现异常,拔掉板子后再次按下boot按键再也无法进入dfu模式,另外一块板子一切正常,通过st-link将正常板子中flash的应用程序全部读出后写入有问题的板子中,无法恢复

异常点

  1. 出现问题后该板子无法通过boot按键进入dfu模式
  2. 出现问题后使用st-link连接swd接口进行固件更新显示芯片已进入写保护状态
  3. 使用另外一个芯片的固件写入无法恢复

最终解决办法

使用STM32CubeProGrammer读取好的板子中的Option bytes分区读取出后重写入坏的板子中,至此,芯片dfu恢复正常

可能的问题方向

  1. Option bytes中的boot addr相关地址被改写,参考来自MCU 无法进入片上 Bootloader

原文地址:https://blog.csdn.net/qq_41106435/article/details/143458899

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!