STM32自动下载电路ISP学习笔记分享

FlyMcu下载程序配置:

在STM32F10xxx里,可以通过BOOT[1:0]引脚选择三种不同启动模式:

ISP(In-System Programming,在系统可编程)是一种技术,它允许用户直接在电路板上对空白或已编程的器件进行编程、擦除或更新,无需将器件从电路板上取下。这一过程依赖于bootloader(自举程序),它存储在微控制器如STM32的内部ROM(系统存储器)中,主要负责通过串行外设(如USART、CAN、USB、I2C等)接收应用程序代码,并将其写入Flash内存。不同的串行接口定义了各自的通信协议,包括命令集和数据传输序列。

普通ISP下载:

1.通过板载ch340芯片,一端接电脑USB接口,一端接STM32的U1_RX和U1_TX引脚。

2.打开上位机FlyMcu,将stm32的BOOT0置为高电平,BOOT1置为低电平。

3.按下stm32的复位按键,进入bootloader模式,下载程序。

4.下载完后,将stm32的BOOT0置为低电平,BOOT1置为低电平。

5.按下stm32的复位按键,开始运行用户代码。

缺点:要切换跳线帽改变BOOT0和BOOT1的引脚状态。

自动下载电路:

1、配置BOOT为ISP模式,BOOT1硬件固定为GND。RTS输出低,S8550导通,BOOT0被拉高。

2、复位,NRST为低,让系统重新启动迚入ISP模式。DTR输出高,S8050导通,NRST被拉到跟RST一样的低电平。

3、系统进入ISP模式后,让BOOT0和NRST还原成原来的状态即可。(通过上位机控制RTS和DTR引脚实现)

4、ISP下载完毕之后,程序自动运行,(通过上位机控制RTS和DTR引脚实现)开始从内部FLASH开始运行用户程序。

因为上面电路有时经常复位或者重启,完善电路图:

74HC1G66GW模拟开关:

V(IH)大于2V时,使能芯片,Y和Z导通。

在4号使能管脚上加100K电阻和10uF电容,大概1s后达到V(IH),也就是达到2V,使能后Y和Z打通,避开两个二极管上CH340_DTR和CH340_RTS不稳定的时间。

开头FlyMcu软件是用232协议写的

232标准

逻辑1:-3~-15V, 逻辑0:+3~+15V

TTL标准

逻辑1:3.3V, 逻辑0:0V作者:Lost.699

物联沃分享整理
物联沃-IOTWORD物联网 » STM32自动下载电路ISP学习笔记分享

发表回复