先放原理图(补充:图中的BOOT0通过10K的电阻接到地),再解释为什么这么设计:

STM32启动方式:BOOT0和 BOOT1用于设置 STM32的启动方式 ,见下表:

BOOT0=1,BOOT1=0:串口下载模式;

BOOT0=0,BOOT1=X:程序启动模式,从内部flash启动。

设计思路:串口一键下载需要做的就是下载时,为串口下载模式,下载完成后,为启动模式。

电路设计:一般在使用软件进行串口烧录程序的时候用到这个电路(这不是废话吗),例如使用FlyMCU软件下载程序;CH340G芯片的13脚DTR、14脚RTS的电平是可以被下载软件控制的。通过串口的DTR 和 RTS 信号,来自动配置 BOOT0 和 RST 信号。他们的状态如下:

  > RTS#和DTR#初始状态时为高电平;

  > 在启用下载的时候,DTR#维持高,RTS#拉低,此时Q3和Q4都导通,那么BOOT0为高电平状态,RESET为低电平复位,然后DTR#变低,Q3不导通,复位结束,此时的BOOT0为高电平,经过4个SYSCLK,BOOT0的状态会被锁存,变成串口下载模式,那么就会启用串口下载程序,开始和FlyMCU下载软件进行通信,进行代码下载;

  > 等到代码下载结束时,RTS#先变高电平,然后DTR#再变高电平,变成程序启动模式。(这个顺序不能变,如果DTR#先变到高电平,Q3会导通,RESET变成低电平,这样又会产生复位。)

  时序如下图:

关于疑问1:启动模式的切换,是在复位后的4个SYSCLK后,再确定的,那么在烧录完成后,为什么没有复位,就切换成了程序启动模式呢?不是应该还是在烧录模式吗?

小白看了下网上的解答,说是烧录软件已经帮我们配置好了,结果就是在烧写完成后会有报告:“成功从08000000开始运行”。这个回答小白不认同,总之结果是这样,要搞清楚,就只能有时间再用示波器抓下时序看看,这个疑问暂存吧!

关于疑问2:软件配置为“DTR的低电平复位,RTS高电平进BootLoader”,这样配置不是进入串口下载模式了吗?

小白看了下网上的解答,说是IC在实际操作时引脚的变化为“DTR#拉高,RTS#拉低”,即软件设置和实际情况是相反的。

STM32一键下载电路设计原理的更多相关文章

  1. CH340在STM32实现一键下载电路

    在做基于STM32的多功能MP3播放器的课题时,在程序下载这部分时借鉴了正点原子开发板上的一键下载电路,采用CH340G这款芯片设计. 在画PCB初期原理图部分,对采用CH340G设计的一键下载电路不 ...

  2. 关于CH340在STM32实现一键下载电路的研究(转)

    源:关于CH340在STM32实现一键下载电路的研究 在做基于STM32的多功能MP3播放器的课题时,在程序下载这部分时借鉴了正点原子开发板上的一键下载电路,采用CH340G这款芯片设计. 在画PCB ...

  3. STM32 ~ CH340在STM32实现一键下载电路

    在做基于STM32的多功能MP3播放器的课题时,在程序下载这部分时借鉴了正点原子开发板上的一键下载电路,采用CH340G这款芯片设计. 在画PCB初期原理图部分,对采用CH340G设计的一键下载电路不 ...

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

    STM32三种启动模式对应的存储介质均是芯片内置的,它们是:1)用户闪存 = 芯片内置的Flash.2)SRAM = 芯片内置的RAM区,就是内存啦.3)系统存储器 = 芯片内部一块特定的区域,芯片出 ...

  5. 基于CH340的一键下载电路

    一.CH340简介 CH340 是一个 USB 总线的转接芯片,实现 USB 转串口或者 USB 转打印口.CH340是国产芯片,应用场合居多,市场占有率很高.常用的USB转串口芯片还有CP2102. ...

  6. 【转】Image Cyborg 一键下载存储网页所有图片

    下午仿照网上例子写了个抓取网页中图片并保存到本地的Python的例子,好奇就google了下是否有类似的在线抓取图片的外挂工具. 接着就找到了Pseric写的这篇文章 - Image Cyborg 一 ...

  7. jquery配合.NET实现点击指定绑定数据并且能够一键下载

    最近在做培训管理系统中遇到一个问题,需求需点击绑定的数据,将指定的附件下载下来,并且是批量下载(绑定的数据非datagrid,后台拼接的绑定). 效果图如下: 大体思路: 1.jquery得到选中的绑 ...

  8. HTTP断点续传下载的原理

    frombegintoend原文HTTP断点续传下载的原理 要实现断点续传下载文件,首先要了解断点续传的原理.断点续传其实就是在上一次下载断开的位置开始继续下载,HTTP协议中,可以在请求报文头中加入 ...

  9. You-Get 一键下载全网视频资源

      下载视频 无论是单纯的下载视频收藏,还是以便离线收看,都离不开“下载”,好的工具让你把注意力更好的放在视频的本身,而不用考虑要如何下载视频.下载视频从来不乏方法,之前也介绍了下载 Youtube ...

