一种程序升级的应用系统和方法

文档序号:6534933阅读:155来源:国知局
一种程序升级的应用系统和方法
【专利摘要】本发明是关于一种程序升级的应用系统,其是基于飞思卡尔HCS08系列单片机CAN总线的程序升级的应用系统,包括N(N≥1)个HCS08系列单片机系统模块、CAN转换器和上位机;其中,上述的N个HCS08系列单片机系统模块通过CAN总线分别与CAN转换器连接,该CAN转换器又与上位机连接。借由本发明,可以方便在现场不需要拆卸设备只需通过计算机或其他带CAN总线的设备利用CAN总线对产品进行程序升级,它支持对连接在CAN总线上的多个设备通过地址区分进行选择性升级而不影响其他模块的正常运行。
【专利说明】一种程序升级的应用系统和方法【技术领域】
[0001]本发明涉及一种程序升级的应用系统和方法,特别是涉及一种基于飞思卡尔HCS08系列单片机CAN总线的程序升级的应用系统和方法。
【背景技术】
[0002]目前,飞思卡尔HCS08系列单片机在越来越多的汽车电子和其他电子产品上使用,但在使用过程中这些电子产品需要进行漏洞升级或功能增加时不可避免的需要对其程序进行一些升级,但当这些产品安装完毕或已经投入使用时,将他们拆开进行升级后再安装回去是一件非常困难的事情,而且需要一些特定的编程工具如飞思卡尔单片机的特有的BDM编程工具。
[0003]同时,控制器局域网CAN(Controller Area Network)总线由于其优秀的抗干扰能力和灵活的使用性,在汽车电子中的使用越来越普遍,通过这条总线我们可以很方便的与挂在总线上的设备进行通信。因此,借由CAN总线,可以对飞思卡尔的HCS08系列单片机的应用程序进行升级 。

【发明内容】

[0004]本发明的目的在于提供一种程序升级的应用系统和方法,其是基于飞思卡尔HCS08系列单片机CAN总线的程序升级的应用系统和方法,方便在现场不需要拆卸设备只需通过计算机或其他带CAN总线的设备利用CAN总线对产品进行程序升级,它支持对连接在CAN总线上的多个设备通过地址区分进行选择性升级而不影响其他模块的正常运行。
[0005]本发明的目的是采用以下技术方案来实现的。本发明提出一种程序升级的应用系统,其是基于飞思卡尔HCS08系列单片机CAN总线的程序升级的应用系统,包括N (N≥I)个HCS08系列单片机系统模块、CAN转换器和上位机;其中,上述的N个HCS08系列单片机系统模块通过CAN总线分别与CAN转换器连接,该CAN转换器又与上位机连接。
[0006]本发明的目的还可采用以下技术措施进一步实现。
[0007]前述的程序升级的应用系统,其中该HCS08系列单片机系统模块包括引导程序区、应用程序区、程序标志区及程序备份区。
[0008]本发明的目的还采用以下技术方案来实现的。本发明还提出一种应用权利要求1所述的应用系统程序升级的方法,其是基于飞思卡尔HCS08系列单片机CAN总线的程序升级的应用系统,包括以下步骤:多个HCS08系列单片机系统模块开始工作,运行引导程序,引导程序会首先判断是不是需要进行程序更新:如果需要进行程序更新或升级时,引导程序将把程序备份区的程序写入到应用程序区,然后在程序标志区写入程序版本、程序有效标志及效验和信息,写入成功后运行应用程序;如果不需要进行程序更新或升级时,引导程序会在程序标志区载入程序版本及程序有效标志并检验效验和,如果程序有效并且效验和正确,系统运行应用程序;在运行应用程序的时候,该HCS08系列单片机系统模块接收上位机传送的更新或需升级的程序,进行程序升级:首先判断是否是对本地址的设备进行升级,如果是,该HCS08系列单片机系统模块将会把接收到的程序升级数据放入程序备份区,当接收完所有的升级数据后,应用程序会对升级数据进行CRC校验并和接收到的校验帧进行对比,如果校验成功则写入应用程序更新标志并复位,系统复位后会进入引导程序并检查程序更新标志并更新程序。
[0009]借由上述技术方案,本发明的一种程序升级的应用系统和方法至少具有下列优点及有益效果:借由本发明,可以方便在现场不需要拆卸设备只需通过计算机或其他带CAN总线的设备利用CAN总线对产品进行程序升级,它支持对连接在CAN总线上的多个设备通过地址区分进行选择性升级而不影响其他模块的正常运行。
[0010]上述说明仅是本发明技 术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
【专利附图】

【附图说明】
[0011]图1:为本发明的程序升级的应用系统的方框图。
[0012]图2:为本发明的程序升级的方法的引导程序的流程图。
[0013]图3:为本发明的程序升级的方法的应用程序的流程图。
【具体实施方式】
[0014]为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种程序升级的应用系统和方法的【具体实施方式】、结构、特征及其功效,详细说明如后。
[0015]参阅图1所示,为本发明的程序升级的应用系统的方框图。该程序升级的应用系统包括N (N≥1)个HCS08系列单片机系统模块1、CAN转换器2和上位机3 ;上述的N个HCS08系列单片机系统模块I通过CAN总线分别与CAN转换器2连接,该CAN转换器2又与上位机3连接。该HCS08系列单片机系统模块I用于程序升级,该上位机3主要是将要更新的程序利用特定的协议通过CAN接口发送给HCS08单片机系统模块1,而大多数上位机3不具备CAN通信接口,故需要将上位机3连接到CAN转换器2上,从而实现和单片机系统的CAN通信。
[0016]该HCS08系列单片机系统模块I包括引导程序区11、应用程序区12、程序标志区13及程序备份区14。其中,该引导程序区11中存放有引导程序,该应用程序区12中存放有应用程序,该程序标志区13中存放有程序版本、程序有效标志及效验和等信息,而该程序备份区14 一般存放待更新或升级的程序数据。
[0017]参阅图2和图3所示,分别为本发明的程序升级的方法的引导程序和应用程序的流程图。该程序升级的方法是根据飞思卡尔HCS08系列单片机擦除和编程操作不需要特殊的电压有个向量重定向的功能,将其程序分为两种:一种为引导程序,另一种为应用程序,分别存放在引导程序区11和应用程序区12。在工作过程中,该引导程序的主要功能是检查系统是否需要刷新程序,检查程序有效标志,可以通过CAN总线进行应用程序升级;该应用程序的主要功能是完成系统的应用性功能,在接收到本机升级的特定报文时,将升级的程序数据保存到程序备份区,接收完成后检查升级数据的CRC校验并置程序刷新标志。[0018]该基于飞思卡尔HCS08系列单片机CAN总线的程序升级的方法,包括以下步骤:当基于飞思卡尔HCS08系列单片机CAN总线的程序升级的应用系统上电后,首先多个HCS08系列单片机系统模块I开始工作,运行引导程序,引导程序会首先判断是不是需要进行程序更新,如果需要进行程序更新或升级时,引导程序将把程序备份区14的程序写入到应用程序区12 (应用程序更新),然后在程序标志区13写入程序版本、程序有效标志及效验和等信息(写应用程序有效标志),写入成功后运行应用程序。如果不需要进行程序更新时,引导程序会在程序标志区13载入程序版本、程序有效标志等信息并检验效验和,如果程序有效并且效验和正确,系统运行应用程序,相反,从CAN总线接收程序,如果接收成功,就进行应用程序更新,如果不成功,就重新从CAN总线接收程序。
[0019]在运行应用程序的时候,该HCS08系列单片机系统模块I还可以不用进行掉电等操作,通过CAN总线接收特定的协议,接收上位机3传送的更新或需升级的程序,进行程序升级,方法包括以下步骤:首先判断是否是对本地址的设备进行升级,如果是,该HCS08系列单片机系统模块I将会把接收到的程序升级数据放入程序备份区(接收升级程序),当接收完所有的升级数据后,应用程序会对升级数据进行CRC校验并和接收到的校验帧进行对比(CRC校验),如果校验成功则写入应用程序更新标志并复位,系统复位后会进入引导程序并检查程序更新标志并更新程序,如果校验不成功,则重新接收升级程序。
[0020]综上所述,本发明的程序升级的方法的优势在于:如果程序刷新过程中,突然掉电或异常状态发生导致程序刷新失败,引导程序依然可以重新进行程序刷新或进行CAN升级。且借由本发明,方便在现场不需要拆卸设备只需通过计算机或其他带CAN总线的设备利用CAN总线对产品进行程序升级,它支持对连接在CAN总线上的多个设备通过地址区分进行选择性升级而不影响其他模块的正常运行。
[0021]以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
【权利要求】
1.一种程序升级的应用系统,其是基于飞思卡尔HCS08系列单片机CAN总线的程序升级的应用系统,其特征在于其包括N (N≥1)个HCS08系列单片机系统模块、CAN转换器和上位机; 其中,上述的N个HCS08系列单片机系统模块通过CAN总线分别与CAN转换器连接,该CAN转换器又与上位机连接。
2.根据权利要求1所述的程序升级的应用系统,其特征在于其中该HCS08系列单片机系统模块包括引导程序区、应用程序区、程序标志区及程序备份区。
3.一种应用权利要求1所述的应用系统程序升级的方法,其是基于飞思卡尔HCS08系列单片机CAN总线的程序升级的应用系统,其特征在于其包括以下步骤: 多个HCS08系列单片机系统模块开始工作,运行引导程序,引导程序会首先判断是不是需要进行程序更新:如果需要进行程序更新或升级时,引导程序将把程序备份区的程 序写入到应用程序区,然后在程序标志区写入程序版本、程序有效标志及效验和信息,写入成功后运行应用程序;如果不需要进行程序更新或升级时,引导程序会在程序标志区载入程序版本及程序有效标志并检验效验和,如果程序有效并且效验和正确,系统运行应用程序; 在运行应用程序的时候,该HCS08系列单片机系统模块接收上位机传送的更新或需升级的程序,进行程序升级:首先判断是否是对本地址的设备进行升级,如果是,该HCS08系列单片机系统模块将会把接收到的程序升级数据放入程序备份区,当接收完所有的升级数据后,应用程序会对升级数据进行CRC校验并和接收到的校验帧进行对比,如果校验成功则写入应用程序更新标志并复位,系统复位后会进入引导程序并检查程序更新标志并更新程序。
【文档编号】G06F9/445GK103761125SQ201410004767
【公开日】2014年4月30日 申请日期:2014年1月6日 优先权日:2014年1月6日
【发明者】韩金坤, 杨涛, 王兵, 李红民 申请人:凯迈(洛阳)电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1