应用说明 :HT32 自更新/烧录方法 ===================================================== 固件烧录方式 --------------------------- 当没有 烧录器 和 调试器 时,想更新HT32的程序固件,还有 **ISP & IAP** 两种方式。 .. figure:: ../_static/image/Software/Application_IAP/image001.png :width: 80% :align: center :alt: 固件烧录方式 固件烧录方式 ISP 烧录 --------------------------- 1. **ISP** 功能 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ISP 功能是HT32出厂有自带MCU自烧录FLASH的程序,程序存在FLASH的 ``Bootloader`` 区域 ,可通过外部控制 ``BOOT PIN`` 电平, 将程序跳转到 ``Bootloader`` 区域运行 ,使用 **上位机** **HT32_Flash_Programmer** 可通过 USB/UART 接口和 HT32 通讯, 并进行烧录固件。 .. figure:: ../_static/image/Software/Application_IAP/image002.png :width: 80% :align: center :alt: ISP 烧录 ISP 烧录 .. tip:: `HT32_Flash_Programmer 软件下载`_ .. _HT32_Flash_Programmer 软件下载: https://www.holtek.com.cn/search?key=HT32_Flash_Programmer 2. ISP 使用方法 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 进入 ISP 模式 :将 **BOOT PIN(PA9)** 控制为 **低电平** ,再对 MCU 上电 或 复位。 - 硬件连接: - **UART** : 电脑USB端口 <--> USB转UART板子 <--> MCU-UART端口 - **USB** : 电脑USB端口 <--> MCU USB端口 - 数据传输 :使用上位机 **HT32_Flash_Programmer**,发送固件 **x.hex / x.bin** 和操作命令 - 退出 ISP 模式 : 将 **BOOT PIN(PA9)** 控制为 **高电平** ,再对 MCU 上电 或 复位。 .. figure:: ../_static/image/Software/Application_IAP/image003.png :width: 80% :align: center :alt: HT32 Flash Programmer HT32 Flash Programmer IAP 烧录 --------------------------- 1. **IAP** 功能 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - **IAP** :用户自行编写程序,通过通讯获得更新固件,并实现MCU自行烧录内部FLASH,功能和 ``Bootloader`` 一样。 - **AP** :正常运行时的应用程序。 .. note:: - **IAP + AP** 架构,部分厂商称为 **Userloader + APP** 。 - 一般在 **IAP** 程序会放在 MCU FLASH 最开始的区域 。 - **上位机** 和 **IAP** 的通讯,也是用户自行编写,通讯接口和协议均可支持,支持双向通讯即可。 2. **IAP + AP** 使用方法 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. 将 MCU FLASH 划分为 **IAP** 区域 和 **AP** 区域, **IAP** 区域在前, **AP** 区域在后。 2. MCU 上电/复位 ,程序从 **FLASH Address : 0x0000_0000** 开始运行 **IAP** 区域。 3. **IAP** 区域,程序需判断,什么条件下需要更新 **AP** 区域 和 什么条件下跳转到 **AP** 区域。 4. **AP** 区域,可通过 **软件复位** 和 **程序跳转** ,再运行至 **AP** 区域。 5. **IAP + AP** 框架的使用方法,可参考 **固件库** 提供 :doc:`./example_iap_ap` 。 .. figure:: ../_static/image/Software/Application_IAP/image004.png :width: 80% :align: center :alt: IAP 使用方法 IAP 使用方法 **应用说明 :HT32 自更新/烧录方法** 常见问题,请参考 :ref:`FAQ ` 。