随机推荐

  1. Python+Selenium笔记(九):操作警告和弹出框

    #之前发的 driver.switch_to_alert() 这句虽然可以运行通过,但是会弹出警告信息(这种写法3.x不建议使用)  改成 driver.switch_to.alert就不会了. (一 ...

  2. LeetCode题解之Longest Increasing Subsequence

    1.题目描述 2.题目分析 使用动态规划,在计算以每个字符结尾的最长子序列. 3.代码 int lengthOfLIS(vector<int>& nums) { ){ ; } ve ...

  3. PHP的数据加密解密

    本文出至:新太潮流网络博客 /** * [对数据进行加密] * @E-mial wuliqiang_aa@163.com * @TIME 2017-04-07 * @WEB http://blog.i ...

  4. 使用Eclipse Debug的一些说明

    目录 Debug视图 线程堆栈视图 变量视图 断点视图 表达式视图 代码视图 远程Debug 异常断点 条件断点 表达式 Debug定位第三方插件的问题 Debug一些经验   Debug视图 认识d ...

  5. 使用 Azure PowerShell 模块创建和管理 Windows VM

    Azure 虚拟机提供完全可配置的灵活计算环境. 本教程介绍 Azure 虚拟机的基本部署项目,例如选择 VM 大小.选择 VM 映像和部署 VM. 你将学习如何执行以下操作: 创建并连接到 VM 选 ...

  6. 服务器重启可能会导致SQL Server中部分数据库变为single user mode

    今天检查公司生产服务器的SQL Server数据库,惊讶的发现有三个生产数据库变为了single user mode.奇怪的是没有任何人和程序执行过SQL语句将这三个数据库设置为single user ...

  7. IIS日志导致磁盘被占满

    某服务器只部署了个IIS,应用目录都在D盘,可C盘97.5GB空间却被占满了. 将系统文件,隐藏文件全部显示,再选中所有的C盘文件及文件夹查看容量只有19GB. 既然只部署了IIS,那自然就怀疑到了I ...

  8. vscode对Vue文件的html部分格式化失效问题解决办法

    使用vscode编辑vue文件时发现突然格式化代码不会对<template> </template>之间的html生效了,解决办法很简单 文件 --> 首选项 ---&g ...

  9. Oracle 数据库 简单查询

    select DISTINCT dept_id from s_emp; desc s_emp; ; --给入职3年以上员工发10万元年终奖 ; --列出职位是仓库管理员的名字和工资 select la ...

  10. [原创]使MySQL注释语句在后台能够输出的方法

    开启general log或slow log的时候,前端发出的sql语句中的注释都别屏蔽掉了. 本意加注释我们想通过注释来快速知道sql是由哪个业务模块发出的.这点对dba和研发很有帮助. 一种变通的 ...