《一种汽车控制器的引导启动方法以及汽车控制器.pdf》由会员分享,可在线阅读,更多相关《一种汽车控制器的引导启动方法以及汽车控制器.pdf(10页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN102314363A43申请公布日20120111CN102314363ACN102314363A21申请号201110212056X22申请日20110727G06F9/44520060171申请人深圳市航盛电子股份有限公司地址518000广东省深圳市宝安区福永镇和平村福园一路72发明人李永坚陈小江邱林朱刚阳刘金强74专利代理机构深圳市科吉华烽知识产权事务所44248代理人胡吉科罗志强54发明名称一种汽车控制器的引导启动方法以及汽车控制器57摘要本发明适用于汽车控制器领域,提供了一种汽车控制器的引导启动方法以及汽车控制器,所述方法包括以下步骤在上电或复位后,在设定的时间T内。
2、检测是否收到上位机发送的刷新请求;如果没有收到刷新请求则检测应用程序是否完整,当完整时跳转到应用程序;如果收到刷新请求则发送应答确认消息给上位机,并跳转到消息处理模块,由消息处理模块从上位机获取刷新数据并执行对应用程序或引导程序的刷新。在本发明的实施例中,通过采用新的引导方式,解决由于汽车控制器在升级目标应用程序的过程中掉电、升级目标应用程序完成后程序不完善、目标应用程序禁用了引导装载程序与上位机的通信接口等问题,导致无法再度升级程序的问题。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书1页说明书4页附图4页CN102314367A1/1页21一种汽车控制器的引导启动。
3、方法,其特征在于,所述方法包括以下步骤在上电或复位后,在设定的时间T内检测是否收到上位机发送的刷新请求;如果没有收到刷新请求则检测应用程序是否完整,当完整时跳转到应用程序;如果收到刷新请求则发送应答确认消息给上位机,并跳转到消息处理模块,由消息处理模块从上位机获取刷新数据并执行对应用程序或引导程序的刷新。2根据权利要求1所述的汽车控制器的引导启动方法,其特征在于,在设定的时间T内检测是否收到上位机发送的刷新请求的步骤之前还包括发送引导启动指示给上位机。3根据权利要求1所述的汽车控制器的引导启动方法,其特征在于,所述刷新请求是指定ID的UDS或KWP2000协议的服务请求消息,或者是包含设备型号。
4、或设备地址的一条特殊请求消息。4一种汽车控制器的引导启动程序,其特征在于,所述引导程序包括刷新请求检测模块,用于在上电或复位后,在设定的时间T内检测是否收到上位机发送的刷新请求;完整性检测模块,用于如果没有收到刷新请求则检测应用程序是否完整,当完整时跳转到应用程序;应答跳转模块,用于如果收到刷新请求则发送应答确认消息给上位机,并跳转到消息处理模块;以及消息处理模块,用于从上位机获取刷新数据并执行对应用程序或引导程序的刷新。5根据权利要求4所述的汽车控制器的引导启动程序,其特征在于,所述引导启动程序包括引导启动指示发送模块,用于发送引导启动指示给上位机。6根据权利要求4所述的汽车控制器的引导启动。
5、程序,其特征在于,所述刷新请求是指定ID的UDS或KWP2000协议的服务请求消息,或者是包含设备型号或设备地址的一条特殊请求消息。7一种汽车控制器,其特征在于,所述汽车控制器采用权利要求46中任一项所述的引导启动程序。权利要求书CN102314363ACN102314367A1/4页3一种汽车控制器的引导启动方法以及汽车控制器技术领域0001本发明属于汽车控制器领域,尤其涉及一种汽车控制器的引导启动方法以及汽车控制器。背景技术0002汽车控制器(或称ECU,电控单元)一般包括MCU(电机控制器)、VCU(或称VMS,整车控制器)、BCM(车身控制器)以及BMS(电池管理系统)等。0003随着。
6、应用的变化,汽车控制器的引导装载程序(BOOTLOADER)及其上位机软件需要更新。在升级汽车控制器的目标应用程序(APPLICATION)的过程中,若发生掉电、需升级的目标应用程序不完善或受损、目标应用程序禁用引导装载程序使用的通信接口等情况时,会导致汽车控制器失效,并无法再次升级目标应用程序。另外发生上述情况时,可能需要拆卸、更换汽车控制器。因此,提高引导装载程序的安全性和可靠性,一直是汽车控制器研发人员备受关注的研究课题。0004安全可靠的引导装载程序可以避免在升级目标应用程序时或升级目标应用程序完成后,由于各种不确定因素导致汽车控制器无法执行目标程序或无法再度升级目标应用程序的风险。另。
7、外,还可以避免发生上述情况时拆卸、更换汽车控制器的风险,在一定程度上还可以提高汽车控制器开发设计过程中的效率。发明内容0005本发明实施例的目的在于提供一种汽车控制器的引导装载程序,旨在解决由于汽车控制器在升级目标应用程序的过程中掉电、升级目标应用程序完成后程序不完善、目标应用程序禁用了引导装载程序与上位机的通信接口等问题,导致无法再度升级目标应用程序的问题。0006本发明实施例是这样实现的,一种汽车控制器的引导启动方法,所述方法包括以下步骤在上电或复位后,在设定的时间T内检测是否收到上位机发送的刷新请求;如果没有收到刷新请求则检测应用程序是否完整,当完整时跳转到应用程序;如果收到刷新请求则发。
8、送应答确认消息给上位机,并跳转到消息处理模块,由消息处理模块从上位机获取刷新数据并执行对应用程序或引导程序的刷新。0007进一步地,在设定的时间T内检测是否收到上位机发送的刷新请求的步骤之前还包括发送引导启动指示给上位机进一步地,所述刷新请求是指定ID的UDS或KWP2000协议的服务请求消息,或者是包含设备型号或设备地址的一条特殊请求消息。0008本发明实施例的另一目的在于提供一种汽车控制器的引导启动程序,所述引导程序包括说明书CN102314363ACN102314367A2/4页4刷新请求检测模块,用于在上电或复位后,在设定的时间T内检测是否收到上位机发送的刷新请求;完整性检测模块,用于。
9、如果没有收到刷新请求则检测应用程序是否完整,当完整时跳转到应用程序;应答跳转模块,用于如果收到刷新请求则发送应答确认消息给上位机,并跳转到消息处理模块;以及消息处理模块,用于从上位机获取刷新数据并执行对应用程序或引导程序的刷新。0009进一步地,所述引导启动程序包括引导启动指示发送模块,用于发送引导启动指示给上位机。0010进一步地,所述刷新请求是指定ID的UDS或KWP2000协议的服务请求消息,或者是包含设备型号或设备地址的一条特殊请求消息。0011本发明实施例的另一目的在于提供一种汽车控制器,所述汽车控制器采用上述任一项所述的引导启动程序。0012在本发明的实施例中,通过采用新的引导方式。
10、,解决由于汽车控制器在升级目标应用程序的过程中掉电、升级目标应用程序完成后程序不完善、目标应用程序禁用了引导装载程序与上位机的通信接口等问题,导致无法再度升级目标应用程序的问题。附图说明0013图1是本发明第一实施例提供的引导启动方法的实施流程;图2是本发明第二实施例提供的引导启动方法的实施流程;图3是本发明第三实施例提供的引导启动方法的实施流程;图4是本发明实施例提供的汽车控制器的软件模块结构示意图。具体实施方式0014为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。00。
11、15图1示出了本发明第一实施例提供的引导启动方法的实施流程,详述如下在步骤S101中,汽车控制器进行上电或复位。0016在步骤S102中,汽车控制器进行常规初始化。0017在步骤S103中,检测是否收到上位机发送的刷新请求。当未收到刷新请求时,执行步骤S104。当收到刷新请求时,执行步骤S105。0018在步骤S104中,判断是否等待超时,也即判断是否达到设定的等待时间T。为了避免长期检测刷新请求,可以设定一刷新等待时间T(如10MS),从而可以适当缩减启动时间。如果等待超时,则执行步骤S106;否则返回步骤S103,即继续检测刷新请求。0019在步骤S105中,发送应答确认消息给上位机,并跳。
12、转至步骤S108。这样,以便让上位机准备配合对应用程序进行刷新。0020在步骤S106中,判断应用程序是否完整。如果应用程序完整,则执行步骤S107;否则执行步骤S108。说明书CN102314363ACN102314367A3/4页50021在步骤S107中,跳转到应用程序。0022在步骤S108中,由消息处理模块从上位机获取刷新程序并执行对应用程序的刷新。0023也就是说,上电或复位并初始化完成后,BOOTLOADER(汽车控制器的引导启动程序)首先作一个指定时间(如10MS)的循环检测,该时间内,若检测到有刷新请求(或进入BOOTLOADER刷新模式请求)则一直运行在BOOTLOADER。
13、。否则,指定时间过后没有检测到刷新请求,则检测目标应用程序是否完整,并根据应用程序的完整性,跳转到应用程序或停留在BOOTLOADER。0024图2示出了本发明第二实施例提供的引导启动方法的实施流程,详述入下在步骤S201中,汽车控制器进行上电或复位。0025在步骤S202中,汽车控制器进行常规初始化。0026在步骤S203中,判断应用程序是否完整。0027在步骤S204中,当完整时,置应用程序完整性标识。0028在步骤S205中,当不完整时,清除应用程序完整性标识。0029在步骤S206中,由消息处理模块从上位机获取消息并执行对应的消息处理(如刷新请求,程序下载等)。在该步骤S206中,内嵌。
14、了刷新请求的检测过程。其内嵌的过程分析已有周期任务和复位刷新请求有效时间之间的关系。若与某个周期任务相等,则将“应用程序完整性”和“刷新请求”检测和应用程序跳转(应用程序完整,刷新请求无效时)的功能添加到该周期任务中,否则,新增实现该功能的周期任务。0030在步骤S207中,跳转到应用程序。0031本发明第二实施例为内嵌式检测,上电或复位并初始化完成后,BOOTLOADER首先检测应用程序是否完整,并置应用程序完整标志位(APPLICATIONINTEGRITYFLAG)为相应状态,然后执行BOOTLOADER常规任务,并在常规任务中内嵌“是否收到刷新请求”的检测,并置刷新请求有效标志位(RE。
15、FRESHPROGRAMREQUESTFLAG)为相应状态。在指定的周期调度(如10MS周期任务)中判断是否同时满足两个条件应用程序完整且没有收到有效刷新请求。若条件满足,则跳转到应用程序。否则,继续运行BOOTLOADER。0032本发明第二实施例与第一实施例基本类似,其主要区别在于将复位请求的检测过程内嵌于消息处理模块。0033图3示出了本发明第三实施例提供的引导启动方法的实施流程。在上电或复位并初始化完成后,BOOTLOADER主动向外发送一条消息,在指定的时间内(如10MS)收到正确的应答,则停留在BOOTLOADER。否则,若没有收到应答确认,则进行应用程序完整性检测,此时,若应用程。
16、序完整,则跳转到应用程序,否则依然停留在BOOTLOADER。0034其中,第3中方案不适用于UDS(ISO14229),KWP2000(ISO14230),CCP等协议设计的BOOTLOADER。0035在实现上述方案时,需要上位机刷新软件的配合。此外,当应用程序完整,且不需要刷新应用程序时,从控制器上电或复位到跳转至APPLICATION之间的停留时间不宜过长,建议控制在10MS至100MS之间。0036此外按照本发明设计的BOOTLOADER,是可以兼容常规的刷新流程的。例如,使用UDS并按照本设计的BOOTLOADER,其上位机的刷新流程,既可以使用UDS常规刷新流程,也说明书CN10。
17、2314363ACN102314367A4/4页6可以使用本发明提出的刷新流程。0037总体而言,对于设计本发明所阐述的BOOTLOADER,无论使用那种方式去实现,首先要确定一条特殊的消息,用来指示,上位机程序请求刷新应用程序。这条消息还可以包含设备型号或设备地址的确认信息。0038为了避免汽车控制器通之间正常通信的干扰,通常指定的这条消息,在汽车控制器的通信网络间不应该出现(或需要避免出现)的消息。以UDSISO14229或KWP2000ISO14230为例,可以使用10HEX服务请求进入刷新模式,也可以使用34HEX服务进行刷新请求,还可以使用31HEX服务使用自定义的例程。对于ISO1。
18、4229协议,推荐使用10HEX和31HEX服务,不推荐使用34HEX服务。因为,34HEX服务通常是一条需要安全认证确认后才能响应的服务。这样,使用34HEX,相当于使用了27HEX和34HEX服务同时作为上位机请求BOOTLOADER刷新程序的依据。从而在一定程度上加大了检测刷新程序所需要的延时时间,降低了控制器的启动速度。0039目前,大部分汽车控制器都是使用CAN网络做为整个汽车各控制器之间的主通信网络。常用的两种刷新方式,一种是基于CCP标定的刷新,另外一种是基于UDS或KWP2000的刷新。控制器下线后,通常会卸载CCP功能。所以,控制器量产后,在BOOTLOADER中,最常见的就。
19、是基于UDS或者是KWP2000的刷新功能。0040图4示出了本发明实施例提供的一种汽车控制器的软件结构模块,该汽车控制器软件包括一引导启动程序,所述引导程序采用三层或两层软件架构通信层、网络协议层(可选,当应用层基于UDS或KWP2000时必选)、应用层。其中,应用层包括刷新请求检测模块,用于在上电或复位后,在设定的时间T内检测是否收到上位机发送的刷新请求;完整性检测模块,用于如果没有收到刷新请求则检测应用程序是否完整,当完整时跳转到应用程序;应答跳转模块,用于如果收到刷新请求则发送应答确认消息给上位机,并跳转到消息处理模块;以及消息处理模块,用于从上位机获取刷消息序并执行对应用程序或引导启。
20、动程序的刷新。0041所述引导启动程序还包括引导启动指示发送模块,用于发送引导启动指示给上位机在本发明的实施例中,所述刷新请求为一条引导程序使用ID的基于UDS或KWP2000的请求服务或一条引导程序指定的包含设备型号或设备地址的特殊消息。0042以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。说明书CN102314363ACN102314367A1/4页7图1说明书附图CN102314363ACN102314367A2/4页8图2说明书附图CN102314363ACN102314367A3/4页9图3说明书附图CN102314363ACN102314367A4/4页10图4说明书附图CN102314363A。