嵌入式开发|STM32工程中添加Bootloader实现串口程序下载

前言

在产品开发中都会预留各种各样的程序升级的接口,为了防止程序出问题,可以及时的更新程序,如果设备没有在线升级怎么办。当然可以召回,或者给客户提供程序下载器,让用户自己进行程序升级,而且一个STM32的程序下载器最少也需要30块。通过串口下载应该是最好的方式,一个TTL转USB才几块钱。

实现方式

通过外部按键或者串口指令让程序进入bootloader就可以进行程序下载了,bootloader一直存在,即使升级出问题也可以再次升级。目前已经实现STM32F030C8T6的bootloader,使用Ymodem进行bin文件传输,bootloader支持shell命令行输入。flash占用8K以内,ram占用1.5K

效果展示

在这里插入图片描述

ls   指令查看支持的指令
sh >ls

cola shell commands:
help       - cola shell help.
reboot     - reboot
ls         - ls
download   - download

sh >

程序下载

引脚定义: PA0 输入,默认下拉。PA9,PA10 串口 TX,RX
工具:secure CRT
1.将PA0接高电平,按下复位键进入bootloader。
2.终端里输入download回车, 然后将要下载的程序bin文件拖入选择send Ymodem,即可下载。
在这里插入图片描述
3.下载完成,PA0接低,reboot重启。
在这里插入图片描述

用户程序设置偏移

在这里插入图片描述

bootloader下载

烧录文件:程序下载
通过jlink将程序下载到0x8000000位置地址。

如有问题欢迎在评论区留言

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值