Duanxx的STM32学习:STM32下载方式选择
前几天熟悉了STM32的启动方式。主要由Boot0和Boot1设置
如今须要解决的就是STM32的下载的问题。
一開始的时候,我选择的是SWD下载。这样的下载方式须要Boot0=0。Boot1=0。占用两个线,同一时候须要两个电阻和一个电容:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF1bnh4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
可是我的设计上须要使用串口。利用串口下载程序也是下载到Main
Flash中,既然这种话,直接使用串口下载程序就能够了。
可是使用串口下载程序须要重复的将Boot0抬高,然后复位,然后将下载程序,然后将Boot0拉低,这个操作比較的复杂。
在正点原子的开发板上看到过他的利用串口一键下载程序的电路,能够自己主动的完毕上面的操作,只是也挺麻烦的。
这里我測试了一下串口下载的方式,发现了两个非常有意思的现象:
1:Boot0和Boot1即便没有通过下拉电阻接地,也就是处于悬空的状态,STM32也能够从Main Flash中启动
2:在通过串口下载程序时,Boot0必须上拉。Boot1必须下拉。
对于第一个现象,显然是不可取的,不管怎么样。还是不要让引脚处于悬空状态(电平不确定的状态)比較好。
对于第二个现象,是显然的
只是这样就能够有以下这样的下载设计了:
这里Boot0和Boot1,仍然是通过100K的电阻下拉
然后把Boot0通过一个引脚或者过孔引出来,在下载程序时,Boot0接上3.3V,考虑到限流的问题,能够在Boot0和3.3V中间加一个4.7k的电阻。
这里电阻和3.3V均不在板子上,而在在串口串口助手那端。
至于复位操作,直接用断电来取代就能够了。无需外接复位键。
Duanxx的STM32学习:STM32下载方式选择的更多相关文章
- STM32学习笔记(一)——点亮一个LED
引言 最近报名了2017全国大学生电子设计竞赛,我们学校是第一次参加这个比赛,由于8/9月份就要比赛了,所以现在准备是比较晚的了,指导老师说只能做控制类的题目了,让我们学习一下STM32单片机,51到 ...
- Duanxx的STM32学习: 启动模式,BOOT0和BOOT1具体解释
在画STM32的电路图的时候,关于STM32的启动方式纠结了一下,现有的參考设计都是在STM32的启动选择引脚BOOT0和BOOT1上使用了跳帽,用以人工选择STM32的启动方式,可是在实际应用中这样 ...
- STM32学习笔记(四)——串口控制LED(中断方式)
目录: 一.时钟使能,包括GPIO的时钟和串口的时钟使能 二.设置引脚复用映射 三.GPIO的初始化配置,注意要设置为复用模式 四.串口参数初始化配置 五.中断分组和中断优先级配置 六.设置串口中断类 ...
- STM32:SWD下载方式
最近没事干做了个STM32小板子,芯片是STM32VBT6,下载方式用的SWD,比JTAG节省空间 我用了五根线,3.3V,GND,RESET,SWDIO,SWCLK, JTAG 接口pin map: ...
- STM32学习笔记——OLED屏
STM32学习笔记--OLED屏 OLED屏的特点: 1. 模块有单色和双色可选,单色为纯蓝色,双色为黄蓝双色(本人选用双色): 2. 显示尺寸为0.96寸 3. 分辨率为128*64 4. ...
- STM32学习笔记(二) 基于STM32-GPIO的流水灯实现
学会了如何新建一个工程模板,下面就要开始动手实践了.像c/c++中经典的入门代码"hello world"一样,流水灯作为最简单的硬件设备在单片机领域也是入门首推.如果你已经有了一 ...
- STM32学习笔记(一) 如何新建一个STM32工程模板
学习stm32,第一步就是选择开发工具了,GCC,MDK,IAR每一种都有自己的优劣势,这里我选择使用MDK软件实现STM32模板.当然如果想更快的接触stm32实例,领略嵌入式开发的魅力,STM也提 ...
- 学习STM32单片机,从菜鸟到牛人就是这样简单(配视频资料)
我想说,为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习stm32? 本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习. 你要考虑的 ...
- 学习STM32,你不得不了解的五大嵌入式操作系统
学习STM32,你不得不了解的五大嵌入式操作系统 原标题:学习STM32,你不得不了解的五大嵌入式操作 ...
随机推荐
- PHP 文件打开/读取
PHP Open File - fopen() 打开文件的更好的方法是通过 fopen() 函数.此函数为您提供比 readfile() 函数更多的选项. 在课程中,我们将使用文本文件 "w ...
- iOS SDK原生JSON解析
- (IBAction)touchReadButton:(id)sender { NSData *jsonData = [[NSData alloc] initWithContentsOfFile:J ...
- Maven引入hadoop依赖包出错解决办法
错误: ArtifactTransferException: Failure to transfer org.apache.hadoop:hadoop-hdfs:jar:2.6.0 from http ...
- Centos6.4在配置Tomcat7工作文件夹和虚拟路径
写在前面:网上博文非常多复制粘贴.我试过很不可能.所以我写了下面的测试版本. 1.tomcat设备 非常easy只需要下载tomcat7 tar包裹 运行命令:tar -zxvf tomcat-7.5 ...
- 【巧妙算法系列】【UVA 11384】 Help is needed for Dexter 正整数序列
Help is needed for Dexter Time Limit: 3 Second Dexter is tired of Dee Dee. So he decided to keep Dee ...
- <httpRuntime>
1.在webconfig中httpconfig属性只能出现一次 配置httpRunTime也可以让FileUpload上传更大的文件,不过设置太大了会因用户将大量文件传递到该服务器而导致的拒绝服务攻击 ...
- iOS 后台播放音乐
在info.plist文件中添加 下面是后台播放音频的完整测试代码: 引入文件<AVFoundation/AVFoundation.h> //后台播放音频设置 AVAudioSession ...
- SQLServer服务器数据库之间的数据操作(完整版)
分类: 数据库开发技术 ---------------------------------------------------------------------------------- -- Au ...
- Android中Menu的基本用法
一. 使用xml定义Menu 菜单资源文件必须放在res/menu目录中.菜单资源文件必须使用<menu>标签作为根节点.除了<menu>标签外,还有另外两个标签用于设置菜单项 ...
- JSP合用html5 尝试(一)
直接上代码 <%@page pageEncoding="utf-8" contentType="text/html;charset=utf-8" %> ...