FM3316 Bootloader 升级通信协议详解

需积分: 20 3 下载量 102 浏览量 更新于2024-08-06 收藏 1.86MB PDF 举报
"该文档详细介绍了FM3316系列微控制器的bootloader程序,用于设备的本地和远程通信升级。文档提供了bootloader程序的位置、文件说明、升级流程以及实现方法,包括普通本地上电通信升级、上电引脚选择通信升级、远程通信备份升级和远程通信不备份升级等不同方式。同时,提到了FM3316的芯片结构,如FLASH寄存器结构和擦写库函数。" 在这个文档中,我们主要学习以下几个关键知识点: 1. **Bootloader程序**:Bootloader是嵌入式系统启动时运行的第一段程序,负责初始化硬件、设置内存映射,并加载用户程序到内存中执行。在FM3316中,bootloader位于芯片的前4KB闪存空间,用于接收和处理升级通信报文。 2. **升级流程**:上电前,bootloader会通过UART2口(PG0和PG1引脚)不断查询通信状态,PC端则持续发送报文。当检测到配置帧报文时,bootloader会进入升级模式,清除用户区数据,然后接收并写入新的升级程序。最后,通过接收验证报文确保升级成功后,跳转到用户程序执行。 3. **文件结构**:文件夹`<bootloader 源程序>`包含bootloader工程,编译生成的`fm3316-gw-16-keil37.hex`是写入3316芯片的bootloader代码。`<bootload 引导程序通信规约.doc>`定义了bootloader与PC通信的协议,`<FM375 串口 bootloader 使用说明>`是PC端软件的使用指南,`<fm3316_bootload.exe>`是PC端升级工具,而`<fm3316_light1.hex>`和`<fm3316_light2.hex>`则是用户升级程序。 4. **升级方法**: - **普通本地上电通信升级**:在上电瞬间,模块和PC通过预先建立的通信链路进行升级。 - **上电引脚选择通信升级**:利用特定的上电引脚信号来触发升级过程。 - **远程通信备份升级**:通过远程通信接收升级数据,同时保持备份,以防升级失败。 - **远程通信不备份升级**:直接通过远程通信进行升级,不保留备份。 5. **芯片结构**:文档还简要介绍了FM3316的内部结构,包括FLASH寄存器和擦写库函数。这为开发者提供了理解和操作芯片内部存储器的基础。 这些知识点对于开发和维护使用FM3316的嵌入式系统至关重要,它们涵盖了bootloader的基本功能、升级机制和实际操作步骤,为设备的固件更新提供了清晰的指导。