项目-STM32F765VIT6+W5500 使用单片机串口发送命令实现OTA远程升级单片机程序测试说明

 

 

 

测试

1,单片机通过SPI1和模块通信;  单片机PA8引脚作为复位模组使用;串口1做日志打印(115200);

 

2,打开例程

 

3, 使用下载器先下载BootLoader,然后再下载用户程序

 

 

 

4, 在网站的根目录建几个文件夹

 

 目录要和 mcu_project 程序里面的目录一致

 

 

5, 用户程序修改程序版本

 

6,编译完以后会在工程目录生成bin文件

 

7.打开OTA Tools上位机软件

 

8.按照红框选择配置

 

 

 

9.选择用户程序生成的 bin文件

 

10.点击 生成固件

 

 

11.将在user.bin目录生成user_crc.bin文件

 

12.在服务器建一个对应版本号的文件夹,同时把生成的user_crc.bin文件放到里面

 

 

 

13.使用串口发送指令给单片机

OTA:0.0.1;

 

14.单片机开始下载固件,下载完成以后运行新固件

 

 

 

 

15.再修改个版本

 

使用OTA Tools 生成 user_crc.bin文件

 

 

在服务器建一个对应版本号的文件夹,同时把生成的user_crc.bin文件放到里面

 

 

16.使用串口发送指令给单片机

OTA:0.0.2;

 

17.单片机开始下载固件,下载完成以后运行新固件

 

 

 

 

 

FLASH说明

1,STM32F765VIT6的整体flash

 

2,当前程序分配

 

运行用户程序 和 备份用户程序的扇区用户可以在 iap_interface.h 配置;  配置时要保证  BootLoader 和 mcu_project 里面的这个文件配置一样;

 

扇区1当前程序用作记录更新的数据,还有记录阿里云动态注册参数;   存储框架使用的 flash_helper

关于flash_helper    https://www.cnblogs.com/yangfengwu/p/14476294.html

 

 

 

如果想使用flash_helper存储数据,这边有例子

#define flash_helper_save_offset 256   这个偏移是由于前256(全字) ; 用作了记录OTA升级相关的数据;

现在后面又使用了200字节记录阿里云参数; 用户使用的时候偏移设置为  306  注: (200/4 + 256) = 306

 

但是要注意, flash_helper存储数组当前为 512(512*4 = 2K),  最大可设置为整个扇区大小 8192 (32K)

 

3,这边也提供了最底层的操作flash的API函数

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

posted on 2024-10-21 12:57  广源时代  阅读(26)  评论(0编辑  收藏  举报

导航

支付宝 QQ群