0
点赞
收藏
分享

微信扫一扫

不会写Bootloader?看这里,现成的!


前段时间要写一个BootLoader程序,想起来好像在STM32的HAL库里面看到过相关的Demo,打算参考一下。打开相关的目录看了一下,确实是有相关文件:

不会写Bootloader?看这里,现成的!_单片机

但是没找到工程文件。没办法,那就自己百度吧,关键词OpenBootloader一搜索,发现这不是ST原创的,是一个开源的项目。简称OpenBLT,是一种开源引导加载程序,可以在任何微控制器上运行,并使用支持Usart、Can、USB、SD卡等多种类型的通信接口来执行软件更新。

官网地址:

​​https://www.feaser.com/openblt/doku.php?id=homepage​​

下载地址:

​​https://sourceforge.net/projects/openblt/files/​​

百度网盘:

链接:https://pan.baidu.com/s/1ZZV7AxGna5cwH_EkIDjftA?pwd=cdq1

提取码:cdq1


下载下来后发现,里面有很多种单片机的Demo程序,还有不同的IDE。

不会写Bootloader?看这里,现成的!_用户程序_02

正好手上有个STM32G0的开发板,拿来试一下。打开G071的Keil目录,里面有Boot程序和用户程序Prog两个工程。

不会写Bootloader?看这里,现成的!_用户程序_03



首先将Boot 程序用仿真器下载到开发板中,打开配套的上位机软件MicroBoot v2.05,这里使用的是串口升级,设置好串口号和波特率。

不会写Bootloader?看这里,现成的!_用户程序_04

不会写Bootloader?看这里,现成的!_单片机_05

点击Browse选择编译好的用户程序,这里是.srec格式的文件,点击选择后会直接下载程序。如下:

不会写Bootloader?看这里,现成的!_串口_06

由于用户程序不大,下载过程还是挺快的。而且Boot程序编译后只有7KB左右,也不大。该单片机没有CAN、USB等接口,对于其它一些单片机,可以配置为通过其它接口方式升级程序。例程里几乎有STM32全系列的Demo,用起来很方便。想移植到其它单片机的可能需要自己研究一下了,主要是接口和flash擦写部分程序。



这里说明一下,.srec格式的文件的生成方式跟bin文件类似,在Keil中设置如下:不会写Bootloader?看这里,现成的!_串口_07

另外,用户程序的Flash起始地址是通过.sct文件配置的:

不会写Bootloader?看这里,现成的!_单片机_08

也可以在IDE里配置,两种方式都可以。

不会写Bootloader?看这里,现成的!_单片机_09




举报

相关推荐

0 条评论