KW36-创建保留存储器内容的OTAP镜像

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

KW36-创建保留存储器内容的OTAP镜像

KW36-创建保留存储器内容的OTAP镜像

KW36-创建保留存储器内容的OTAP镜像

简介

OTAP客户端(接收软件更新的设备,通常为Bluetooth LEPeripheral)从OTAP服务器(发送软件更新的设备,通常为Bluetooth LE Central)请求软件更新时,用户可能希望保留以前获取的一些数据,例如绑定信息,系统振荡器的调整值或者应用程序的NVM数据。 本文档将介绍在执行OTAP更新时,保留需要的指定数据内容。 本文档适用于熟悉OTAP自定义Bluetooth LE服务的开发人员。相关更多信息,可以阅读以下文章:使用OTAP客户端软件对KW36设备进行重新编程。

OTAP Header和子元素

OTAP协议为软件更新实现了一种数据格式,该格式由Header和指定数量的子元素组成。 OTAP Header描述了关于软件更新的普通信息,其格式定义如下图所示。 有关Header字段的更多信息,请转至SDK中的<SDK_2.2.X_FRDM-KW36_Download_Path> \ docs \ wireless \ Bluetooth中的《 Bluetooth Low Energy Application Developer's Guide》文档的11.4.1 Bluetooth Low Energy OTAP Header一章。

shaozhongliangs_0-1636003869993.png

 

每个子元素都包含用于特定目的的信息。 用户可以为其应用程序实现专有字段(有关子元素字段的更多信息,请转至SDK中的<SDK_2.2.X_FRDM-KW36_Download_Path> \ docs \ wireless \ Bluetooth中的《 Bluetooth Low Energy Application Developer's Guide》文档的11.4.1 Bluetooth Low Energy OTAP Header一章。

OTAP包含以下子元素:

镜像文件子元素

值字段长度

(字节)

描述

升级镜像

n

该子元素包含实际的二进制可执行镜像,该镜像已复制到OTAP客户端设备的闪存中。 该子元素的最大字节长度取决于目标硬件。

扇区位图

32

该子元素包含目标设备闪存的扇区位图,该位图告诉引导加载程序哪些扇区应被覆盖,哪些扇区保持完整。 该字段的格式是首先使用每个字节的最低有效位,且最低有效字节和位代表闪存的最低存储扇区。

镜像文件CRC

2

这是在镜像文件的所有元素(此字段本身除外)上计算的16CRC。 该元素必须是通过空中发送的镜像文件中的最后一个子元素。

OTAP扇区位图子元素字段

KW36闪存分为:

  • 一个256 KB程序闪存(P-Flash)阵列,每个扇区大小2KB,闪存地址范围为0x0000_00000x0003_FFFF
  • 一个256 KB FlexNVM阵列,每个扇区大小2KB,闪存地址范围为0x1000_00000x1003_FFFF,别名存储器的地址范围为0x0004_00000x0007_FFFF

 

位图子元素的长度为256位,就KW36闪存而言,每个位代表2KB扇区,覆盖从0x0-0x0007_FFFF的地址范围(P-FlashFlexNVM Alias地址范围),其中1表示该扇区应被擦除,0表示应保留该扇区。 OTAP引导加载程序使用位图字段来获取在使用软件更新对KW36进行编程之前应擦除的地址范围,因此必须在发送软件更新之前对其进行配置,使得包含保留数据的内存地址范围内其内容保持不变,仅擦除将被软件更新覆盖的地址范围的数据。

 

例如:假设开发人员想要保留0x7D800-0x7FFFF之间的地址范围和0x0-0x1FFF之间的地址范围的数据,并且必须擦除其余数据。 0x7D800-0x7FFFF之间的地址范围对应于高地址5个闪存扇区,0x0-0x1FFF之间的地址范围是低地址4个扇区。

 

因此,这意味着应将256252之间的位(256255254253252)以及41之间的位(4321)设置为0,则OTAP位图为 :

0x07FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0

使用NXP测试工具配置OTAP位图以保护指定地址范围的数据

shaozhongliangs_1-1636003870013.png

 

  • PC上打开NXP Test Tool 12软件。 转到“ OTA更新-> OTAP蓝牙LE”,然后单击浏览...”按钮加载用于软件更新的映像文件(NXP测试工具仅接受.bin.srec文件)。 选择覆盖扇区位图复选框,配置OTAP位图,并更改默认值为新的位图值。 配置完位图后,选择保存...”
shaozhongliangs_2-1636003870071.png

 

  • 然后,弹出一个窗口,用于选择保存.bleota文件的目录。 填写文件名,点击保存。 在AndroidiOS上,该文件可以使用IoT Toolbox中的OTAP进行软件升级。 这个新的.bleota文件所包含位图告诉OTAP引导加载程序哪些扇区将被擦除,哪些扇区将被保留。
shaozhongliangs_3-1636003870131.png

 

 

Attachments
No ratings
Version history
Last update:
‎11-03-2021 10:31 PM
Updated by: