打印
[应用笔记]

HT32 MCU IAP - 使用 I2C Slave 进行固件更新

[复制链接]
2685|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
eltonchang2001|  楼主 | 2022-12-12 09:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 eltonchang2001 于 2022-12-12 09:44 编辑

HT32 MCU IAP - 使用 I2C Slave 进行固件更新
简介
    现今的电子产品发展迅速且开发周期很短,往往在市场贩卖后有固件更新的需求,大部分修正软件问题、新增软件功能、系统优化等都需要固件更新来完成,因此发展出一种程序架构让应用程序有自我更新的能力,通过这种方法更新程序我们称之为IAP (In-Application Programming),此类程序通常由两个可执行的独立程序组成,分别是存放在IAP区域的IAP Loader,以及存放在AP (Application) 区域的AP Firmware
    IAP / AP架构的优点是IAP Loader与AP Firmware的原始码都属于Main Flash内应用层的程序,用户拥有完全的控制能力,例如用户可以决定自己的通信接口,也可自定义通信协议,或是沿用HT32定义的协议来增加新命令。但MCU必须分配部分的Flash存储器作为IAP区域而压缩了AP可用的范围,在Flash Layout的单元会介绍IAP_I2C的IAP / AP架构的存储器规划。

    HT32提供的IAP_I2C应用范例通过两个范例程序组成 :
  • Device范例:使用IAP / AP架构。IAP Loader会根据Host端传来的命令封包来对AP进行IAP更新。使用者可在此工程架构下开发或移植应用程序。
  • Host范例:此范例示范如何开发一个IAP Host。将“新版AP Image”作为数据存储在内部Flash,并向Device的IAP Loader发出更新AP的需求。Host范例仅用于测试与学习,使用者需要将其移植到应用环境的Host,并依据实际的应用情境进行调整。

缩写说明:

  • IAP : In-Application Programming (在应用中编程)
  • AP : Application (应用程序)
  • PC : Personal Computer (个人计算机)
  • SK : Starter Kit,HT32 Development Board (HT32开发板)
  • API : Application Programming Interface (应用程序编程接口)
  • IDE : Integrated Development Environment (整合开发环境)
  • CRC : Cyclic Redundancy Check (循环冗余校验)

资源下载及准备.......更详细内容,请搓我下载https://www.holtek.com.cn/documents/10179/116740/an0606sc.pdf



使用特权

评论回复

相关帖子

沙发
yangxiaor520| | 2022-12-12 19:24 | 只看该作者
用IIC做IAP速度会不会太慢了

使用特权

评论回复
板凳
Stahan| | 2023-1-3 14:47 | 只看该作者
IIC的速度还可以啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

38

主题

159

帖子

5

粉丝