.. _测试盒升级: AW30N 测试盒升级 ========================================= AW30N SDK 提供了 测试盒升级功能。 测试盒升级功能 含有 **串口升级方式** 和 **蓝牙升级方式**。 两个升级方式 分别由 **app_modules_h.c** 里的 **TESTBOX_UART_UPDATE_EN** 和 **TCFG_USER_BLE_ENABLE** 宏控制开关。 下面分为3个部分来介绍测试盒升级: 1. ":ref:`测试盒串口升级简要流程`" 2. ":ref:`测试盒蓝牙升级简要流程`" 3. ":ref:`测试盒升级常见问题`" .. note:: !!!!!!!注意使用测试盒时,请更新为最新版本!!!!!!!!!! ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. _测试盒串口升级简要流程: 测试盒串口升级简要流程 ***************************** 测试盒串口升级简要流程: 初始化初始串口,默认使用PA0作为升级I/O,UART1作为升级串口 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 默认使用PA0作为升级I/O,UART1作为升级串口。 .. image:: testbox_uart_init.png :alt: "测试盒串口初始化" :align: center .. centered:: 测试盒串口初始化 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 在消息处理加上MSG_UART_TESTBOX_UPDATE_START消息进行处理 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 测试盒点击升级后,会推送对应的升级命令给SDK,然后进入升级入口:uart_update_ota_loop(); .. image:: testbox_uart_update_entrance.png :alt: "升级入口" :align: center .. centered:: 升级入口 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 下载目录里的isd_config.ini使用PA0作为下载rx口 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. image:: testbox_update_ini_config.png :alt: "ini文件配置" :align: center .. centered:: ini文件配置 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 测试盒操作 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | 1:测试盒第6位拨码拨为0; | 2:使用type-c连接PC端与测试盒; | 3:上电后长按右边第一颗按键进入初始化; | 4:测试盒背面有两组升级串口,分别为左/右; | 5:随便选择一组连接到小机的PA0上,GND-GND; | 6:打开PC端的盘符,加载默认设置-->设置串口使能-->串口波特率设置100k-->保存设置到测试盒; (注:用户若使用v1.3.0版本(包括v1.3.0版本)以后的版本,可以跳过设置串口波特率这一步) | 7:测试盒重新上电,长按右边第一颗按键进入初始化; | 8:再次打开盘符,选择样机升级,放入所需要升级的ufw文件,根据第5点选择的左/右通道,点击升级; .. image:: testbox_uart.png :alt: "测试盒" :align: center .. centered:: 测试盒 .. image:: uart_update_config.png :alt: "测试盒配置" :align: center .. centered:: 测试盒配置 .. image:: testbox_uart_update.png :alt: "测试盒升级" :align: center .. centered:: 测试盒升级 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. _测试盒蓝牙升级简要流程: 测试盒蓝牙升级简要流程 ****************************** 测试盒蓝牙升级简要流程: 打开蓝牙BLE宏 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. image:: app_modules_h.png :alt: "app_modules_h" :align: center .. centered:: app_modules_h 在消息处理加上MSG_UART_TESTBOX_UPDATE_START消息进行处理 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 测试盒点击升级后,会推送对应的升级命令给SDK,SDK收到命令解析后会进入到升级入口: .. image:: testbox_ble_update_entrance.png :alt: "测试盒蓝牙升级入口" :align: center .. centered:: 测试盒蓝牙升级入口 测试盒操作 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | 1:测试盒第6位拨码拨为1; | 2:使用type-c连接PC端与测试盒; | 3:上电后长按右边第一颗按键进入初始化; | 4:打开PC端的盘符,加载默认设置-->保存设置到测试盒; | 5:测试盒重新上电,长按右边第一颗按键进入初始化; | 6:再次打开盘符,选择样机升级,放入所需要升级的ufw文件,找到你要升级的从机的蓝牙名,点击升级; .. image:: testbox_ble_config.png :alt: "测试盒蓝牙升级配置" :align: center .. centered:: 测试盒蓝牙升级配置 .. image:: testbox_ble_update_log.png :alt: "测试盒蓝牙升级打印" :align: center .. centered:: 测试盒蓝牙升级打印 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. _测试盒升级常见问题: 测试盒升级常见问题 ****************************** 测试盒蓝牙升级对象只能升级从机 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 测试盒蓝牙升级对象只能升级从机。 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 设备升级过程中,在校验ufw文件过程前需要关闭与升级复用功能模块 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 在校验数据前,用户需要关闭与 升级复用的功能模块。 用户可注册升级回调来关闭 与 升级复用的功能模块。 默认该回调会关闭audio 和 adc。 .. image:: update_cb.png :alt: "升级回调注册" :align: center .. centered:: 升级回调注册 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 设备升级过程中,在校验ufw文件过程中进行复位原因 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 1:升级空间不够,需要足够的VM区域。 2:ufw文件数据不合法,检查ufw文件是否损坏。 3:升级文件的key与芯片key不对应; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 测试盒升级断电问题 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 升级过程分为 **校验文件** 与 **升级** 两个过程。 在校验文件过程中小机断电 / 测试盒断电 / 蓝牙断开,小机重新上电后小机仍能执行原有程序。 在升级过程中断电 / 测试盒断电 / 蓝牙断开,小机重新上电,原有程序已被破坏,需要点击重新升级。 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 升级过程中保持住IO状态实现 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 请看 ":ref:`升级时如何保持住某个IO状态`" 章节 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 带快速启动进行升级 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 请看 ":ref:`带快速启动进行升级`" 章节