CN102955474A - 一种汽车ecu的测控方法及其*** - Google Patents
一种汽车ecu的测控方法及其*** Download PDFInfo
- Publication number
- CN102955474A CN102955474A CN2011102475355A CN201110247535A CN102955474A CN 102955474 A CN102955474 A CN 102955474A CN 2011102475355 A CN2011102475355 A CN 2011102475355A CN 201110247535 A CN201110247535 A CN 201110247535A CN 102955474 A CN102955474 A CN 102955474A
- Authority
- CN
- China
- Prior art keywords
- data
- plane
- thread
- ecu
- seat
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明涉及一种汽车ECU的测控方法及其***,该汽车ECU的测控方法包括以下步骤:1)建立ECU数据处理平台;2)利用建立的数据处理平台对ECU数据进行数据处理分析。本发明提供了一种数据可以实时存储、操作便捷、可靠性强的汽车ECU的测控方法及其***。
Description
技术领域
本发明属于嵌入式计算机测量控制领域,涉及一种汽车ECU的测控方法及其***。
背景技术
汽车发动机的电控单元ECU属于发动机的核心控制部件,它通过各种传感器把发动机的信号或信息收集起来,利用这些信号来确定发动机在不同负荷、不同工况和不同环境下所需要的喷油量和喷射时刻、精确控制喷油器的喷油量,从而达到提高发动机动力,减少排放,提高经济性。因为ECU的状态参数繁多,在ECU开发过程中,需要实时获取ECU中的参数或者更新ECU的程序数据,通常给ECU更新程序都是通过仿真器用JTAG口下载程序,此时必须把机器打开,非常不方便。
发明内容
为了解决背景技术中存在的上述技术问题,本发明提供了一种数据可以实时存储、操作便捷、可靠性强的汽车ECU的测控方法及其***。
本发明的技术解决方案是:本发明提供了一种汽车ECU的测控方法,其特殊之处在于:所述汽车ECU的测控方法包括以下步骤:
1)建立ECU数据处理平台;
2)利用建立的数据处理平台对ECU数据进行数据处理分析。
上述步骤1)的具体实现方式是:
1.1)初始化CAN总线并启动CAN总线;
1.2)根据初始化后的CAN总线生成本地JNI库;
1.3)基于步骤1.2)所生成的本地JNI库建立发送线程以及接收线程两个通讯线程;所述ECU数据处理平台包括发送线程以及接收线程;所述发送线程用于对用户的命令请求进行统一的管理并转化为CAN卡可读的命令格式,按照统一的类型发送给下机位;所述接收线程用于负责管理和处理来自上机位的不同数据。
上述基于步骤1.2)所生成的本地JNI库还建立用户界面线程的通讯线程;所述用户界面线程用于获取用户通讯命令,维护用户的数据显示,图形化显示的ECU的参数,对ECU数据进行解析,并进行格式化显示。
上述步骤1.1)的具体实现方式是:
1.1.1)将ECU板通过CAN总线连接到PC机的CAN卡上;
1.1.2)初始化CAN总线;
1.1.3)上机位与下机位建立逻辑通讯关系,上下机位之间的所有ECU数据的传递均通过上机位进行控制;所述上机位与下机位建立逻辑通讯关系后自动启动CAN总线。
上述步骤1.2)的具体实现方式是:
根据初始化后的CAN总线并利用CAN卡的通讯接口生成本地JNI库。
上述步骤2)的具体实现方式是:
2.1)通讯线程中的用户界面线程将获取的通讯命令转发给发送线程;
2.2)通讯线程中的发送线程接收通讯命令,通过调用JNI库进行数据处理;
2.3)通讯线程中的接收线程对发送线程所发送的通讯命令进行数据处理。
上述步骤2.2)的具体实现方式是:
2.2.1)发送线程对通讯命令进行解析,根据CAN2.0B扩展帧传输协议,下机位每发送一帧的有效数据仅为8字节,它将上机位的操作请求数据帧封装为下机位CAN协议规定的数据格式,向下机位发送;
2.2.2)当下机位按请求发送了所需数据时,设置一个长度为64字节的缓冲区,提取CAN数据帧中8字节的有效数据,填入该缓冲区中;当下机位发送完8帧数据,缓存填满后,再供上机位读取;
2.2.3)上机位则按帧接收数据,负责数据格式转换和数据传输、数据辨别以及图形显示。
上述步骤2.2.3)之后还包括:
2.2.4)对上机位所发送的ECU数据进行异或校验,得到64位校验码;所述校验码包含64位二进制数,在发送线程中进行计算,并置于待发送数据帧的尾部。
上述步骤2.3)的具体实现方式是:
若下机位在规定的时间内没有收到来自上机位的命令请求,自动配置寄存器,跳转到flash地址0x22d74执行发动机程序;若下机位在规定的时间内收到上机位的命令请求,将步骤2.2)中发送线程发送的命令数据帧进行解析,提取数据帧的包头,并进行判断分析;若下机位在规定时间内收到来自上机位的命令请求,开始维护整板编程命令协议;根据命令头的含义不同,执行相应的命令处理程序,读取某段地址数据、写ECU数据或者修改ECU数据;
所述命令协议如下:
命令字0x0403:读取ECU某段数据内容;
命令字0x0402:写ECU数据;
命令字0x0401:修改ECU某段数据;
命令字0xEE:收到标志数据帧,表示写ECU数据完毕;
命令字0xDD:收到标志数据帧,表示修改ECU数据完毕;
命令字校验码:收到8字节校验码,表示接收某段ECU数据完毕;
即:上机位的发送线程转换用户的命令操作通过CAN卡发送下来的命令是16字节的,下机位程序解析命令包的含义,若命令字为0x0403就表示需要读取某段的数据内容,下一帧数据包就是要读取的数据段的起始地址,下机位程序就去执行相应的处理程序,把上机位要求的数据传送回到上机位,并且在该过程中,始终和用户有个交互的过程;若解析命令格式为0x0402,表示写ECU数据。
上述步骤2.3)之后还包括:
2.4)对步骤2.3)中的所接收数据帧进行校验和校验,接收端根据所接收的数据帧重新计算校验码,并与发送端计算所得的校验码进行比较,如果相符,则校验通过;如果不相符,则认为发送数据出错,并丢弃该数据。
一种汽车ECU的测控***,其特殊之处在于:所述汽车ECU的测控***包括上机位、下机位以及数据校验模块;所述上机位通过数据校验模块与下机位相连;所述上机位包括数据发送模块以及CAN卡通讯模块;所述数据发送模块包括用户界面线程、发送线程以及接收线程,所述用户界面线程通过发送线程接入接收线程,所述接收线程分别与发送线程和用户界面线程相连;所述发送线程和接收线程分别和上机位的CAN卡通讯模块相连;所述下机位包括数据接收模块以及数据处理模块;所述CAN卡通讯模块包括JNI驱动模块以及与其相连的CAN卡驱动单元。
本发明的优点是:
1、数据可以实时存储。本发明所提供的汽车ECU的测控方法及***所采用的上机位采用Eclipse3.5.2+windowbuild完成测控软件上机位界面的设计以及与下机位的通信。测控得到的数据以数据或者表格两种方式显示出来,数据可以实时存储。历史数据可以从保存文件获得,并进行离线分析,界面友好。ECU中数据的解析是可扩展配置的,用户可以通过手动编辑添加Excel文件。
2、操作便捷。本发明中上层的应用主要是调用CAN卡驱动接口实现与底层ECU程序的通讯,在中间利用JAVA的JNI技术实现了CAN卡接口的封装,为上层应用提供更为简单直观的接口函数,做到风格统一,利用JAVA实现界面更为便捷迅速。
3、可靠性强。本发明针对CAN通信和嵌入式***的实时性要求,使用CAN卡驱动程序收发数据代码可靠、延迟短、占用***时间短、中断执行时间短、关闭中断时间短、并在错误和发生异常情况下影响应用程序汇报。另外,该驱动程序可以监控CAN控制器的工作状态,在出现致命错误和脱离总线时,为CAN模块复位,并向***报告。
4、交互性好。本发明一改传统的给ECU更新程序通过仿真器用JTAG口下载程序,此时必须要把机器打开的方式,而通过该测控软件可以在机器封闭状况下对ECU进行整板编程,读取ECU内部程序和修改内部参数。给ECU软件开发和维护提供技术支持。CAN总线的最大速度为1Mbit/s,也大大提高了读写程序的速度。CAN总线在汽车应用广泛同时被用来和其它一些控制器进行通讯,相互交互信息。
附图说明
图1是本发明所提供的***结构示意图;
图2是上机位部分的主要线程间关系图;
图3是下机位控制流程图。
具体实施方式
参见图2和图3,本发明提供了一种汽车ECU的测控方法,该方法包括以下步骤:
1)建立ECU数据处理平台:
1.1)初始化CAN总线并启动CAN总线:
1.1.1)将ECU板通过CAN总线连接到PC机的CAN卡上;
1.1.2)初始化CAN总线;
1.1.3)上机位与下机位建立逻辑通讯关系,上下机位之间的所有ECU数据的传递均通过上机位进行控制。
1.2)根据初始化后的CAN总线生成本地JNI库:根据根据初始化后的CAN总线并利用CAN卡的通讯接口生成本地JNI库。
1.3)基于步骤1.2)所生成的本地JNI库建立用户界面线程、发送线程以及接收线程三个通讯线程;所述用户界面线程、发送线程以及接收线程三个通讯线程构成ECU数据处理平台;所述用户界面线程用于获取通讯命令、维护用户的数据显示,图形化显示的ECU的参数,对ECU数据进行解析,并进行格式化显示;所述发送线程主要用于对用户的命令请求进行统一的管理并转化为Can卡可读的命令格式,按照统一的类型发送给下机位;所述接收线程用于负责管理来自上机位的不同数据。这三个线程之间需要维护一个关系,比如同步、阻塞、唤醒、等待等关系,这三个线程都是在软件启动后,与ECU板连接成功后,自动启动初始化,其中接收线程始终在运行监听,随时都在接收数据,根据数据的格式包头,判断是否为标志帧,若为标志帧,唤醒发送线程,发送线程继续工作,继续发送命令,若不是标志帧,一直接收数据。发送线程就是把用户的按钮操作转化为命令格式发送到下机位;最后数据统一通过界面线程图形化或者表格化显示到软件界面上;
2)利用建立的数据处理平台对ECU数据进行数据处理分析:
2.1)通讯线程中的发送线程接收来自转化用户按钮操作的通讯命令:
2.1.1)转化用户按钮操作为通讯命令,传递给发送线程;
2.1.2)发送线程对通讯命令进行解析,根据CAN2.0B扩展帧传输协议,下机位每发送一帧的有效数据仅为8字节,它将上机位的操作请求数据帧封装为下机位CAN协议规定的数据格式,向下机位发送;
2.1.3)当下机位按请求发送了所需数据时,设置一个长度为64字节的缓冲区,提取CAN数据帧中8字节的有效数据,填入该缓冲区中;当下机位发送完8帧数据,缓存填满后,再供上机位读取;
2.1.4)上机位则按帧接收数据,负责数据格式转换和数据传输、数据辨别以及图形显示。
2.1.5)对上机位所发送的ECU数据进行异或校验,接收数据采用的校验方式是校验和校验的方式;所述校验码包含64位二进制数,在发送线程中进行计算,并置于待发送数据帧的尾部;接收端根据所接收的数据帧重新计算校验码,并与发送端计算所得的校验码进行比较,如果相符,则校验通过;如果不相符,则认为发送数据出错,并丢弃该ECU数据。
2.2)通讯线程中的接收线程对发送线程所发送的通讯命令进行数据处理:
若下机位在规定的时间内没有收到来自上机位的命令请求,自动配置寄存器,跳转到flash地址0x22d74执行发动机程序;若下机位在规定的时间内收到上机位的命令请求,将步骤2.1)中发送线程发送的命令数据帧进行解析,提取数据帧的包头,并进行判断分析;若下机位在规定时间内收到来自上机位的命令请求,开始维护整板编程命令协议;根据命令头的含义不同,执行相应的命令处理程序,读取某段地址数据、写ECU数据或者修改ECU数据。
2.3)对步骤2.2)中的所接收数据帧进行校验和校验,接收端根据所接收的数据帧重新计算校验码,并与发送端计算所得的校验码进行比较,如果相符,则校验通过;如果不相符,则认为发送数据出错,并丢弃该数据。
继续参见图2,用户界面线程用于维护用户的数据显示,图形化显示来自下机位的ECU的参数,主要是对其进行解析,并进行格式化显示;而发送线程主要是把用户的命令请求进行统一的管理,转化为Can卡可读的命令格式,按照统一的类型发送给下机位;接收线程主要是负责管理来自下机位的不同数据;它们三个线程之间需要维护一个关系,比如同步、阻塞、唤醒、等待等关系,这三个线程都是在软件启动后,与ECU板连接成功后,自动启动初始化,其中接收线程始终在运行监听,随时都在接收数据,根据数据的格式包头,判断是否为标志帧,若为标志帧,唤醒发送线程,发送线程继续工作,继续发送命令,若不是标志帧,一直接收数据。发送线程就是把用户的按钮操作转化为命令格式发送到下机位;最后数据统一通过界面线程图形化或者表格化显示到软件界面上。
继续参见图3,下机位模块的工作流程:首先ECU板上电,初始化TB、ECU,然后等待来自上机位的通讯命令,并回复上机位的命令请求,比如是连接命令,回复命令后,若T<t,即在规定的时间内再未收到来自上机位的其他命令请求,自动配置寄存器,跳转到flash地址0x22d74执行发动机程序;若在规定时间内收到来自上机位的命令请求,开始维护整板编程命令协议,命令协议如下:
命令字0x0403:读取ECU某段数据内容;
命令字0x0402:写ECU数据;
命令字0x0401:修改ECU某段数据;
命令字0xEE:收到标志数据帧,表示写ECU数据完毕;
命令字0xDD:收到标志数据帧,表示修改ECU数据完毕;
命令字校验码:收到8字节校验码,表示接收某段ECU数据完毕;
即:上机位的发送线程转换用户的命令操作通过CAN卡发送下来的命令是16字节的,然后下机位程序解析命令包的含义,若命令字为0x0403就表示需要读取某段的数据内容,下一帧数据包就是要读取的数据段的起始地址,然后下机位程序就去执行相应的处理程序,把上机位要求的数据传送回到上机位,并且在该过程中,始终和用户有个交互的过程;若解析命令格式为0x0402,表示写ECU数据。
参见图1,本发明在提供一种汽车ECU的测控方法的同时,还提供了一种汽车ECU的测控***,该***包括上机位、下机位以及数据校验模块;上机位通过数据校验模块与下机位相连;上机位包括数据发送模块以及CAN卡通讯模块;数据发送模块包括用户界面线程、发送线程以及接收线程,用户界面线程通过发送线程接入接收线程,接收线程分别与发送线程和用户界面线程相连;发送线程和接收线程分别和上机位的CAN卡通讯模块相连;下机位包括数据接收模块以及数据处理模块;CAN卡通讯模块包括JNI驱动模块以及与其相连的CAN卡驱动单元。
具体而言,本发明所提供的***详细结构是:
1)***结构:MCS主要实现任意数据段的实时数据采集、数据海量存储、自动测量、在线数据修改、数据解析等功能。该测控***主要由上机位、数据发送模块、数据接收模块、错误校验模块、CAN卡通讯模块以及下机位5部分组成。***结构见图2。
2)CAN卡通讯模块:它主要包括JNI驱动以及CAN卡驱动单元,CAN通信模块可视为***的一个I/O字符流设备,它在完成普通收发功能的同时,还能实现驱动程序必备的设备无关性,即驱动程序应将所有的硬件特性封装起来,为使该设备的应用程序提供与硬件无关的、通用的编程接口,应用层程序编写人员无需了解设备的原理,即可顺利实现对设备的控制,通过该设备实现可靠的数据交换。另外,针对CAN通信和嵌入式***的实时性要求,该驱动程序要求收发数据代码可靠、延迟短、占用***时间短、中断执行时间短、关闭中断时间短、并在错误和发生异常情况下影响应用程序汇报。另外,该驱动程序需要监控CAN控制器的工作状态,在出现致命错误和脱离总线时,为CAN模块复位,并向***报告。
其中JNI驱动实现CAN卡驱动单元通讯的封装以及服务的调用。
测控软件的通讯主要实现数据的发送与接收,在本***中上层的应用主要是调用CAN卡驱动接口实现与底层ECU程序的通讯,在中间利用JAVA的JNI技术实现了CAN卡接口的封装,为上层应用提供更为简单直观的接口函数,做到风格统一,利用JAVA实现界面更为便捷迅速。
3)数据发送模块:基于CAN总线的ECU测控***的通讯采用主-从通信模式,主设备通过CAN总线与一个或多个从设备相连,其中主设备是测控***MCS,从设备是需要测控的ECU。根据协议,主设备首先与从设备通过CAN总线建立逻辑链接,连接成功后,主从机之间所有的数据传递均有主机控制,从机执行主机命令后返回包含命令响应值或错误代码等信息的报文。根据CAN2.0B扩展帧传输协议,下机位每发送一帧的有效数据仅为8字节,它将上机位的操作请求数据帧封装为下机位CAN协议规定的数据格式,向下发送。当下机位按请求发送了所需数据时,设置一个长度为64字节的缓冲区,提取CAN数据帧中8字节的有效数据,填入此缓冲区。当下机位发送完8帧数据,缓存填满后,再供上机位读取。上机位则按帧接收数据,负责数据格式转换和数据传输、数据辨别、图形显示等。
4)数据校验模块:由于通信过程中会受到不可预测因素的干扰,为了保证数据通信的可靠性,在数据发送过程中和数据发送完毕后都需要对通讯数据进行不同的校验方式。发送数据过程中采用的校验方式是异或校验的方式,接收数据采用的校验方式是校验和校验的方式。校验码包含64位二进制数,一般由发送端计算,并放置于待发送数据帧的尾部,接收端根据所接收的数据帧重新计算校验码,并与发送端计算所得的校验码进行比较,如果相符,则校验通过,否认为发送数据出错。
5)上机位:上机位采用Eclipse3.5.2+windowbuild完成测控软件上机位界面的设计以及与下机位的通信。上机位与下机位之间的通讯主要维护发送线程、接收线程和用户接收线程,这三个线程之间的关系流程图见图1。该软件***除了具有读取ECU数据功能外,还引入了实时监测功能,从而可以很快得到操作的返回信息。测控界面则是完成变量数据的显示、编辑修改以及上传下载功能。主要功能是进行数据的翻译,对ECU的变量进行物理显示,便于分析理解;并可以进行离线配置;实现ECU任意数据块读出功能:给出FLASH的起始地址和结束地址就可以读出FLASH的相应区域的数据。并将从flash据读出来的数据,以bin文件保存起来。这样可以将读出来的数据进行分析,有利于充分了解发动机的工作情况。同时可以将FLASH内部的程序读出来,并保存起来,可以下载到其他的ECU中。
6)下机位:底层ECU通过CAN驱动接口实现与上机位的通讯,做到数据的接收与发送,底层ECU的控制流程见图3。在这里考虑选择芯片的实际情况,选择FLASH的标定方法。
以Freescale公司专为汽车发动机控制研发的MPC555x的32位芯片为例,设计一款使用CAN总线可以对其进行解析以及修改变量的测控软件,该ECU芯片内部有2Mbytes Flash高可靠存储器,基于CAN总线通讯,可方便地与车辆网络***连接,具有优良的可扩展性。这是一款32位CPU以及0.25微米、高速、高性能5.0VFLASH存储器技术的中档芯片。该测控***主要由ECU、ECU控制模块、CAN通讯模块、测控软件平台4部分组成。CAN通信模块可视为***的一个I/O字符流设备,它在完成普通收发功能的同时,还能实现驱动程序必备的设备无关性,即驱动程序应将所有的硬件特性封装起来,为使该设备的应用程序提供与硬件无关的、通用的编程接口,应用层程序编写人员无需了解设备的原理,即可顺利实现对设备的控制,通过该设备实现可靠的数据交换。ECU测控***的通讯采用主-从通信模式,主设备通过CAN总线与一个或多个从设备相连,其中主设备是测控***MCS,从设备是需要测控的ECU。CAN总线通讯协议一般通过异或校验以及校验和校验两种方式进行数据的校验。发送数据过程中采用的校验方式是异或校验的方式,接收数据采用的校验方式是校验和校验的方式。上机位采用Eclipse3.5.2+windowbuild完成测控软件上机位界面的设计以及与下机位的通信。上机位与下机位之间的通讯主要维护发送线程、接收线程和用户接收线程,底层ECU通过CAN驱动接口实现与上机位的通讯,做到数据的接收与发送。CAN通讯模块将从ECU的CAN总线网络上获取的数据传递给PC机测控平台。MCS界面则提供一个友好的操作界面,方面监控、方便操作、减少操作的复杂性、增加***的通用性。
Claims (11)
1.一种汽车ECU的测控方法,其特征在于:所述汽车ECU的测控方法包括以下步骤:
1)建立ECU数据处理平台;
2)利用建立的数据处理平台对ECU数据进行数据处理分析。
2.根据权利要求1所述的汽车ECU的测控方法,其特征在于:所述步骤1)的具体实现方式是:
1.1)初始化CAN总线并启动CAN总线;
1.2)根据初始化后的CAN总线生成本地JNI库;
1.3)基于步骤1.2)所生成的本地JNI库建立发送线程以及接收线程两个通讯线程;所述ECU数据处理平台包括发送线程以及接收线程;所述发送线程用于对用户的命令请求进行统一的管理并转化为CAN卡可读的命令格式,按照统一的类型发送给下机位;所述接收线程用于负责管理和处理来自上机位的不同数据。
3.根据权利要求2所述的汽车ECU的测控方法,其特征在于:所述基于步骤1.2)所生成的本地JNI库还建立用户界面线程的通讯线程;所述用户界面线程用于获取用户通讯命令,维护用户的数据显示,图形化显示的ECU的参数,对ECU数据进行解析,并进行格式化显示。
4.根据权利要求3所述的汽车ECU的测控方法,其特征在于:所述步骤1.1)的具体实现方式是:
1.1.1)将ECU板通过CAN总线连接到PC机的CAN卡上;
1.1.2)初始化CAN总线;
1.1.3)上机位与下机位建立逻辑通讯关系,上下机位之间的所有ECU数据的传递均通过上机位进行控制;所述上机位与下机位建立逻辑通讯关系后自动启动CAN总线。
5.根据权利要求4所述的汽车ECU的测控方法,其特征在于:所述步骤1.2)的具体实现方式是:
根据初始化后的CAN总线并利用CAN卡的通讯接口生成本地JNI库。
6.根据权利要求5所述的汽车ECU的测控方法,其特征在于:所述步骤2)的具体实现方式是:
2.1)通讯线程中的用户界面线程将获取的通讯命令转发给发送线程;
2.2)通讯线程中的发送线程接收通讯命令,通过调用JNI库进行数据处理;
2.3)通讯线程中的接收线程对发送线程所发送的通讯命令进行数据处理。
7.根据权利要求6所述的汽车ECU的测控方法,其特征在于:所述步骤2.2)的具体实现方式是:
2.2.1)发送线程对通讯命令进行解析,根据CAN2.0B扩展帧传输协议,下机位每发送一帧的有效数据仅为8字节,它将上机位的操作请求数据帧封装为下机位CAN协议规定的数据格式,向下机位发送;
2.2.2)当下机位按请求发送了所需数据时,设置一个长度为64字节的缓冲区,提取CAN数据帧中8字节的有效数据,填入该缓冲区中;当下机位发送完8帧数据,缓存填满后,再供上机位读取;
2.2.3)上机位则按帧接收数据,负责数据格式转换和数据传输、数据辨别以及图形显示。
8.根据权利要求7所述的汽车ECU的测控方法,其特征在于:所述步骤2.2.3)之后还包括:
2.2.4)对上机位所发送的ECU数据进行异或校验,得到64位校验码;所述校验码包含64位二进制数,在发送线程中进行计算,并置于待发送数据帧的尾部。
9.根据权利要求7或8所述的汽车ECU的测控方法,其特征在于:所述步骤2.3)的具体实现方式是:
若下机位在规定的时间内没有收到来自上机位的命令请求,自动配置寄存器,跳转到flash地址0x22d74执行发动机程序;若下机位在规定的时间内收到上机位的命令请求,将步骤2.2)中发送线程发送的命令数据帧进行解析,提取数据帧的包头,并进行判断分析;若下机位在规定时间内收到来自上机位的命令请求,开始维护整板编程命令协议;根据命令头的含义不同,执行相应的命令处理程序,读取某段地址数据、写ECU数据或者修改ECU数据;
所述命令协议如下:
命令字0x0403:读取ECU某段数据内容;
命令字0x0402:写ECU数据;
命令字0x0401:修改ECU某段数据;
命令字0xEE:收到标志数据帧,表示写ECU数据完毕;
命令字0xDD:收到标志数据帧,表示修改ECU数据完毕;
命令字校验码:收到8字节校验码,表示接收某段ECU数据完毕;
即:上机位的发送线程转换用户的命令操作通过CAN卡发送下来的命令是16字节的,下机位程序解析命令包的含义,若命令字为0x0403就表示需要读取某段的数据内容,下一帧数据包就是要读取的数据段的起始地址,下机位程序就去执行相应的处理程序,把上机位要求的数据传送回到上机位,并且在该过程中,始终和用户有个交互的过程;若解析命令格式为0x0402,表示写ECU数据。
10.根据权利要求8所述的汽车ECU的测控方法,其特征在于:所述步骤2.3)之后还包括:
2.4)对步骤2.3)中的所接收数据帧进行校验和校验,接收端根据所接收的数据帧重新计算校验码,并与发送端计算所得的校验码进行比较,如果相符,则校验通过;如果不相符,则认为发送数据出错,并丢弃该数据。
11.一种汽车ECU的测控***,其特征在于:所述汽车ECU的测控***包括上机位、下机位以及数据校验模块;所述上机位通过数据校验模块与下机位相连;所述上机位包括数据发送模块以及CAN卡通讯模块;所述数据发送模块包括用户界面线程、发送线程以及接收线程,所述用户界面线程通过发送线程接入接收线程,所述接收线程分别与发送线程和用户界面线程相连;所述发送线程和接收线程分别和上机位的CAN卡通讯模块相连;所述下机位包括数据接收模块以及数据处理模块;所述CAN卡通讯模块包括JNI驱动模块以及与其相连的CAN卡驱动单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102475355A CN102955474A (zh) | 2011-08-26 | 2011-08-26 | 一种汽车ecu的测控方法及其*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102475355A CN102955474A (zh) | 2011-08-26 | 2011-08-26 | 一种汽车ecu的测控方法及其*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102955474A true CN102955474A (zh) | 2013-03-06 |
Family
ID=47764395
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011102475355A Pending CN102955474A (zh) | 2011-08-26 | 2011-08-26 | 一种汽车ecu的测控方法及其*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102955474A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103513651A (zh) * | 2013-09-27 | 2014-01-15 | 潍柴动力股份有限公司 | 一种ecu数据检测方法及装置 |
CN103699115A (zh) * | 2013-12-13 | 2014-04-02 | 深圳市道通科技有限公司 | 汽车通信数据传输的方法及装置 |
CN103812944A (zh) * | 2014-02-26 | 2014-05-21 | 安徽安凯汽车股份有限公司 | 一种用于电动汽车ecu的远程更新***及方法 |
CN104483960A (zh) * | 2014-11-10 | 2015-04-01 | 深圳市元征科技股份有限公司 | 一种汽车诊断通信模块数据收发并行处理的方法 |
CN107644563A (zh) * | 2017-04-28 | 2018-01-30 | 天津职业技术师范大学 | 基于图形化编程的汽车电子综合训练平台 |
CN108306926A (zh) * | 2017-11-30 | 2018-07-20 | 深圳市科列技术股份有限公司 | 一种车联网设备网关业务数据的推送方法和装置 |
CN109035487A (zh) * | 2018-08-03 | 2018-12-18 | 北京理工大学 | 一种发动机历史数据回读与处理*** |
CN109359071A (zh) * | 2018-10-29 | 2019-02-19 | 四川爱联科技有限公司 | 模块之间数据通信的方法 |
CN109525363A (zh) * | 2018-09-29 | 2019-03-26 | 深圳市元征科技股份有限公司 | 数据传输方法及装置 |
CN113098746A (zh) * | 2021-03-31 | 2021-07-09 | 三一汽车起重机械有限公司 | 作业机械can总线通信方法和装置 |
CN113805551A (zh) * | 2020-06-11 | 2021-12-17 | 卓品智能科技无锡有限公司 | 一种高效便捷的汽车故障诊断管理***开发的信息管理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1562654A (zh) * | 2004-03-26 | 2005-01-12 | 清华大学 | 基于ccp协议的混合动力电动汽车控制器标定方法 |
CN1747472A (zh) * | 2005-10-17 | 2006-03-15 | 浙江大学 | 基于ccp协议的嵌入式通用标定装置及方法 |
CN101334662A (zh) * | 2008-07-25 | 2008-12-31 | 重庆邮电大学 | 基于asap标准的汽车电控单元标定***及方法 |
CN101414188A (zh) * | 2008-12-03 | 2009-04-22 | 重庆邮电大学 | 基于ccp协议的汽车abs ecu在线标定***和标定方法 |
CN103019111A (zh) * | 2011-09-21 | 2013-04-03 | 日立汽车***株式会社 | 汽车用电子控制装置及程序的执行方法 |
-
2011
- 2011-08-26 CN CN2011102475355A patent/CN102955474A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1562654A (zh) * | 2004-03-26 | 2005-01-12 | 清华大学 | 基于ccp协议的混合动力电动汽车控制器标定方法 |
CN1747472A (zh) * | 2005-10-17 | 2006-03-15 | 浙江大学 | 基于ccp协议的嵌入式通用标定装置及方法 |
CN101334662A (zh) * | 2008-07-25 | 2008-12-31 | 重庆邮电大学 | 基于asap标准的汽车电控单元标定***及方法 |
CN101414188A (zh) * | 2008-12-03 | 2009-04-22 | 重庆邮电大学 | 基于ccp协议的汽车abs ecu在线标定***和标定方法 |
CN103019111A (zh) * | 2011-09-21 | 2013-04-03 | 日立汽车***株式会社 | 汽车用电子控制装置及程序的执行方法 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103513651A (zh) * | 2013-09-27 | 2014-01-15 | 潍柴动力股份有限公司 | 一种ecu数据检测方法及装置 |
CN103513651B (zh) * | 2013-09-27 | 2016-02-10 | 潍柴动力股份有限公司 | 一种ecu数据检测方法及装置 |
CN103699115A (zh) * | 2013-12-13 | 2014-04-02 | 深圳市道通科技有限公司 | 汽车通信数据传输的方法及装置 |
CN103812944A (zh) * | 2014-02-26 | 2014-05-21 | 安徽安凯汽车股份有限公司 | 一种用于电动汽车ecu的远程更新***及方法 |
CN104483960A (zh) * | 2014-11-10 | 2015-04-01 | 深圳市元征科技股份有限公司 | 一种汽车诊断通信模块数据收发并行处理的方法 |
CN104483960B (zh) * | 2014-11-10 | 2017-04-19 | 深圳市元征科技股份有限公司 | 一种汽车诊断通信模块数据收发并行处理的方法 |
CN107644563A (zh) * | 2017-04-28 | 2018-01-30 | 天津职业技术师范大学 | 基于图形化编程的汽车电子综合训练平台 |
CN108306926A (zh) * | 2017-11-30 | 2018-07-20 | 深圳市科列技术股份有限公司 | 一种车联网设备网关业务数据的推送方法和装置 |
CN109035487A (zh) * | 2018-08-03 | 2018-12-18 | 北京理工大学 | 一种发动机历史数据回读与处理*** |
CN109525363A (zh) * | 2018-09-29 | 2019-03-26 | 深圳市元征科技股份有限公司 | 数据传输方法及装置 |
CN109359071A (zh) * | 2018-10-29 | 2019-02-19 | 四川爱联科技有限公司 | 模块之间数据通信的方法 |
CN113805551A (zh) * | 2020-06-11 | 2021-12-17 | 卓品智能科技无锡有限公司 | 一种高效便捷的汽车故障诊断管理***开发的信息管理方法 |
CN113098746A (zh) * | 2021-03-31 | 2021-07-09 | 三一汽车起重机械有限公司 | 作业机械can总线通信方法和装置 |
CN113098746B (zh) * | 2021-03-31 | 2022-05-03 | 三一汽车起重机械有限公司 | 作业机械can总线通信方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102955474A (zh) | 一种汽车ecu的测控方法及其*** | |
CN108228513B (zh) | 一种基于fpga架构的智能串口通讯装置 | |
CN103714029B (zh) | 新型二线同步通信协议及应用 | |
US9552279B2 (en) | Data bus network interface module and method therefor | |
CN105404538A (zh) | 一种fpga的加载和升级目标代码的装置及方法 | |
CN104238517B (zh) | 一种profibus-dpv1通信主站的通信方法 | |
CN102637453B (zh) | 一种包括串行输入输出接口的相变存储器 | |
CN102787932A (zh) | 基于串行通信的电控柴油发动机匹配标定装置和方法 | |
CN102033540B (zh) | 一种测试can总线汽车仪表的测试***及方法 | |
CN101013315A (zh) | 基于全数字环形总线式通用型数控*** | |
CN201374062Y (zh) | Fpga在线配置电路 | |
CN101763324B (zh) | 设备模拟的实现方法和装置 | |
CN105718396A (zh) | 一种大数据主设备传输的i2c总线装置及其通讯方法 | |
CN112579506A (zh) | Bios与bmc通信的方法、bios、bmc和服务器 | |
CN116185499B (zh) | 寄存器数据传输方法、寄存器缓存模块、智能设备和介质 | |
CN200997073Y (zh) | 基于全数字环形总线式通用型数控*** | |
WO2014027223A1 (en) | Data bus network interface module and method therefor | |
CN113377404A (zh) | 一种新能源车域控制器安全监控芯片程序更新方法及*** | |
CN115373919A (zh) | 一种soc调试方法、***、电子设备及存储介质 | |
CN111679995B (zh) | 一种基于1553b总线的空间计算机嵌入式管理执行单元 | |
CN110687857B (zh) | 一种双cpu冗余互备智能驱动器主控板 | |
CN116432574B (zh) | 一种fpga配置控制器自动回读flash数据方法及装置 | |
CN110032085A (zh) | 一种适用于专用处理器的多调试模式电路及其监测仿真方法 | |
CN109871281B (zh) | 一种基于inSE安全芯片的数据交互方法和装置 | |
CN111273941B (zh) | 一种船用控制*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130306 |