STM32支持仿真器和串口下载程序。将要介绍的内容,属于串口下载,即我们通常说的ISP下载。
手动ISP下载程序,我们已经知道了,控制BOOT0引脚实现。STM32上电,会自动检测BOOT0引脚是什么电平,如果是高电平,等待用户下载程序;如果是低电平,运行用户之前下载到单片机的程序。所以我们需要把BOOT0引脚引出,然后控制其接地或接VCC来下载程序或者运行程序。在调试过程中,我们需要不断的控制BOOT0,非常麻烦。那么,自动ISP就该出场了。
自动ISP,把BOOT0与地直接连接,那么每次上电就会运行程序,而且只要点击电脑上的“下载”按钮,就开始下载程序,下载完程序,就开始执行。实现此目的,需要借助串口握手信号DTR和RTS。

DTR连接RESET(复位引脚),控制复位,RTS连接BOOT0,用来控制程序运行或者等待下载。
下面说明如何用USB转TTL芯片实现STM32自动ISP。CH340芯片如下图所示:

CH340芯片,DTR和RTS引脚在一般情况下是高电平,低电平有效。因为STM32的RESET引脚,也是一般情况下是高电平,低电平复位,所以DTR可以与RESET直接连接。但是BOOT0是高电平下载程序,低电平运行程序,正好与RTS相反,所以我们需要把它反相,加一个NPN三极管即可。电路如下图所示:

ISP软件的选择:

看了上图的选择,有些人一定会产生疑虑。按道理应该是低电平复位,然后低电平进入BOOTLoader呀。但是,有一点需要注意,它这里讲的高低电平,是针对电脑原始的9针串口的,也就是“232电平”,我们用的USB转TTL芯片是“TTL电平”,正好相反。
下载过程和结果如下图所示:

