记录:正点原子STM32板子,mdk里用reset and run下载后重启不起作用,代码里用寄存器软重启也不起作用。原来是串口DTR导致的问题

当我使用一款串口助手 里面有带DTR设置时,如下图右下方标出:

会出现标题的现象

现在分析:

1.reset and run用的是swd接口,其上有连MCU的rst引脚,可能是通过硬件来reset mcu的,也有可能是发送软重启命令,参考swd protocol里面描述的"When the erase is complete reset the device by pin reset or by using the SYSRESETREQ bit of AAP_CMD"

2.寄存器软重启则不可能通过硬件来reset

关于第1个里面是不是硬件重启可以用示波器看看,我这边手上没有示波器就没管了。因为2已经足够说明不是重启本身的问题,我代码直接软重启都不起作用,就推测是BOOT出了问题,而正点原子的板子里面有个USB-串口一键下载电路:

BOOT0还有个100K的下拉在别处没有标出,关于这个一键下载电路的原理网上搜“正点原子STM32一键下载电路”之类的关键字即可,可以参考网友的这篇:https://blog.csdn.net/hsx201612/article/details/84194918

另外关于串口DTR信号的说明参考:https://en.wikipedia.org/wiki/Data_Terminal_Ready

我测试当串口助手单击使能了DTR后(使能会标红点),我测试板子上面的DTR电平如下:

由于DTR在上电几秒后被PC端通过串口助手拉低了,拉低后BOOT0会拉高,BOOT0拉高后,由于板子上面我们BOOT1是拉低的,对照启动信息知道,此时由系统存储器启动,进入MCU内置bootloader,是给串口下载用的。因此进了bootloader打转去了,表现就是重启失败,实际上重启成功了,只是一直在系统存储器打转。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值