CAN总线程序烧写技术详解
版权申诉
83 浏览量
更新于2024-09-11
收藏 388KB PPT 举报
"CAN烧写原理与实现,主要涉及基于JTAG接口和CAN总线的程序升级方法,尤其在电动汽车控制领域。"
在电动汽车控制中,CAN(Controller Area Network)总线是通信的重要手段,其烧写原理与实现对于系统的更新和维护至关重要。烧写过程主要包括两种常见方式:
1. **基于JTAG接口升级程序**:
JTAG(Joint Test Action Group)接口通常用于硬件调试,提供了一种直接访问微处理器内部寄存器和存储器的方式。使用JTAG进行程序升级的优点是操作简便,调试便捷。然而,它的缺点在于对物理空间的需求以及传输距离有限制,可能不适用于某些复杂的分布式系统。
2. **基于CAN总线升级程序**:
CAN总线以其高可靠性、抗干扰能力和适应复杂环境的能力,在汽车电子系统中广泛应用。通过CAN总线进行程序升级,可以突破JTAG的限制,无需改变DSP(Digital Signal Processor)的启动方式。当设备上电复位时,会首先运行底层的升级程序,检查EEPROM中的升级标志。如果需要升级,新应用程序会通过CAN总线传输到Flash的指定扇区进行烧写;否则,系统将继续执行原有的应用程序。在运行过程中,如果接收到升级指令,系统会设置EEPROM的升级标志并复位,以便进行程序更新。
烧写流程通常包括以下步骤:
- **下位机Flash烧写软件流程**:
- 首先,执行复制功能函数,将接收的数据从CAN总线移动到RAM缓冲区。
- 接着,执行擦除功能,清空Flash中的内容。
- 然后,执行编程功能,将RAM中的数据写入Flash。
- 最后,执行校验功能,确保烧写的信息正确无误。
- **上位机软件流程**:
- 上位机需要将源代码转换成适合烧写的格式,如.out文件转换为.hex或.bin文件。
- 通过CAN接口模块配置,将应用程序分包并发送。
- 初始化配置和CAN通讯控制确保数据传输的准确性和稳定性。
应用程序的烧写格式一般是从.ccS编译链接生成的.out文件,进一步转换为Flash可识别的.bin文件。转换过程中可能需要使用特定的命令和工具,例如通过.map文件、-o选项生成.hex文件,并使用-m选项指定输出文件格式和内存宽度。最终,通过CAN总线下传到目标设备的Flash中。
在实现这一过程时,底层应用程序需要具备以下功能:
- **上电复位查询功能**:系统上电复位后,读取EEPROM中的升级标志,根据结果决定执行升级程序还是正常应用。
- **搬移烧写程序功能**:由于F28335等芯片的Flash特性,烧写程序需要被加载到RAM中执行,以避免在烧写过程中影响到正在运行的程序。
- **接收并保存应用程序代码**:利用CAN通讯接收上位机发送的代码,并将其安全地存储在DSP的指定内存区域。
CAN烧写原理与实现是电动汽车控制中一个关键的技术环节,它涉及到程序更新的高效性、稳定性和安全性,对于保证系统的可靠运行具有重要意义。
1378 浏览量
2021-10-02 上传
2022-11-28 上传
点击了解资源详情
132 浏览量
2021-10-02 上传
290 浏览量
猫腻MX
- 粉丝: 22
- 资源: 2万+
最新资源
- chromepass-stealer:该程序可从chrome数据库中提取密码,并通过解密并将其以表格形式呈现给人类,以可读的形式呈现。如果有未安装的模块错误,请执行-“ pip3 install pycryptodome pypiwin32”
- 英语单词字典-crx插件
- 高空
- 西储大学轴承故障数据读取GUI_gui数据_故障gui_故障_西储大学;故障诊断;GUI设计_西储
- 易语言超级列表框批量打印
- Hello-Python:最近,很多人向我询问他们可以学习的编程语言,这对于绝对的初学者来说并不难,并且确实可以帮助他们开发出出色的产品。 因此,我对他们的建议是“ Python”。 Python是一种通用的编程语言,它确实快速,强大,并且具有大量方便的库。 互联网是学习语言的重要资源,但是找到正确的材料可能是一项繁琐的工作。 这就像在大海捞针中找到一根针。 因此,我创建此网站的主要目的是帮助初学者轻松学习该语言。 计算机科学爱好者,快来看看! 网站
- tellme:TellMe 是一个工具包,可根据代码中发生的事情创建*面向用户的报告*
- Tabs Navigator-crx插件
- jpbasic1:Java欢迎
- 打字稿-jwt-1
- Haraka:快速,高度可扩展的,事件驱动的SMTP服务器
- 易语言超级列表框批量删除
- 面向5G通信网的D2D技术综述_5gresource_5G资源分配_5G_5gD2D_基站缓存
- ongaku:本地文件的 http 音乐播放器可通过 chrome tab 流式传输到 chromecast
- search-extension:搜索扩展名以从Google驱动器和投递箱中获取结果
- 弹出多个动画菜单特效