发送给硬件刷写工具,以使硬件刷写工具将对应的程序文件刷入对应的控制器中。
[0062]在上位机软件上显示控制器列表界面后,在接收到用户查看某个控制器的配置文件的指令时,上位机软件展开显示对应的控制器的配置文件的内容,对于每个控制器来说,每个控制器的配置文件内容包括驱动文件(即为刷写过程的驱动文件)、程序文件、刷新选项文件、刷写程序文件(即刷写流程规范的文件)和外部文件路径文件、CRC校验文件和安全访问控制文件。其中,外部文件路径文件支持打开本机目录,选择驱动文件和数据文件,下次打开软件,路径自动显示在界面上,无需再次配置。
[0063]其中,驱动文件、程序文件、刷新选项文件、刷写程序文件是实现对控制器程序进行刷写所必须的文件。外部文件路径文件、CRC校验文件和安全访问控制文件是可选的文件。
[0064]需要理解的是,每个控制器的配置文件内容是预先导入至上位机软件中的。
[0065]其中,上位机软件上显示的刷新选项的配置界面,如图3所示。通过图3可以看出,用户可对设置刷新硬件的波特率、通道、E⑶(控制器)的物理寻址ID、功能寻址ID及响应ID,其中,在用户将配置界面中的相关选项进行配置后,对应的内容将被保存至刷新选项文件中,需要理解的是,在第一次使用该上位机软件时,用户需要对控制器的上述信息进行配置,当用户再次使用该上位机软件对同一车型的车辆刷写程序的过程时,参数自动显示在配置界面中,用户无需重新配置,减少了用户重新配置参数的时间,进而可提高向控制器刷写程序的效率。
[0066]另外,需要说明的是,该上位机软件还对用户的权限进行管理,在研发权限下,支持设置刷新硬件的波特率、通道、E⑶的物理寻址ID、功能寻址ID及响应ID;在售后权限下,仅支持设置刷新硬件的波特率和通道。另外,该上位机软件还支持在配置文件以外的路径下,选择驱动文件及数据文件。
[0067]需要理解的是,在整车生产的过程,或者售后服务的过程中,为了避免刷写混乱,并不是所有的终端均可以安装该上位机软件,只有被授权且与该上位机软件所支持的硬件条件相匹配的终端可以安装该上位机软件。
[0068]其中,在向控制器刷写程序的过程中,上位机软件上还提供状态监控及报文记录的界面,如图4所示,通过图4可以看出,刷新过程中支持显示刷新进度、通信日志及通信报文,通信报文格式需存储为.asc格式,并可应用Vector工具追溯。
[0069]S2,终端接收汽车控制器组通过硬件刷写工具发送的汽车控制器组的基础信息,并根据基础信息获取汽车控制器组中相应的控制器所对应的程序文件。
[0070]其中,上述基础信息可以包括控制器的型号信息、硬件标识码、硬件版本和软件版本等信息。
[0071]具体地,在终端与硬件刷写工具进行通信的过程中,终端可向硬件刷写工具获取汽车控制器组中的基础信息的指令,硬件刷写工具从汽车控制器组中读取各个控制器的基础信息,并将所获取到的基础信息发送给终端,终端根据获取到的基础信息确定出每个控制器对应的程序文件。
[0072]S3,终端向硬件刷写工具发送程序文件,以使硬件刷写工具将程序文件刷写至汽车控制器组中相应的控制器中。
[0073]具体地,在终端中的上位机软件根据控制器组的基础信息确定出每个控制器的程序文件后,由于车辆中包含多个控制器,通常上位机软件会预先定义一个刷写控制器程序的顺序,然后,上位机软件按照这个顺序控制硬件刷写工具将对应的程序文件刷写至对应的控制器中。
[0074]其中,程序文件的格式包括HEX文件、S19文件、BIN文件和MOT文件。由于不同的控制器所支持的程序文件的格式不同,因此,终端中的上位机软件在获得控制器组的基础信息后,终端中的上位机软件可根据基础信息确定每个程序所支持的程序文件的格式,并将对应格式的程序文件刷写至对应的控制器中。
[0075]需要理解的是,该汽车控制器的程序刷写方法不仅适用于向控制器刷写程序,还可以用于对控制器的程序进行更新。
[0076]在本发明的一个实施例中,在控制器中包含程序后,终端还可以获取控制器中的程序版本信息,并确定该程序版本信息与终端中提供的该控制器对应的程序版本信息是否相同,若不相同,则终端控制硬件刷写工具将终端中的程序版本所对应的程序文件刷写至对应的控制器中,以更新该控制器中的程序,以使控制器运行更加稳定,进而可为提供更加稳定的服务。
[0077]为了保证程序文件的安全,在向上位机软件导入文件例如控制器的程序文件时,如果上位机软件监控到程序文件被加密了,此时,上位机软件基于预先设置的密钥对已加密的程序文件进行自动解密,并将解密后的程序文件进行存储。其中,需要说明的是,上位机软件中的密钥是根据实际情况进行预先标定的。
[0078]在使用具有上位机软件的终端的过程中,有时需要向上位机软件导入一些文件例如刷写流程文件、程序文件,在向上位机软件导入文件的过程中,如果上位机软件监控到当前文件是以压缩包的形式进行导入,则上位机软件还可以自动对压缩包进行解压,并存储解压后的程序文件。
[0079]需要理解的是,在用户从上位机软件导出一些文件例如通信日志的过程中,可自动将要导出的文件压缩并导出,或者根据用户的压缩请求对导出的文件进行压缩并导出。
[0080]根据本发明实施例的汽车控制器的程序刷写方法,终端获取与硬件刷写工具对应的通信协议,并根据通信协议与硬件刷写工具进行通信,以及接收汽车控制器组通过硬件刷写工具发送的汽车控制器组的基础信息,并根据汽车控制器组的基础信息获取汽车控制器组中相应的控制器所对应的程序文件,并控制硬件刷写工具将对应的程序文件刷写至控制器组中相应的控制器中,由此,方便用户对汽车控制器的程序进行刷写或者更新,减少刷写车辆所有控制器的程序所消耗的时间,提高程序刷写效率,进而可提高整车生产效率。
[0081]为了实现上述实施例,本发明还提出了一种汽车控制器的程序刷写装置。
[0082]图5是根据本发明一个实施例的汽车控制器的程序刷写装置的结构示意图。
[0083]如图5所示,该汽车控制器的程序刷写装置可以包括第一获取模块210、通信模块220、接收模块230、第二获取模块240和发送模块250,其中:
[0084]第一获取模块210用于获取硬件刷写工具的通信协议。
[0085]通信模块220用于根据通信协议与硬件刷写工具进行通信。
[0086]接收模块230用于接收汽车控制器组通过硬件刷写工具发送的汽车控制器组的基础信息。
[0087]其中,上述基础信息可以包括控制器的型号信息、硬件标识码、硬件版本和软件版本等信息。
[0088]第二获取模块240用于根据基础信息获取汽车控制器组中相应的控制器所对应的程序文件。
[0089]其中,程序文件的格式包括HEX文件、S19文件、BIN文件和MOT文件。由于不同的控制器所支持的程序文件的格式不同,因此,第二获取模块240在获得控制器组的基础信息后,第二获取模块240可根据基础信息确定每个程序所支持的程序文件的格式,并将对应格式的程序文件刷写至对应的控制器中。
[0090]发送模块250用于向硬件刷写工具发送程序文件,以使硬件刷写工具将程序文件刷写至汽车控制器组中相应的控制器中。
[0091]上述获取模块210,具体用于:获取硬件刷写工具的型号信息,并根据型号信息确定硬件刷写工具所支持的通信协议,并获取通信协议。
[0092]其中,上述硬件刷写工具可以为PCAN-USB硬件刷写工具、英特佩斯硬件刷写工具、Kvaser硬件刷写工具、Vector硬件刷写工具和周立功硬件刷写工具等硬件刷写工具中的一种。
[0093]需要说明的是,前述对汽车控制器的程序刷写系统以及方法实施例的解释说明也适用于该实施例的汽车控制器的程序刷写装置,其实现原理类似,此不不再赘述。
[0094]根据本发明实施例的汽车控制器的程序刷写装置,通过第一获取模块获取与硬件刷写工具对应的通信协议,