一种基于CAN总线的ECU在线程序升级系统及方法技术方案

技术编号:13201106 阅读:52 留言:0更新日期:2016-05-12 10:23
本发明专利技术公开了一种基于CAN总线的ECU在线程序升级系统及方法,包括装有上位机应用程序的PC机、CAN卡和车载嵌入式控制单元ECU,所述CAN卡一端与PC机通过USB接口连接,另一端通过CAN总线连接车载嵌入式控制单元ECU,车载嵌入式控制单元ECU安装有用于引导加载的下位机Bootloader程序,上位机软件与下位机Bootloader程序的通讯协议是基于标准的CCP协议编写。本发明专利技术所提供的基于CAN总线的ECU在线程序升级系统及方法,采用CAN总线,实现ECU的在线程序升级,无需将ECU从车上拆下来,只需要CAN卡一端连接PC机的USB接口,另一端连接ECU的CAN总线,就可以通过上位机软件实现ECU程序升级,不用增加额外的硬件,非常便捷。

【技术实现步骤摘要】

本专利技术涉及电动汽车
,特别涉及一种基于CAN总线的ECU在线程序升级系统及方法
技术介绍
目前,ECU安装在车上以后,要更新其中的程序,传统的方法是通过调试接口(JTAG,DAP等)来下载程序,非常不方便。以电池管理系统为例,其主控制单元和从控制单元均固定于箱体之中,如果要升级应用程序,操作非常不方便。因此,有必要设计一种更方便快捷的方案实现程序升级。现在市场上有一些在线程序升级方案,其中大部分是基于RS232总线,但是RS232总线速率比较低,而且RS232总线不满足汽车应用要求。CAN总线在汽车领域有着广泛应用,因此设计一套基于CAN总线的ECU在线程序升级系统就显得很有必要。
技术实现思路
为了克服已安装在车上ECU的程序升级难题,本专利技术提供一种基于CAN总线的ECU在线程序升级系统及方法。本专利技术的技术方案是: 一种基于CAN总线的E⑶在线程序升级系统,包括装有上位机应用程序的PC机、CAN卡和车载嵌入式控制单元ECU,所述CAN卡一端与PC机通过USB接口连接,另一端通过CAN总线连接车载嵌入式控制单元ECU,车载嵌入式控制单元ECU安装有用于引导加载的下位机Boot loader程序,上位机软件与下位机Boot loader程序的通讯协议是基于标准的CCP协议编写。—种基于CAN总线的E⑶在线程序升级方法,包括步骤: 51、将新的用户程序编译生成HEX文件,上位机软件加载并解析该HEX文件,得到相关的程序数据以及数据存储地址; 52、上位机软件在解析完HEX文件之后,就进入了与下位机通讯阶段,上位机会首先发连接命令,该命令包含下位机地址信息,确保与唯一确定的下位机建立连接,下位机接收到连接命令,置位程序升级标志; 53、上位机和下位机建立好连接之后,通过密钥机制进行密匙验证,密钥验证程序完成之后,上位机会发擦除命令,下位机擦除掉原有程序数据; 54、之后上位机开始发送数据开始地址以及数据,下位机接收数据开始地址以及数据,并根据开始地址判断是否需要将已经接收到的数据写入Flash,直到全部数据接收完成并且全部写入Flash中; 55、数据全部写入Flash之后,上位机软件发送断开连接命令,下位机清除程序升级标志,复位下位机,进入用户程序。优选的,在上位机软件解析完目标文件以后,根据地址大小对目标文件进行排序。优选的,数据的分页工作和Flash写入算法是在下位机Bootloader程序中完成的,上位机软件只负责解析目标文件并进行排序。本专利技术的优点是: 本专利技术所提供的基于CAN总线的ECU在线程序升级系统及方法,采用CAN总线,实现ECU的在线程序升级,无需将ECU从车上拆下来,只需要CAN卡一端连接PC机的USB接口,另一端连接ECU的CAN总线,就可以通过上位机软件实现ECU程序升级,不用增加额外的硬件,非常便捷。【附图说明】下面结合附图及实施例对本专利技术作进一步描述: 图1为本专利技术所述的基于CAN总线的ECU在线程序升级系统的结构示意图; 图2本专利技术实施例中基于CAN总线的ECU在线程序升级系统的上位机软件界面图; 图3本专利技术实施例中基于CAN总线的ECU在线程序升级系统的上位机软件流程图; 图4本专利技术实施例中基于CAN总线的E⑶在线程序升级系统的下位机Bootloader程序流程图。【具体实施方式】如图1所示,本专利技术所揭示的基于CAN总线的ECU在线程序升级系统,包括装有上位机应用程序的PC机、kvaser公司的USBcan Light型CAN卡和车载嵌入式控制单元E⑶,所述CAN卡一端与PC机通过USB接口连接,另一端通过CAN总线连接车载嵌入式控制单元ECU,车载嵌入式控制单元ECU安装有用于引导加载的下位机Bootloader程序,上位机软件与下位机Bootloader程序的通讯协议是基于标准的CCP协议编写。本专利技术通过CAN总线,实现在线程序升级过程,只需要CAN卡一端连接PC机的USB接口,另一端连接E⑶的CAN总线,就可以通过PC机更新E⑶中的用户程序。图2所展示的是上位机软件界面图,上位机软件是LabVIEW开发环境编写的。主界面主要由CAN卡配置区,加载程序选择区,help文件区,加载进度显示区和加载状态显示区。通过界面中不同功能的依次执行,可以实现HEX文件的正确下载。本专利技术所述的基于CAN总线的E⑶在线程序升级方法包括步骤: 51、将新的用户程序编译生成HEX文件,上位机软件加载并解析该HEX文件,得到相关的程序数据以及数据存储地址; 52、上位机软件在解析完HEX文件之后,就进入了与下位机通讯阶段,上位机会首先发连接命令,该命令包含下位机地址信息,确保与唯一确定的下位机建立连接,下位机接收到连接命令,置位程序升级标志; 53、上位机和下位机建立好连接之后,通过密钥机制进行密匙验证,密钥验证程序完成之后,上位机会发擦除命令,下位机擦除掉原有程序数据; 54、之后上位机开始发送数据开始地址以及数据,下位机接收数据开始地址以及数据,并根据开始地址判断是否需要将已经接收到的数据写入Flash,直到全部数据接收完成并且全部写入Flash中; 55、数据全部写入Flash之后,上位机软件发送断开连接命令,下位机清除程序升级标志,复位下位机,进入用户程序。图3所展示的是上位机软件流程图,在完成CAN卡配置之后,通过上位机主界面中的“打开文件”按钮选择需要载入的HEX文件,点击“Reprogram”按钮解析所在如的HEX文件,当点击“Download”之后会依次运行接下来的连接下位机、获取种子、解锁下位机等流程。图4所展示的是下位机Bootloader程序流程图,当上位机点击“Download”按钮之后,上位机和下位机进行通讯,上位机只有接收到下位机正确的应答信息,才会进入下一个流程。本具体实施通过CAN总线,实现E⑶的在线程序升级,只需要CAN卡一端连接PC机的USB接口,另一端连接E⑶的CAN总线,就可以通过上位机软件实现E⑶程序升级。上述实施例只为说明本专利技术的技术构思及特点,其目的在于让熟悉此项技术的人能够了解本专利技术的内容并据以实施,并不能以此限制本专利技术的保护范围。凡根据本专利技术主要技术方案的精神实质所做的修饰,都应涵盖在本专利技术的保护范围之内。【主权项】1.一种基于CAN总线的ECU在线程序升级系统,其特征在于:包括装有上位机应用程序的PC机、CAN卡和车载嵌入式控制单元E⑶,所述CAN卡一端与PC机通过USB接口连接,另一端通过CAN总线连接车载嵌入式控制单元ECU,车载嵌入式控制单元ECU安装有用于引导加载的下位机Boot loader程序,上位机软件与下位机Boot loader程序的通讯协议是基于标准的CCP协议编写。2.一种基于CAN总线的E⑶在线程序升级方法,其特征在于,包括步骤: 51、将新的用户程序编译生成HEX文件,上位机软件加载并解析该HEX文件,得到相关的程序数据以及数据存储地址; 52、上位机软件在解析完HEX文件之后,就进入了与下位机通讯阶段,上位机会首先发连接命令,该命令包含下位机地址信息,确保与唯一确定的下位机建立连接,下位机接收到连接命令,置位程序升级标志; 53、上位机和下位机建立好本文档来自技高网...

【技术保护点】
一种基于CAN总线的ECU在线程序升级系统,其特征在于:包括装有上位机应用程序的PC机、CAN卡和车载嵌入式控制单元ECU,所述CAN卡一端与PC机通过USB接口连接,另一端通过CAN总线连接车载嵌入式控制单元ECU,车载嵌入式控制单元ECU安装有用于引导加载的下位机Bootloader程序,上位机软件与下位机Bootloader程序的通讯协议是基于标准的CCP协议编写。

【技术特征摘要】

【专利技术属性】
技术研发人员:金达锋张振兵
申请(专利权)人:清华大学苏州汽车研究院吴江
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1