串口(TTL)升级STM32:程序固定Flash地址写入,运行

2019-10-09 10:32:50 浏览数 (1)

注:源码说明:

hex文件位置: 工程文件夹 -> Progect文件夹 -> output文件夹

bin文件生成位置: 工程文件夹 -> Progect文件夹 -> Progect文件夹

测试芯片:STM32F103C8T6   STM32F103RET6   预计支持:STM32F103全系列

一,实现功能概要

  STM32通过串口接收程序文件,写入固定Flash地址,写完之后,运行写入的程序.

二,操作演示

  1,下载 BootLoader

  2,打开串口调试助手,选择bin文件

  3,首先发送 updata start    模块回复 Start Erase Flash Please Wait...  此时模块正在擦除需要存程序的Flash  

   等待擦除完成 模块回复  Wait Updata... 

  4,发送程序文件

  5,开发板正常运行程序状态  每隔一段时间打印温湿度数据,液晶屏显示温湿度数据

三,BootLoader源码使用说明

  1.1,Flash调整,设置程序运行位置

  1.2,调整以后,串口助手打印用户程序的配置信息

  1.3,根据打印信息调整用户程序

  2.1 程序使用5字节大小的环形队列接收程序文件,串口中断里面写入环形队列,主循环读取环形队列写入Flash

环形队列大小:

程序写入环形队列:

读取环形队列数据,写入Flash:

  2.2 判断串口接收完一条完整的数据,采用定时器模拟空闲中断

0 人点赞