打印
[应用相关]

[分享] STM32的串口下载方式(ISP)

[复制链接]
427|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
STM32的串口下载方式(ISP)
串口下载方式,即我们熟知的ISP方式。STM32出厂时,内部固化了通过串口1下载程序的代码。在PC端通过专用软件,即可通过串口将程序(hex文件)下载到芯片内部,常见的有STM32 Flash loader demonstrator、FlyMCU、MCUISP等,在stm的官网可以下载。

使用特权

评论回复
沙发
一点点0321|  楼主 | 2020-11-29 19:40 | 只看该作者
1、ISP硬件连接


串口下载,需要使用串口,但笔记本电脑上通常不提供串口,所以需要使用USB转串口芯片完成接口的转换。常见的串口转USB的接口芯片有CP210X、CH340等。相应的,PC上需要根据转换芯片的型号,安装对应的驱动程序。

使用特权

评论回复
板凳
一点点0321|  楼主 | 2020-11-29 19:40 | 只看该作者
硬件连接正确,且成功安装驱动后,在设备管理器中可以查看到,使用的接口芯片为CP210x,为该设备分配的端口号(如图所示,端口号为COM9)。

使用特权

评论回复
地板
一点点0321|  楼主 | 2020-11-29 19:41 | 只看该作者

使用特权

评论回复
5
一点点0321|  楼主 | 2020-11-29 19:41 | 只看该作者
在串口下载时,boot0、boot1脚需要作特别的设置。

使用特权

评论回复
6
一点点0321|  楼主 | 2020-11-29 19:42 | 只看该作者
STM32直接通过两个引脚Boot0和Boot1设置启动模式,boot0=0时,为程序运行模式;boot1=0,boot0=1时为串口下载模式;boot1=1,boot0=1时为SRAM启动模式。

使用特权

评论回复
7
一点点0321|  楼主 | 2020-11-29 19:44 | 只看该作者
因此,串口下载时,Boot0接3.3,Boot1接GND,按复位按键,实现下载

使用特权

评论回复
8
一点点0321|  楼主 | 2020-11-29 19:45 | 只看该作者
2、编译程序,生成HEX文件


Keil MDK中,Output设置中勾选生成HEX文件。

使用特权

评论回复
9
一点点0321|  楼主 | 2020-11-29 19:45 | 只看该作者

使用特权

评论回复
10
一点点0321|  楼主 | 2020-11-29 19:46 | 只看该作者
Hex文件位于MDK-ARM文件夹下,工程同名文件夹内。

使用特权

评论回复
11
一点点0321|  楼主 | 2020-11-29 19:47 | 只看该作者
3、FlyMCU的设置

使用特权

评论回复
12
一点点0321|  楼主 | 2020-11-29 19:48 | 只看该作者
PC端的软件设置大同小异,通常包括选择串口、波特率、加载hex文件等。

使用特权

评论回复
13
一点点0321|  楼主 | 2020-11-29 19:48 | 只看该作者
设置完毕,最后点击“开始编程”,并按下实验板的RST键,完成程序的下载,下载成功显示的信息如图所示

使用特权

评论回复
14
一点点0321|  楼主 | 2020-11-29 19:49 | 只看该作者

使用特权

评论回复
15
一点点0321|  楼主 | 2020-11-29 19:49 | 只看该作者
4、注意事项


需要注意的是,串口下载方式,通常下载速度较慢,代码量比较庞大的工程,并不适合使用该方式;

使用特权

评论回复
16
一点点0321|  楼主 | 2020-11-29 19:50 | 只看该作者
其次,这种方式,通常只能下载程序,无法实现调试,必要时,可以借助串口输出等其他技巧辅助调试;[

使用特权

评论回复
17
一点点0321|  楼主 | 2020-11-29 19:53 | 只看该作者
在串口下载时,boot0、boot1脚需要作特别的设置,并需要按下RST配合完成下载过程。

使用特权

评论回复
18
Mozarts| | 2020-11-29 21:44 | 只看该作者
常见的有STM32 Flash loader demonstrator、FlyMCU、MCUISP等 很多要学习呀

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

46

主题

387

帖子

0

粉丝