STM32F103C8T6用官方bootloader实现IAP升级操作方法

在使用STM32F103C8T6单片机IAP功能时,可以自己写bootloader程序,也可以使用官方bootloader文件。下面说一下使用官方bootloader的使用方法。
首先下载官方bootloader文件在这里插入图片描述
目前使用的是这个版本,打开文件夹,选择适合自己编译器的工程。
在这里插入图片描述
目前使用的是keil,所以打开MDK-ARM文件夹
在这里插入图片描述
打开IAP工程
在这里插入图片描述
打开后根据自己的单片机型号,对工程进行简单的修改。用的是STM32F103C8T6单片机,FLASH为64K,SRAM为20K。
在这里插入图片描述
设置IROM1的起始地址和大小。
在这里插入图片描述
设置引用的头文件,STM32F103C8T6为中等容量,所以设置文件为STM32F10X_MD,。
下来要设置APP的起始地址,这个地址要和下载的APP运行地址对应,否则下载的APP不能正常运行。
在这里插入图片描述
在common.h 头文件中将 ApplicationAddress 地址设置为APP在FLASH中存储的位置。要因为要测试的APP在FLASH中的起始位置为0x8005000,所以此处将ApplicationAddress值也设置为0x8005000。然后编译项目
在这里插入图片描述
没有出现错误,将代码下载到单片机中。然后打开secureCRT软件。
在这里插入图片描述
选择串口端口号和波特率
在这里插入图片描述
程序默认波特率为115200,8位数据位,1位停止位。无奇偶校验位。设置好之后选择连接。
在这里插入图片描述
然后给单片机重新上电,这时候软件上就会显示提示信息。
在这里插入图片描述
然后按键盘的数字1,准备下载bin文件。
在这里插入图片描述
在菜单栏上面选择 传输----发送Ymodem选项。
在这里插入图片描述
选择要下载的bin文件,然后点添加按钮。
在这里插入图片描述添加好bin文件后,选择确定按钮。
在这里插入图片描述
在这里插入图片描述 文件传输成功后,会出现提示信息。这时候说明bin文件已经下载到了FLASH中。 下来在按键盘上的数字3,APP就开始执行了。 这个串口软件上没有回显功能,所以按下的数字键,界面上不会显示的。光标永远是个小黑点在闪烁。APP有没有成功运行,直接看单片机的现象就行。