注意:CH340在刚上电,稳定需要几秒钟时间,在此期间,DTR引脚会有两次或者三次的变低情况,这样会引起单片机上电后复位两三次,稳定后不会影响程序运行。如果不想让单片机上电复位好几次,上电的时候把DTR与RESET断开即可。
关键字:STM32 单片机 ISP下载
编辑:什么鱼 引用地址:STM32单片机ISP下载的方法解析
推荐阅读最新更新时间:2023-12-04 21:43
基于Proteus的单片机演奏音乐的实现
当前的很多用单片机实现音乐演奏的系统都是利用开发板结合仿真器实现的,这种方法不是很复杂,实现也较方便,但是调试不是很方便,且成本也较高。 本文提出的一种基于Proteus 的单片机演奏音乐的方法,非常简单实用,且该方法基于软件来实现的,所以成本非常低,调试方便,效果也很不错,适合于爱好音乐的单片机学习者。 单片机系统的设计分两大部分:硬件设计部分和软件设计部分。
1 硬件设计
硬件部分比较简单,如果在开发板上做实验可仿下面图1 电路连接。
AT89C51 单片机的P2.5 口控制一个8550 的三极管,三极管控制电磁蜂鸣器的电源通断。
如果用Proteus 软件来仿真的话,电路更加简单,见图2。
[单片机]
STM32对于U盘访问的硬件/软件实现
一些应用中,涉及到对存储设备的数据访问,例如USD卡、U盘。具备USB OTG控制器的STM32,可以实现对U盘访问的支持。本文介绍STM32对于U盘访问的硬件/软件实现。介绍如何利用STM32CubeMX,一步一步实现STM32访问U盘。仅需简单的几个步骤, 实现U盘访问的应用开发。 MSC类简介 MSC (Mass Storage Class) 是USB规范提供的一种USB大容量存储设备类,允许一个USB接口的设备与USB主机相连接,以便在两者之间传输文件。USB MSC传输协议分为CBI (Control / Bulk / Interrupt) 和 BOT (Bulk-only Transfer)。BOT协议在不影响功能
[单片机]
80C51单片机模仿实例100—2 从左到右的流水灯
废话不多说,直接上图。 /* Main.c file generated by New Project wizard * * Created: 周六 11月 25 2017 * Processor: 80C52 * Compiler: Keil for 8051 * Author: Chenchong */ #include reg51.h #include intrins.h #define uchar unsigned char #define uint unsigned int sbit LED=P1^0; void DelayXms(uint x) { uchar i; whil
[单片机]
51单片机485通讯讲解 通俗易懂
第九节:串口通讯之485通讯 (1)开场白: 串口通讯有三种常用的硬件方式。 第一种是TTL方式。比如两个单片机的RX,TX引脚直接连接上(甲的RX连接乙的TX, 甲的TX连接乙的RX),这种通讯距离最短,局限于两三米长的距离。 第二种是232方式。两个CPU之间都经过了两个MAX232等电平转换芯片,比如单片机跟电脑的串口通讯。这种最大传输距离大概十米左右。 第三种是485方式。两个CPU之间都经过了两个MAX485等电平转换芯片,此种方式在工控上应用最多,尤其是距离长,要求一台主机控制多台设备的情况下。从地址呼叫原理上看,一台主机应该可以控制N多台从机,但是书上说一台主机最多可以控制32个从机,可能主要是从电阻匹配的角度来考虑
[单片机]
51单片机基础点亮第一个LED实验
/************************************************************************************** * 点亮第一个LED实验 * 实现现象:下载程序后D1指示灯点亮 注意事项:无 ***************************************************************************************/ #include reg51.h //此文件中定义了单片机的一些特殊功能寄存器 sbit led=P2^0; //将单片机的P2.0端口定义为led
[单片机]
单片机典型论文竞赛题精华集锦(一)
单片机是一门实践性非常强的学科,如果只看教程,光说不练是很难真正领会单片机技术的,更不用说进行单片机的相关产品开发了。电子发烧友网基于此整合《单片机典型论文竞赛题精华集锦》,以飨电子发烧友网读者。也希望读者能根据提供的相关单片机典型论文竞赛题要求结合单片机开发板,写源程序,不断调试实验,积累更多开发经验和思路,真正踏进单片机开发大门。
单片机论文一 简易数控直流电源
第一届(1994年)全国大学生电子设计竞赛题目
一、设计任务
设计出有一定输出电压范围和功能的数控电源。其原理示意图如下:
二、设计要求
1.基本要求
(1)输出电压:范围0~
[模拟电子]
51单片机的上拉电阻一般多大
1、51单片机的p0口为了实现准3态,采用了oc输出,也就是集电极悬空输出,也有叫图腾柱输出的。这种电路结构,只有下拉能力,高电平输出没有电流,在高电平时表现为高阻态;加上上拉电阻,就会失去高阻态,变成 1、0 两态。
2、p0口上拉电阻的选择,应遵循基本的电路设计原则,不能盲目套用,要看后级情况而定:
例如,后级驱动的是1只npn三极管,这个三极管的放大倍数( )=100倍,三极管的负载电流(ic)要求100ma,当电源为5v时:
a、三极管的ib=ic/ =1ma;
b、上拉电阻大约=r=5v/ib=5k ;
c、为了使三极管注入ib后就迅速进入导通(开)状态,r应再小一些,如4k3;
3、由上面计算可见
[单片机]
贸泽电子开售STMicroelectronics配备FPU的 STM32H5 Arm Cortex-M33 32位MCU
202 3 年 10 月 31 日 – 提供超丰富半导体和电子元器件™的业界知名新品引入 (NPI) 代理商贸泽电子 (Mouser Electronics) 即日起供货STMicroelectronicsg的STM32H5 MCU。STM32H5是首个可访问片上系统 (SoC) 安全服务的MCU系列,适用于工业自动化、医疗、智慧城市、智能家居、个人电子产品和通信领域的新一代智能互联设备。 贸泽电子供应的 STMicroelectronics STM32H5 是搭载Arm ® Cortex ® -M33 32位RISC内核的高性能微控制器 (MCU),包含浮点运算单元 (FPU),工作频率高达250 MHz,兼具高性能、安
[嵌入式]