详细图文剖析STM32单片机串口一键下载电路与操作方法

发布者:幸福梦想最新更新时间:2023-07-26 来源: elecfans关键字:STM32  单片机  串口  一键下载 手机看文章 扫描二维码
随时随地手机看文章

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

2310553542-0.jpg

231055L07-1.jpg

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

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

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

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

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

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

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

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

首先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单片机串口一键下载电路与操作方法

上一篇:STM32Cube HAL库中断处理机制 以及回调函数实现原理
下一篇:STM32学习:ADC/DMA/USART

推荐阅读最新更新时间:2024-11-17 02:27

ESP8266纯串口透传,助力设备上云端
项目有些久远,前年的机器人上需要的功能,当时是需要将STM32上的数据上传到服务器,比如机器人的速度,行驶距离,是否在拍照等等。便于管理者在PC或者手机上了解机器人的工作状态,同时可以远程下发指令给机器人,控制其完成相应动作。 因为所有的逻辑判断和控制都在服务器或者STM32上面,作为中间的无线模块仅仅需要上传STM32的数据并接收服务器下发的指令即可,所以这里对WiFi模块的要求不高,仅仅需要它作为透传功能即可。当时在选型的时候试过好几款WiFi模块,最终敲定了安信可的ESP8266,价格便宜,开发简单,但是搭建环境是真的不容易,深受其害。 选择好模块就该考虑使用AT指令还是使用SDK开发,AT指令固然简单,但是局限性非常大。如
[单片机]
ESP8266纯<font color='red'>串口</font>透传,助力设备上云端
飞思卡尔与Continental联合设计多核32位MCU,优化EBS应用
汽车行业的第一个三核微控制器设计将Power Architecture e200内核与Continental的无故障电子刹车系统(EBS)技术集成起来 德国慕尼黑(飞思卡尔技术论坛)讯--2007年1 0月1 6日 --微电子的不断发展使主流汽车的电子刹车系统(EBS)更可靠、响应更灵敏且更经济。为了支持下一代EBS及底盘控制系统,飞思卡尔半导体和位于法兰克福的大陆汽车系统 (Continental Automotive Systems) EBS事业部联合设计了一款高性能、多核微控制器(MCU),优化了EBS应用。 汽车业界的两位领导者正在就被称为SPACE的定制MCU展开合作,旨在为Continental的下一代EBS产品
[新品]
ADVFC32与51系列单片机的硬件接口电路
ADVFC32与51系列单片机的硬件接口电路如图1所示。图中是输入电压信号为正时的情况。在输入信号为负时,只要把电阻R1、R3接地,从第14脚直接输入即可。AD650的电路与ADVFC32的外电路相似。关于这两种芯片的引脚排列及内部结构等请参考有关手册。      由图1可见,接口电路非常简单,只要把V/F变换器输出的频率信号直接送到单片机8031的定时器1的计数输入端T即可。其设计思想为:从传感器来的mV级电压信号经运算放大器放大到0~10 V的电压后,加到ADVFC32的输入端,从频率输出端,OUT输出的频率信号加到单片机8031定时器1的计数输入端Tl上。在单片机内部由定时器作计数器时,由定时器1对输入脉冲计数。定时器O的
[单片机]
ADVFC32与51系列<font color='red'>单片机</font>的硬件接口电路
基于SE8510的MCU的供电问题解决方案
1.基于SE8510的反激式隔离电源设计 图1是SE8510反激式隔离电源系统原理图,SE8510是离线式隔离原边控制反激LED驱动控制IC.SE8510使用了一个坚固的高压隔离工艺能够承受一个输入电压达450 v的冲击,具有8-450V的宽输入电压范围。因此SE8510可以通过主线输入电压直接驱动,简化变压器的设计过程。具有准确的LED调节功能,PWM调节控制,开短路保护,过温保护等多功能。使整体应用设计比以往的方案设计变的更加简单。     图1:SE8510反激式隔离电路图 2.支持PWM调节输出电流,改变LED亮度 PWM调光通过PIN DIM加一个低频方波信号就可以实现。当PWM信号为零,门驱动器是关闭的,当PWM信号
[电源管理]
基于SE8510的<font color='red'>MCU</font>的供电问题解决方案
如何处理单片机未使用的引脚
通常我们并不会把所有的单片机的引脚都用完,有时候我们也在同一个产品上分高低配,因此如何对待一些不使用的引脚就成了一个问题。首先我们看一下单片机引脚的结构。 我们可以发现,一般单片机的IO口都是可以配置的。 CMOS器件引脚由N沟道和P沟道场效应管,通常在一个时刻,只有一个管子是开通的,但是,有一个非常短的时间转换期,这两种管子都会部分导通,在一个管子关闭而另一个开启的时候。一个没有端接的输入口可能振荡或在一个中间电平上浮动,导致所有场效应管设备都将在一个微导通的状态,导致了管子的损耗,增加了噪声,并要消耗额外的电源电流。 (Input Only)输入专用管脚 使用上拉或下拉电阻,将每个未使用的引脚拉到VSS或VDD,这是推荐的
[单片机]
如何处理<font color='red'>单片机</font>未使用的引脚
STM32开发笔记87: SX1268驱动程序设计(设置为STDBY模式)
单片机型号:STM32L053R8T6 本系列开发日志,将详述SX1268驱动程序的整个设计过程,本篇介绍将芯片设置为STDBY模式的相关驱动程序。 一、STDBY模式 芯片上电、复位和从睡眠模式唤醒,都会从Startup模式自动进入到STDBY模式。STDBY模式又称为待机模式或者旁路模式。 在待机模式下,主机应在进入RX或TX模式之前配置芯片。默认情况下,系统选择13MHZ的RC振荡器,以降低功耗。除睡眠模式外,其它模式XTAL时钟处于打开状态。然而,只有在应用程序对时钟要求严格,我们才需要打开XOSX模块,并让它始终处于打开状态。 待机模式下的XOSC或RC13M选择由命令SetStandby(…)中的模式参
[单片机]
<font color='red'>STM32</font>开发笔记87: SX1268驱动程序设计(设置为STDBY模式)
stm32通用定时器用做外部脉冲计数器的例程
最近几天要用到stm32对外部输入脉冲进行计数,很自然想到定时器,可是手上资料没有讲解stm32定时器如何用作外部计数器的,在网上找例程,也没找到几个正确的,自己硬着头皮仔细研究参考手册,终于知道如何配置了,并写了一个例程,希望将来对一些网友有用。 其实stm32通用定时器做计数器,对外部脉冲计数,还是比较简单的,使用外部时钟模式2即可轻松实现,但要注意,这种模式下,外部输入脉冲信号一定要接在相应TIM的ETR引脚上,不能接在TIMx_CHy引脚上。 使用stm32定时器的外部时钟模式2,主要就是通过配置TIMx_SMCR寄存器相应位。步骤如下: 1. 若不需要滤波器,置TIMx_SMCR寄存器中的ETF =0000 2
[单片机]
微控制器单端口线驱动多个LED显示器
许多仪器设计中都需要七段显示器。在基于微控制器的常规设计中,一个七段显示器使用四输出端线。图1为常规四位七段LED显示器示意图。在该例中,四位七段LED需要两个8位输出口。图2为另一个通用显示器多路设计,1.5个8位端线驱动四个七段显示器。因为有视觉暂留,必须对显示器进行不断刷新,使其看起来稳定。 图3的电路不需要多个端口线,用一个端口线驱动四个显示器。(理论上,用这种方法,一个端口线可以驱动任意多个显示器)。一旦需要更新显示,端口线应输出软件产生的脉冲链。第一个脉冲应为长脉冲,后续脉冲为数量等于显示器个数的多个短脉冲。 IC1单稳态和与门用作长脉冲探测器。IC2到IC5(CD40110)为十进制升降计数/锁存/显示器驱动器。微
[应用]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved