TF升级

本文说明 TF 卡 OTA 的升级流程、关键接口和应用接入方式。

1. 参考代码

文件

作用

solution\components\ota\ota_net\ota_net_recv.c

复用 OTA 下载状态接收和流程调度

solution\components\ota\ota_net\ota_net_dec.c

复用 OTA 数据解析和写入前解码

solution\components\tf\tf_ota.c

TF 卡升级包扫描、校验和触发

2. 应用例程

场景

文件

调用接口

系统 OTA 设置页面

setting_system_ota_gui.c

setting_system_ota_gui_init()setting_system_ota_create_btn()

系统 OTA 业务处理

setting_system_ota_proc.c

ota_send_construct_msg_to_ui()ota_net_download()app_get_active_netdev_name()

OTA 进度界面

ota_window.c

ota_ui_get_ctx()ota_send_construct_msg_to_ui()ota_net_download()

OTA 错误提示

ota_error.c

ota_send_construct_msg_to_ui()ota_net_download()、错误页回调

3. 简介

TF卡升级是指将由butterfli.exe编译生成的ota_all.bin升级包拷贝到TF卡指定目录/external_sd/ota/后的本地升级模式,属于全包升级(USB升级类似)。 目前NAND, NOR, NORRAMRUN工程均支持TF卡升级。

4. 流程

  • NAND TF卡升级在HCPU中进行,升级过程重启会停留在ota_error.c重新进行升级

  • NOR TF卡升级在OTA MANAGER中进行,升级过程中重启会停留在ota manager中重新进行升级

  • NOR RAMRUN TF卡升级HCPU中执行非hcpu code相关的升级,升级完成后会跳转到ota manager进行HCPU的升级,升级过程中重启根据升级进度停留在ota_error.c或者ota manager中

5. 配置

TF OTA安装流程和PAN OTA安装流程一致,需要依赖的宏如下

  1. HCPU

../../../_images/tf_ota1.png
  1. OTA MANAGER

../../../_images/tf_ota2.png
../../../_images/tf_ota3.png

6. UI界面

通过主菜单->设置->系统->系统升级->SD卡升级进行升级。

7. 进度

安装进度由此接口获取

void ota_register_progress_cb(ota_progress_cb_t callback)