stm32核心板子使用验证与串口下载

目录

1.芯片烧录方式分类

ISP(In-System Programming)在系统编程,使用引导程序(Bootloader)加上外围UART/SPI等接口进行烧录。

ICP(In-circuit programmer)在电路编程,使用SWD/JTAG接口。

IAP(In-ApplicationProgramming)指MCU可以在系统中获取新代码并对自己重新编程,即用程序来改变程序。

这三种方式怎么去启动它呢?怎么知道用哪种方式去下载呢?芯片也需要知道我们用哪一种方式去下载

1.1 启动模式


通过这个黄色的跳冒,9号10号横向连接一起,7号8号横着连接一起,3和5连接在一起,4和6连接一起,通过这个黄色的跳冒进行连接。

然后发现BOOT0和BOOT1用黄色跳线帽分别都与GND相连,BOOT0与GND连接,BOOT1与GND连接,说明BOOT0是0,BOOT1是0,选择的是用户闪存模式。

启动方式用户闪存与系统存储器/ISP有什么不同?

程序会存储在不同的一个存储区域,比如说,我们的程序存在电脑C盘,存在电脑E盘,存在电脑F盘,那么我们怎么知道程序是从C盘启动还是E盘启动还是F盘启动呢?或者说从硬盘1启动还是硬盘2启动呢?然后我们是可以通过开机的时候进行设置的时候从哪一个盘启动,这里面讲到一个双系统的问题,在我们学习操作系统的时候,有些人有一个苹果系统又有一个windows系统,在苹果系统里面装一个windows系统,从哪一个系统启动,系统是存在一个存储区里面的,我只需要在对应的存储区启动我们就可以知道跑的是哪一个系统。

正常来说BOOT0是0,BOOT1是0是我们启动的方式,下面BOOT0是1,BOOT1是0才是ISP, 那么我就需要将BOOT0连接上面,BOOT1连接下面,也就是1号3号用跳线帽连接一起,4号6号用跳线帽连接一起,这样BOOT0是1,BOOT1是0对应的启动模式是ISP模式。

用户闪存模式,就是我们BOOT0是0,BOOT1是0,这个是我们常用的ISP。

但是对野火来说有一个优势:

野火小智STM32F103C8T6自带串口下载电路,配合上位机可实现一键ISP下载,不需要手动修改开发板上的BOOT设置。与仿真器(J-LINK/ST-LINK/DAP)相比,ISP只能下载程序,不能在线调试且下载速度慢。

2.电路原理图



3.安装串口驱动

野火小智开发板用的USB转串口的驱动芯片是CH340,要使用串口得先在电脑中安装USB转串口驱动。驱动可在网上搜索下载或者使用我们资料里面提供的。WIN7用户请用管理员身份安装。如果不能安装成功,请先百度查找原因自行解决。


如果USB转串口驱动安装成功,USB线跟板子连接没有问题,在计算机->管理->设备管理器->端口中可识别到串口。

4.安装下载串口

目前有两款串口下载软件来实现串口下载程序,mcuisp 和FlyMcu 软件。

方式一:

打开mcuisp 软件,配置如下:

① 搜索串口,设置波特率115200(尽量不要设置的太高);

② 选择要下载的HEX 文件;

③ 校验、编程后执行;

④ DTR 低电平复位,RTS 高电平进入bootloader(上位机软件为232 逻辑

电平标准);

⑤ 开始编程。如果出现一直连接的情况,按一下开发板的复位键即可。

方式二:

打开FlyMcu 软件,具体配置见图下载配置和下载成功现象:

① 搜索串口,

设置波特率为76800(不要超过115200)

② 选择要下载的HEX 文件

③ 校验、编程后执行

④DTR 低电平复位,RTS高电平进入bootloader(上位机软件为232

逻辑电平标准)

⑤ 开始编程

⑥ 选项字节的勾去掉

如果勾选上则下载程序后不能自动运行。如果出现一直连接的情况,按一下开发板的复位键即可。下载成功后的现象具体见图下载配置和下载成功现象中的。

下载成功现象指示的方框部分。

(注意:mcuisp 和FlyMcu 上位机软件都是基于232 逻辑电平标准,而后面介绍ISP 一键下载原理分析及硬件原理图是基于TTL 逻辑电平标准,232 标准与TTL 标准在逻辑电平上是相反的,所以导致实际硬件上是DTR 高电平复位,RTS 低电平进入bootloader,而上位机软件设置为DTR低电平复位,RTS 高电平进入bootloader。)

相关推荐
玩转单片机与嵌入式5 小时前
一个成熟的嵌入式AI系统,是长什么样子的?
人工智能·单片机·嵌入式硬件·嵌入式ai
Wave8457 小时前
从单片机开发看透网络底层:Wi-Fi、TCP/IP 与 HTTP 的通俗解析
网络·单片机·tcp/ip
玩转单片机与嵌入式9 小时前
不会 Python、不会深度学习,也能在STM32上跑AI模型吗?
人工智能·单片机·嵌入式硬件·嵌入式ai
jghhh0110 小时前
基于STM32的桌面Mini时钟设计
stm32·单片机·嵌入式硬件
电化学仪器白超10 小时前
小乌龟Git全程图形化操作指南:嵌入式本地版本管理与Gitee私有云备份实战
git·python·单片机·嵌入式硬件·物联网·gitee·自动化
yong999012 小时前
基于STM32 Nucleo板的彩色LED照明灯设计(纯CubeMX开发)
stm32·单片机·嵌入式硬件
独小乐12 小时前
019.ADC转换和子中断|千篇笔记实现嵌入式全栈/裸机篇
linux·c语言·驱动开发·笔记·嵌入式硬件·mcu·arm
lingzhilab13 小时前
零知派——STM32驱动INA219电流功率监测计实现高精度电源管理
stm32·单片机·嵌入式硬件
QH1392923188015 小时前
KEYSIGHT N9030B PXA信号/频谱分析仪
科技·嵌入式硬件·集成测试
Shang1809893572616 小时前
T31ZX 君正/INGENIC智能视频处理器T31ZX可提供软硬件资料T31Z采用先进的低功耗设计
嵌入式硬件·fpga开发·音视频·t31zx智能视频处理器