Bootloader_SW
1.FW框架
1.1.初始化函数,如果固件的更新流程无改动,则该层的代码不用做任何变更
1.2.信息获取的相关函数
(1) 固件包是否已经加密
(2) 某分区是否为空
(3) 获取FW version
(4) 获取FW中的CRC32的值
(5) 是否具备自动更新的条件
(6) 获取FW pack指定的分区名
(7) 获取旧的FW version
(8) 获取release后的FW中的CRC32的值
(9) 读取FW header的数据
1.3 协议析构:解析数据传输层的数据
1.3.1 初始化函数:
数据发送函数
主机的心跳包处理函数
主机的指令包处理函数
主机的查询响应函数
1.3.2 数据处理的taskXZ
1.3.3 协议层逻辑处理
1.4 数据传输,需要说明协议析构的数据来源
1.4.1 抽象接口
初始化函数
数据发送函数
数据接收的轮询函数
数据接收缓存清空函数
1.4.2 底层实现/移植文件
根据不同的通信接口实现 比如串口 spi iic
1.5 BSP
1.5.1 办卡初始化接口 提过APP需要自定义初始化内容的接口
1.5.2 通信接口的底层实现 其实也就是CDD
1.5.3 定时器 timeout
1.5.4 flash的分区管理
1.6 Hal库
1.7 功能组件
1.7.1 AES256库 FW使用AES256加密
1.7.2 FAL库 flash分区管理组件,便于同时管理flash和spi flash
1.7.3 SFUD库 支持spi flash
1.7.4 CRC32 Fw check使用CRC32.