新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > STM32单片机串口一键下载电路与操作方法详解

STM32单片机串口一键下载电路与操作方法详解

作者:时间:2018-08-01来源:网络收藏

在此介绍STM32串口一键下载电路与操作方法详解。

本文引用地址:http://www.eepw.com.cn/article/201808/384877.htm

STM32三种启动模式对应的存储介质均是芯片内置的,它们是:

1)用户闪存 = 芯片内置的Flash。

2)SRAM = 芯片内置的RAM区,就是内存啦。

3)系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootloader,就是通常说的ISP程序。这个区域的内容在芯片出厂后没有人能够修改或擦除,即它是一个ROM区。

要了解STM32的几种启动模式.

BOOT0接GND,BOOT1接GND.那就是正常的启动模式,从flash加载代码.

而BOOT0接V3.3,BOOT1接GND.则是ISP模式,也就是串口更新代码.

其次,你要了解STM32 ISP下载代码的过程.

首先BOOT0接V3.3,然后复位STM32.STM32就会加载ISP代码(固化存储在内部),从而进入ISP模式.此时便可以通过串口下载程序了.

最后再来看看一键下载是怎么实现的呢?

从原理图可知:DB9串口的RTS控制BOOT0,DTR控制RST.

我们要达到下载的目的,就必须先让RTS拉高BOOT0(设置BOOT0为1),然后再让DTR控制RST为低(STM32为低电平复位).然后再释放RTS为高(停止复位),然后再开始串口下载代码(此时BOOT0可以为高,也可以为低).

所以我们看到mcuisp连接过程是:

DTR电平置高(3-12V),复位(DTR接了RST)

RTS置低(-3--12V),选择进入BootLoader(RTS接了BOOT0)

...延时100毫秒

RTS电平变高(+3-+12V)释放复位(释放复位,但是此时BOOT0为高,所以进入ISP模式)

开始连接...4, 接收到:1F (连接成功)

在串口COM0连接成功@230400bps,耗时437毫秒

DTR维持高

【需要注意的是 DTR_N是DTR的反相电平 RTS_N是RTS的反相电平】

注:此电路不需要USB转串口芯片,只要一个普通的DB9串口就可以完成程序下载工作。对于那些只有串口的控制板无疑是一个完美的选择。

  • STM32中文官网
  • STM32单片机官方开发工具
  • STM32单片机参考设计


关键词: 单片机

评论


相关推荐

技术专区

关闭