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

linux – 如何通过串口闪存STM32

发布时间:2020-12-14 01:24:11 所属栏目:Linux 来源:网络整理
导读:我有一个STM32F102微控制器,我想通过串口编程. 虽然有一个可用于Windows的闪存,但我想在Linux机器上进行.我尝试用这个脚本来做 我已设置BOOT0 = 1且BOOT1 = 0,重启微控制器.但它不起作用.我得到以下输出 Can't init. Ensure BOOT0=1,BOOT1=0,and reset devic
我有一个STM32F102微控制器,我想通过串口编程.

虽然有一个可用于Windows的闪存,但我想在Linux机器上进行.我尝试用这个脚本来做

我已设置BOOT0 = 1且BOOT1 = 0,重启微控制器.但它不起作用.我得到以下输出

Can't init. Ensure BOOT0=1,BOOT1=0,and reset device
Traceback (most recent call last):
  File "stm32loader.py",line 552,in <module>
    bootversion = cmd.cmdGet()
  File "stm32loader.py",line 140,in cmdGet
    if self.cmdGeneric(0x00):
  File "stm32loader.py",line 137,in cmdGeneric
    return self._wait_for_ack(hex(cmd))
  File "stm32loader.py",line 88,in _wait_for_ack
    raise CmdException("No response to %s" % info)
__main__.CmdException: No response to 0x0

解决方法

以下是一些提示:

>在重置/打开电路板之前连接串行电缆.否则一些瞬态可能会破坏串行引导加载程序.
>确保使用的是TTL级USB转串口转换器,而不是RS-232电缆. RS-232具有反转电平,更糟糕的是,其-15V至15V的电压范围可以烧毁您的STM32.
>确保RX和TX连接正确.
>尝试使用stm32flash.>我记得大多数STM32的串行引导加载程序不支持高于115200的波特率.引导加载程序可以自动检测波特率,我通常使用的是57600.

(编辑:李大同)

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

    推荐文章
      热点阅读