STM32WB55官方OTA例程

体验OTA

首先找到官方OTA的例程

  • BLE_HeartRate_ota
  • BLE_Ota
  • BLE_p2pServer_ota
  1. 首先需要下载BLE_Ota,这个是OTA的固件运行在bootloader中,它负责擦写FLASH来实现IAP编程,以及后续的BLE_HeartRate_ota和BLE_p2pServer_ota程序的切换。

2.再下载BLE_HeartRate_ota或者BLE_p2pServer_ota,bootloader会引导程序进入到APB1程序中也就是用户程序。下载完成之后打开ST BLE ToolBox,可以看到已经在广播了,而且可以看有OTA标识的,意味着它是可以OTA的。

然后点击reboot

这时候就会出现

OTA的程序

连接OTA程序

然后

这样就可以实现官方例程循环OTA了

如何让自己的代码实现OTA

自己的的程序直接烧录是不能直接OTA的,在bootloader中有官方的魔术标志,我们需要把这个标志加入到自己的代码中,然后再改一些其他配置

1.修改用户程序下载到APB1区域

2.注释中断向量表

因为已经被bootloader中的ota程序设置为正确的地州

3.添加关键魔术

复制代码
const uint32_t MagicKeywordValue = 0x94448A29 ;
const uint32_t MagicKeywordAddress __attribute__((at(0x08007140))) = (uint32_t)&MagicKeywordValue;
相关推荐
不能跑的代码不是好代码8 小时前
STM32窗口看门狗(WWDG)知识点及标准库使用指南
stm32·单片机·嵌入式硬件
bingquan33338 小时前
在 Ghidra 中分析STM32裸机固件
stm32·单片机·嵌入式硬件
羽获飞8 小时前
从零开始学嵌入式之STM32——11.STM32---USART串行通讯
stm32·单片机·嵌入式硬件
宵时待雨10 小时前
STM32笔记归纳9:定时器
笔记·stm32·单片机·嵌入式硬件
逐步前行10 小时前
STM32_新建工程(寄存器版)
stm32·单片机·嵌入式硬件
bai54593610 小时前
STM32 CubeIDE 通过PWM占空比控制舵机角度
stm32·单片机·嵌入式硬件
松涛和鸣12 小时前
72、IMX6ULL驱动实战:设备树(DTS/DTB)+ GPIO子系统+Platform总线
linux·服务器·arm开发·数据库·单片机
简单中的复杂12 小时前
【避坑指南】RK3576 Linux SDK 编译:解决 Buildroot 卡死在 host-gcc-final 的终极方案
linux·嵌入式硬件
上海合宙LuatOS13 小时前
LuatOS核心库API——【audio 】
java·网络·单片机·嵌入式硬件·物联网·音视频·硬件工程
Hhh __灏13 小时前
stm32的SRAM内存不足如何分析和优化?堆栈空间如何优化?
单片机