CN109709849B - 单片机安全运行控制方法与装置 - Google Patents
单片机安全运行控制方法与装置 Download PDFInfo
- Publication number
- CN109709849B CN109709849B CN201811577673.8A CN201811577673A CN109709849B CN 109709849 B CN109709849 B CN 109709849B CN 201811577673 A CN201811577673 A CN 201811577673A CN 109709849 B CN109709849 B CN 109709849B
- Authority
- CN
- China
- Prior art keywords
- chip microcomputer
- single chip
- program
- monitoring
- controlling
- 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.)
- Active
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种单片机安全运行控制方法与装置,涉及电子电器领域。该单片机安全运行控制方法与装置通过利用所述监控芯片实时检测所述单片机的程序运行进程是否出错;当所述单片机的程序运行进程出错时,利用所述监控芯片查找当前错误状态关联的错误等级;最后利用所述监控芯片控制所述单片机进入与所述错误等级关联的功能安全运行状态,可以同时监控多路程序的运行状态,简化了程序开发难度、降低了人力成本,并且可以在监控到单片机运行出错时,实时控制单片机进入与所述错误等级关联的运行状态,极大地避免了人员的伤亡和财产的损失。
Description
技术领域
本发明涉及电子电器领域,具体而言,涉及一种单片机安全运行控制方法与装置。
背景技术
对于汽车用控制器,对单片机程序监控有很高的要求。堆栈溢出、不合理的数据、外部干扰等都可能造成单片机不按照预计的程序工作,这个时候单片机已经失去控制功能,如果没有其他模块用于程序监控,单片机的运行存在安全隐患,甚至会出现人员伤亡和财产损失。
目前常见的程序监控是使用硬件看门狗来实现。看门狗可以分为普通看门狗、窗口看门狗。普通看门狗需要单片机在限定时间内进行喂狗操作,不然看门狗溢出复位单片机,主要用于监控软件必须在指定时间内完成喂狗操作。窗口看门狗需要单片机在指定时间范围内进行喂狗,过早或者过晚喂狗都会溢出看门狗而复位单片机。这些看门狗的功能都比较简单,只能实现单点的程序时间监控;如果出现看门狗溢出,不能给出足够信息定位程序出现故障的位置;单片机和看门狗之间的通信方式单一,通信接口的故障也会造成看门狗溢出,因此,不能实时保证单片机的程序的进入安全状态。
发明内容
有鉴于此,本发明实施例的目的在于提供一种单片机安全运行控制方法与装置,以改善上述的问题。
第一方面,本发明实施例提供了一种单片机安全运行控制方法,应用于监控芯片,所述监控芯片与一单片机通信连接,所述单片机安全运行控制方法包括:
利用所述监控芯片实时检测所述单片机的程序运行进程是否出错;
当所述单片机的程序运行进程出错时,利用所述监控芯片查找当前错误状态关联的错误等级;
利用所述监控芯片控制所述单片机进入与所述错误等级关联的功能安全运行状态。
第二方面,本发明实施例还提供了一种单片机安全运行控制装置,应用于监控芯片,所述监控芯片与一单片机通信连接,所述单片机安全运行控制装置包括:
检测单元,用于实时检测所述单片机的程序运行进程是否出错;
查找单元,用于当所述单片机的程序运行进程出错时,利用所述监控芯片查找当前错误状态关联的错误等级;
控制单元,用于控制所述单片机进入与所述错误等级关联的功能安全运行状态。
与现有技术相比,本发明提供的单片机安全运行控制方法与装置,通过利用所述监控芯片实时检测所述单片机的程序运行进程是否出错;当所述单片机的程序运行进程出错时,利用所述监控芯片查找当前错误状态关联的错误等级;最后利用所述监控芯片控制所述单片机进入与所述错误等级关联的功能安全运行状态,可以同时监控多路程序的运行状态,简化了程序开发难度、降低了人力成本,并且可以在监控到单片机运行出错时,实时控制单片机进入与所述错误等级关联的运行状态,极大地避免了人员的伤亡和财产的损失。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的车载电子控制单元的电路框图;
图2为本发明实施例提供的单片机安全运行控制方法的流程图;
图3为本发明实施例提供的程序监控点的流向示意图;
图4为本发明实施例提供的单片机安全运行控制装置的功能模块框图。
图标:101-单片机;102-监控芯片;103-功能安全电路;104-车载电子控制单元;401-检测单元;402-查找单元;403-控制单元。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图2,本发明实施例提供了一种单片机101安全运行控制方法,应用于监控芯片102,监控芯片102与一单片机101通过物理总线通信连接,其中,物理总线连接的接口可以包括但不限于SPI接口、I2C接口、UART接口等,从而可以防止通信总线出现单点失效时造成误认为程序出错的情况。监控芯片102还与一功能安全电路103电连接,监控芯片102、单片机101以及功能安全芯片集成于一车载电子控制单元104。单片机101用于接收汽车上的各种传感器信号的输入、以及逻辑信号输入,并且运行有多条程序,每条程序实现不同的功能,用于进行策略计算、逻辑判断、执行器输出控制。监控芯片102存储有单片机101中多个程序的相应状态,且每条程序都有对应有一个状态,监控芯片102用于实时监控中的多条程序的运行状态,并且根据程序的运行状态执行相应的安全操作。该单片机101安全运行控制方法包括:
步骤S201:利用监控芯片102实时检测单片机101的程序运行进程是否出错;如果是,则执行步骤S202。
本实施例中,由于单片机101包含有多条可运行程序,可以在每个程序被标记有携带逻辑顺序的程序监控点,利用监控芯片102依据上一个运行程序的监控点标记与当前运行程序的监控点标记判断数据流方向与预设定的数据流方向是否一致,以检测程序运行进程是否出错。例如,如图3所示,单片机101的其中一个程序中有7个程序监控点,其中,程序中带数字的圆圈表示程序的监控点,箭头代表程序的监控点的正确的数据流向,程序运行到程序监控点时需要把程序的监控点对应的数字发送给监控芯片102,图3中表示程序当前运行到程序监控点4。其中,程序监控点1为开始监控点,程序监控点7为终止监控点。监控芯片102接收到开始监控点时进入监控状态,接收到终止监控点时如果时间和程序流都是正常的则关闭监控状态。各个程序监控点之间的数字表示时间监控。
本实施例中,步骤S202的具体实现可以包括但不限于以下两种方式:第一种:例如,程序监控点1与程序监控点3之间的数字是[1,3],表示如果从程序监控点1到程序监控点3之间的时间在1和3秒之间都是正常的,超出这个范围则监控芯片102设置该程序状态为时间出错。再例如,监控芯片102会保存最新到达的程序监控点,会根据该程序监控点的属性设置超时时间和预期的下个监控点,如程序监控点3的超时时间为5秒,预设定的接收程序监控点3的数据流为程序监控点5和程序监控点4。如果超时时间到达而未接收到单片机101发出的监控点,则程序进入时间出错。
第二种:单片机101包含有多条可运行程序,且每个程序被标记有时间范围的程序监控点,利用监控芯片102依据上一个运行程序到当前运行程序的时间点是否在当前程序监控点的被标记的时间范围内以检测程序运行进程是否出错。例如,设定的程序监控点的流向只能流向程序监控点2和程序监控点3,即程序只能按照图3中的箭头方向依次执行,如果从监控点1直接运行到监控点5,监控芯片102能识别并设置该程序的程序流出错。
步骤S202:利用监控芯片102查找当前错误状态关联的错误等级。
其中,根据数据流出错或时间出错的具体场景查找错误等级,本实施例中,错误等级包含但不限于一般警告和严重警告。
步骤S203:利用监控芯片102控制单片机101进入与错误等级关联的功能安全运行状态。
例如,当错误等级为一般警告时,控制单片机101进入中断的运行状态。当错误等级为严重警告时,控制单片机101进入复位的运行状态以及功能安全芯片运行以使单片机101进入功能安全运行状态。
另外,监控芯片102可以通过车载电子控制单元104包含的EEPROM存储故障信息,其中,故障信息可以包括出现问题的程序监控点、时间点、出现问题的原因(例如,具体某个程序监控点的时间出错或数据流出错)。同时,可以将故障信息传输至显示模块显示,从而方便用户及时了解故障信息。
请参阅图4,本发明实施例还提供了一种单片机101安全运行控制装置,需要说明的是,本发明实施例所提供的单片机101安全运行控制装置,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。应用于监控芯片102,监控芯片102与一单片机101通信连接,单片机101安全运行控制装置包括检测单元、查找单元、控制单元。
检测单元用于实时检测单片机101的程序运行进程是否出错。
具体地,检测单元用于检测单片机101的程序运行进程是否出错的功能包括但不限于以下两种方式:
第一种:单片机101包含有多条可运行程序,且每个程序被标记有携带逻辑顺序的程序监控点,检测单元具体用于依据上一个运行程序的监控点标记与当前运行程序的监控点标记判断数据流方向与预设定的数据流方向是否一致,以检测程序运行进程是否出错。
第二种:单片机101包含有多条可运行程序,且每个程序被标记有时间范围的程序监控点,检测单元具体用于利用监控芯片102依据上一个运行程序到当前运行程序的时间点是否在当前程序监控点的被标记的时间范围内以检测程序运行进程是否出错。
查找单元用于当单片机101的程序运行进程出错时,利用监控芯片102查找当前错误状态关联的错误等级。
控制单元用于控制单片机101进入与错误等级关联的功能安全运行状态。
当错误等级为一般警告时,控制单元具体用于控制单片机101进入中断的运行状态。
监控芯片102还与一功能安全电路103电连接,监控芯片102、单片机101以及功能安全芯片集成于一车载电子控制单元104,当错误等级为严重警告时,控制单元具体用于控制单片机101进入复位的运行状态以及功能安全芯片运行以使单片机101进入功能安全运行状态。
综上所述,本发明提供的单片机安全运行控制方法与装置,通过利用所述监控芯片实时检测所述单片机的程序运行进程是否出错;当所述单片机的程序运行进程出错时,利用所述监控芯片查找当前错误状态关联的错误等级;最后利用所述监控芯片控制所述单片机进入与所述错误等级关联的功能安全运行状态,可以同时监控多路程序的运行状态,简化了程序开发难度、降低了人力成本,并且可以在监控到单片机运行出错时,实时控制单片机进入与所述错误等级关联的运行状态,极大地避免了人员的伤亡和财产的损失。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
Claims (4)
1.一种单片机安全运行控制方法,其特征在于,应用于监控芯片,所述监控芯片与一单片机通信连接,所述单片机安全运行控制方法包括:
利用所述监控芯片实时检测所述单片机的程序运行进程是否出错;
当所述单片机的程序运行进程出错时,利用所述监控芯片查找当前错误状态关联的错误等级;
利用所述监控芯片控制所述单片机进入与所述错误等级关联的功能安全运行状态;
其中,所述监控芯片还与一功能安全电路电连接,所述监控芯片、所述单片机以及所述功能安全芯片集成于一车载电子控制单元,所述控制所述单片机进入与所述错误等级关联的运行状态的步骤包括:
当错误等级为严重警告时,控制所述单片机进入复位的运行状态以及功能安全芯片运行以使所述单片机进入功能安全运行状态;
所述单片机包含有多条可运行程序,且每个程序被标记有时间范围的程序监控点,所述利用所述监控芯片实时检测单片机的程序运行进程是否出错的步骤包括两种实现方式:
其一为,利用所述监控芯片依据上一个运行程序到当前运行程序的时间点是否在当前程序监控点的被标记的时间范围内以检测程序运行进程是否出错;
其二为,利用所述监控芯片依据上一个运行程序的监控点标记与当前运行程序的监控点标记判断数据流方向与预设定的数据流方向是否一致,以检测程序运行进程是否出错。
2.根据权利要求1所述的单片机安全运行控制方法,其特征在于,所述控制所述单片机进入与所述错误等级关联的运行状态的步骤包括:
当错误等级为一般警告时,控制所述单片机进入中断的运行状态。
3.一种单片机安全运行控制装置,其特征在于,应用于监控芯片,所述监控芯片与一单片机通信连接,所述单片机安全运行控制装置包括:
检测单元,用于实时检测所述单片机的程序运行进程是否出错;
查找单元,用于当所述单片机的程序运行进程出错时,利用所述监控芯片查找当前错误状态关联的错误等级;
控制单元,用于控制所述单片机进入与所述错误等级关联的功能安全运行状态;
其中,所述监控芯片还与一功能安全电路电连接,所述监控芯片、所述单片机以及所述功能安全芯片集成于一车载电子控制单元,当错误等级为严重警告时,所述控制单元具体用于控制所述单片机进入复位的运行状态以及功能安全芯片运行以使所述单片机进入功能安全运行状态;
所述单片机包含有多条可运行程序,且每个程序被标记有时间范围的程序监控点,所述检测单元具体用于利用所述监控芯片依据上一个运行程序到当前运行程序的时间点是否在当前程序监控点的被标记的时间范围内以检测程序运行进程是否出错;
所述检测单元还具体用于,依据上一个运行程序的监控点标记与当前运行程序的监控点标记判断数据流方向与预设定的数据流方向是否一致,以检测程序运行进程是否出错。
4.根据权利要求3所述的单片机安全运行控制装置,其特征在于,当错误等级为一般警告时,所述控制单元具体用于控制所述单片机进入中断的运行状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811577673.8A CN109709849B (zh) | 2018-12-20 | 2018-12-20 | 单片机安全运行控制方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811577673.8A CN109709849B (zh) | 2018-12-20 | 2018-12-20 | 单片机安全运行控制方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109709849A CN109709849A (zh) | 2019-05-03 |
CN109709849B true CN109709849B (zh) | 2021-03-19 |
Family
ID=66257238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811577673.8A Active CN109709849B (zh) | 2018-12-20 | 2018-12-20 | 单片机安全运行控制方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109709849B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110955571B (zh) * | 2020-02-20 | 2020-07-03 | 南京芯驰半导体科技有限公司 | 面向车规级芯片功能安全的故障管理系统 |
CN113515430A (zh) * | 2021-09-14 | 2021-10-19 | 国汽智控(北京)科技有限公司 | 进程的状态监控方法、装置和设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007002760A (ja) * | 2005-06-23 | 2007-01-11 | Denso Corp | 電子制御装置 |
CN103246280A (zh) * | 2012-12-04 | 2013-08-14 | 奇瑞汽车股份有限公司 | 一种电动汽车诊断系统 |
CN105045708A (zh) * | 2015-09-02 | 2015-11-11 | 上海斐讯数据通信技术有限公司 | 软件运行错误处理方法及系统 |
CN105365712A (zh) * | 2015-11-05 | 2016-03-02 | 东风汽车公司 | 一种用于车身控制系统的功能安全电路及控制方法 |
CN108153285A (zh) * | 2017-12-28 | 2018-06-12 | 上汽通用五菱汽车股份有限公司 | 汽车安全监控方法、装置、存储介质及系统 |
-
2018
- 2018-12-20 CN CN201811577673.8A patent/CN109709849B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007002760A (ja) * | 2005-06-23 | 2007-01-11 | Denso Corp | 電子制御装置 |
CN103246280A (zh) * | 2012-12-04 | 2013-08-14 | 奇瑞汽车股份有限公司 | 一种电动汽车诊断系统 |
CN105045708A (zh) * | 2015-09-02 | 2015-11-11 | 上海斐讯数据通信技术有限公司 | 软件运行错误处理方法及系统 |
CN105365712A (zh) * | 2015-11-05 | 2016-03-02 | 东风汽车公司 | 一种用于车身控制系统的功能安全电路及控制方法 |
CN108153285A (zh) * | 2017-12-28 | 2018-06-12 | 上汽通用五菱汽车股份有限公司 | 汽车安全监控方法、装置、存储介质及系统 |
Non-Patent Citations (1)
Title |
---|
汽车电子实时操作系统可靠机制研究与应用;张国辉;《信息科技辑》;20160315(第03期);第28页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109709849A (zh) | 2019-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102575726B1 (ko) | 차량의 차로 변경 제어 장치 및 방법 | |
US20210031792A1 (en) | Vehicle control device | |
CN107908186B (zh) | 用于控制无人驾驶车辆运行的方法及系统 | |
US11492009B2 (en) | Vehicle control device | |
CN209842367U (zh) | 一种基于自动驾驶系统的网络架构的集散式域控制器系统 | |
JP5319534B2 (ja) | 障害管理方法、および障害管理のための装置 | |
JP2009184423A (ja) | 車両用電子制御装置 | |
CN109709849B (zh) | 单片机安全运行控制方法与装置 | |
US9690269B2 (en) | Controller and process monitoring method including monitoring of process execution sequence | |
CN102713858A (zh) | 信息处理装置的联机调试系统及联机调试方法 | |
US10296322B2 (en) | Controller and control program updating method | |
CN113672306B (zh) | 服务器组件自检异常恢复方法、装置、系统及介质 | |
KR20120029460A (ko) | 차량 유닛 | |
CN102723709A (zh) | 电源控制装置及方法、以及电力管理系统 | |
JP2011093389A (ja) | 制御システム、電子装置、制御装置及び装置起動方法 | |
JP2008265618A (ja) | 車載電子制御装置 | |
US20190315405A1 (en) | Apparatus and method for controlling lane change in vehicle | |
US11080161B2 (en) | Control device, and processing method in event of failure in control device | |
CN116300804A (zh) | 远程诊断方法、装置、电子设备及计算机可读存储介质 | |
CN115923796A (zh) | 车辆蠕行控制方法、装置、电子设备及存储介质 | |
KR20190016824A (ko) | 듀얼 타입 차량 제어장치 및 그 제어방법 | |
US20070294007A1 (en) | Active Front Steer Angle Sensor Failure Detection System and Method | |
KR102156019B1 (ko) | 차량용 전자장치 | |
JP2006261730A (ja) | オプションノードが接続されたネットワークシステム | |
WO2022113155A1 (ja) | 車載用制御システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |