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

本文涉及的产品
视频直播,500GB 1个月
简介: STM32单片机串口一键下载电路与操作方法详解

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串口就可以完成程序下载工作。对于那些只有串口的单片机控制板无疑是一个完美的选择。

相关文章
|
3月前
|
芯片
STC15F100E单片机模拟串口
STC15F100E单片机模拟串口
STC15F100E单片机模拟串口
|
1月前
stm32f407探索者开发板(十七)——串口寄存器库函数配置方法
stm32f407探索者开发板(十七)——串口寄存器库函数配置方法
171 0
|
5天前
|
人工智能 C语言
【51单片机】让AI识别电路图,帮你进行编码(以51单片机为例)
【51单片机】让AI识别电路图,帮你进行编码(以51单片机为例)
|
1月前
STM32CubeMX 串口收发一帧数据
STM32CubeMX 串口收发一帧数据
33 9
|
1月前
|
芯片
STM32CubeMX 串口数据收发
STM32CubeMX 串口数据收发
23 2
|
2月前
单片机IO口模拟串口实现原理
单片机IO口模拟串口实现原理
24 5
|
1月前
|
监控
stm32f407探索者开发板(十八)——串口通信实验讲解(USART_RX_STA流程图详解)
stm32f407探索者开发板(十八)——串口通信实验讲解(USART_RX_STA流程图详解)
|
2月前
|
Web App开发 传感器 Linux
【嵌入式软件工程师面经】STM32单片机
【嵌入式软件工程师面经】STM32单片机
65 1
|
3月前
|
传感器
基于51单片机的自动浇花器电路
该文档是一个基于AT89C51单片机的自动浇水灌溉系统的设计方案。系统由5V供电模块、土壤湿度传感器模块、ADC0832模数转换模块、水泵控制模块、按键输入模块、LCD显示模块和声光报警模块组成。它通过检测土壤湿度并将其转换为数字信号,与预设的湿度上下限值进行比较,以决定是否启动水泵进行灌溉。用户可以通过按键设置湿度上下限值,LCD屏幕实时显示当前湿度和上下限值。如果湿度低于下限,系统会启动声光报警并打开水泵;当湿度超过上限,声光报警关闭,但水泵会继续工作,直至湿度下降到下限以下。设计中还提供了Proteus仿真电路图和C代码实现。
41 1