CAN总线升级:突破限制的在线烧写策略

版权申诉
1 下载量 55 浏览量 更新于2024-09-11 1 收藏 388KB PPT 举报
在线升级的基本思想主要涉及两种方法:一是基于JTAG接口升级程序,二是基于CAN总线升级程序。JTAG接口升级通常因为其操作简便且便于调试而被采用,但其缺点是受空间和传输距离的限制,可能不适合所有复杂系统和环境。相比之下,CAN总线升级具有更高的灵活性,它能够在复杂的系统中进行,无需改变DSP(数字信号处理器)的启动方式。 在CAN总线升级方案中,核心步骤如下: 1. **上电复位判断**:每次芯片上电复位时,首先运行底层升级程序,通过读取EEPROM(电可擦除只读存储器)来判断是否需要升级。如果检测到升级指令,系统会暂停当前运行的应用程序,并准备接收新的代码。 2. **数据传输与烧写**:如果需要升级,应用程序会被从上位机(通常为PC或其他控制设备)通过CAN总线发送到指定的Flash(闪存)扇区。这一步要求下位机(如DSP)具备接收、处理和烧写Flash的能力,由于F28335片内Flash的限制,可能需要将部分程序逻辑移到RAM(随机存取存储器)中执行。 3. **应用程序接收与存储**:通过CAN接口模块配置,将用户代码分包成多个帧,每个32帧作为一个数据包发送。上位机软件负责编码、打包和发送,同时配置CAN通讯以确保可靠的数据传输。 4. **烧写过程管理**:下位机软件流程包括执行擦除、编程和校验功能,确保新代码的正确写入。而上位机软件则负责生成.hex或.bin格式的可烧写文件,通过特定命令行工具如`F28335_SPI_SEG.cmd`进行转换。 5. **应用程序烧写**:最终,通过`.out`文件转换成.Flash可识别的.bin文件格式,通过`.hex`文件映射到Flash中,按照预设的ROMS(只读存储器)地址和参数进行烧写。 6. **底层应用程序功能**:烧写完成后,底层应用程序需包含上电复位后的查询升级指令,以及处理接收并烧写新代码的逻辑,包括接收上位机发送的应用程序代码并将其存储到指定内存区域。 在线升级的基本思想利用了CAN总线通信的优势,实现了对DSP等嵌入式设备的远程、非侵入式的更新,提高了系统的灵活性和可维护性。然而,这种升级策略需要仔细设计和管理,以确保在各种条件下都能稳定、安全地完成。