CN114578721B - 一种看门狗模块管理方法、装置和车辆 - Google Patents
一种看门狗模块管理方法、装置和车辆 Download PDFInfo
- Publication number
- CN114578721B CN114578721B CN202011391637.XA CN202011391637A CN114578721B CN 114578721 B CN114578721 B CN 114578721B CN 202011391637 A CN202011391637 A CN 202011391637A CN 114578721 B CN114578721 B CN 114578721B
- Authority
- CN
- China
- Prior art keywords
- watchdog module
- duration
- application program
- bootloader
- program
- 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
- 238000007726 management method Methods 0.000 title claims abstract description 23
- 238000000034 method Methods 0.000 claims abstract description 41
- 238000001514 detection method Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 241000282472 Canis lupus familiaris Species 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 6
- 230000002035 prolonged effect Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000015654 memory Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005672 electromagnetic field Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0428—Safety, monitoring
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24024—Safety, surveillance
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例提供了一种看门狗模块管理方法、装置和车辆,所述方法包括:确定当前运行程序;在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块;控制所述看门狗模块按照所述第一时长接收所述应用程序发送的信号,或停止运行。本发明实施例提供的方法、装置和车辆,针对整车控制器的不同工作状态,对看门狗模块进行相应的控制管理,使看门狗模块不会中断应用程序的更新,同时也避免了整车控制器无意义的复位重启,尽可能地地保障了驾驶安全。
Description
技术领域
本发明涉及车辆技术领域,特别是涉及一种看门狗模块管理方法、一种看门狗模块管理装置和一种车辆。
背景技术
保障汽车的驾驶安全是经久不衰的重要议题,新能源汽车的动力系统由整车控制器进行控制,为防止因整车控制器引起的动力系统故障,进而导致驾驶安全受到威胁,保障整车控制器的正常运行也非常重要。目前的新能源汽车的整车控制器普遍使用看门狗模块对整车控制器的应用程序的运行状态进行监控。
具体地,整车控制器中的应用程序在运行时需要按时间间隔定期喂狗即,向看门狗模块定期发送信号,表示整车控制器处于正常运行的状态,若超出规定时间没有喂狗,即看门狗模块没有收到应用程序发送的信号,则看门狗模块认为整车控制器发生故障,将输出复位信号到复位端,控制电源芯片重启整车控制器,以防止整车控制器长时间宕机发生严重的安全事故。
而整车控制器应用程序的更新,会涉及到对整车控制器FLASH的擦除和/或编程操作,由于FLASH的擦写不允许中断,并且会占用大量资源。在这个过程中,因为FLASH的擦写对线程的占用,可能会影响应用程序喂狗的正常进行,造成应用程序喂狗延迟,甚至在整个擦写过程都无法喂狗。在这种情况下,应用程序超过规定时间没有喂狗,看门狗模块默认整车控制器发生故障,将重启整车控制器。一方面来说,整车控制器FLASH的擦除和/或编程操作可能出现频繁中断,影响用户体验,也可能引起系统的故障;另一方面来说,整车控制器可能会因为看门狗模块没有按时收到应用程序发送的信号,进行无意义的重启,甚至频繁的重启,将影响整车的安全性能和用户的使用体验。
发明内容
为了解决上述问题,本发明实施例提出了一种看门狗模块管理方法、一种看门狗模块管理装置和一种车辆,旨在保障驾驶安全。
本发明实施例提供了一种看门狗模块管理方法,应用于整车控制器,所述整车控制器包括看门狗模块、Bootloader和应用程序,所述方法包括:
确定当前运行程序;
在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块;
控制所述看门狗模块按照所述第一时长接收所述应用程序发送的信号,或停止运行。
可选地,在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块,包括:
在当前运行程序包括所述Bootloader和所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长;
在当前运行程序仅包括所述Bootloader的情况下,禁用所述看门狗模块。
可选地,所述方法还包括:
在当前运行程序仅包括所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第二时长,所述第二时长短于所述第一时长;
控制所述看门狗模块按照所述第二时长接收所述应用程序发送的信号。
可选地,
在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块,包括:在检测到当前运行程序由应用程序切换为Bootloader时或在运行Bootloader后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第一时长或禁用所述看门狗模块;
在当前运行程序仅包括所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第二时长,包括:在检测到当前运行程序由Bootloader切换为应用程序时或在运行应用程序后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第二时长。
本发明实施例还提供了一种看门狗模块管理装置,应用于整车控制器,所述整车控制器包括看门狗模块、Bootloader和应用程序,所述装置包括:
程序运行检测单元,用于确定当前运行程序;
看门狗模块配置单元,用于在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块;
看门狗模块控制单元,用于控制所述看门狗模块按照所述第一时长接收所述应用程序发送的信号,或停止运行。
可选地,所述看门狗模块配置装置包括:
看门狗模块第一配置单元,用于在当前运行程序包括所述Bootloader和所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长;
看门狗模块禁用单元,在当前运行程序仅包括所述Bootloader的情况下,禁用所述看门狗模块。
可选地,所述装置还包括:
看门狗模块第二配置单元,用于在当前运行程序仅包括所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第二时长,所述第二时长短于所述第一时长;
看门狗模块第二控制单元,用于控制所述看门狗模块按照所述第二时长接收所述应用程序发送的信号。
可选地,
所述看门狗模块配置单元还包括:看门狗模块配置子单元,用于在检测到当前运行程序由应用程序切换为Bootloader时或在运行Bootloader后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第一时长或禁用所述看门狗模块;
所述看门狗模块第二配置单元还包括:看门狗模块第二配置子单元,用于在检测到当前运行程序由Bootloader切换为应用程序时或在运行应用程序后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第二时长。
此外,本发明实施例还提供了一种车辆,所述车辆的整车控制器用于执行上述任一项所述的方法的步骤。
从上述技术方案可以看出,本发明实施例提供了一种看门狗模块管理方法、装置和车辆,所述方法应用于整车控制器,为整车控制器的不同工作状态提供了不同的看门狗模块的运行模式,在应用程序运行时为整车控制器的故障宕机提供重启保障,以及,可以在Bootloader运行时,即,应用程序更新时,延长看门狗模块接收信号的窗口时长或禁用看门狗模块,一方面防止整车控制器FLASH的擦写操作中断,保障应用程序的成功更新,避免系统故障,另一方面防止整车控制器无意义的重启,保障了整车的驾驶安全,提升用户体验。
附图说明
图1是本发明实施例提供的一种看门狗模块管理方法的步骤流程图;
图2是本发明实施例提供的一种看门狗模块的硬件配置示意图;
图3是本发明实施例提供的一种看门狗模块初始化的流程示意图;
图4是本发明实施例提供的一种看门狗模块管理装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成各种寄存器和内存的数据混乱,会导致程序指针错误,不在程序区,取出错误的程序指令等,都有可能会陷入死循环,中断程序的正常运行,由单片机控制的系统无法继续正常工作,导致整个系统的陷入停滞状态,发生不可预料的后果。
在这种情况下,技术人员提出使用看门狗模块对应用程序运行进行监控,看门狗模块从本质上来说是一个定时器电路,一般有一个输入和一个输出,其中输入叫做喂狗,输出一般连接到另外一个部分的复位端,一般是连接到单片机。看门狗模块的功能是定期的查看应用程序运行的情况,在应用程序发生错误时向电源芯片发出重启信号。看门狗模块的命令在程序的中断中拥有最高的优先级。
但是,类似于移动终端的OTA升级,在日常使用的过程中,单片机构成的微型计算机系统中的应用程序也需要不定期地更新,这时单片机芯片将运行引导加载程序Bootloader以更新应用程序,在这种情况下,单片机FLASH芯片进行擦写,应用程序将可能无法按时发送信号给看门狗模块,而看门狗模块在没有按时收到信号后,将发送复位信号到单片机芯片的复位端,由电源芯片控制整机重启,这将中断应用程序的更新,而反复的下载更新和重启也将影响单片机芯片的正常工作。这样的问题对于应用于整车控制器的单片机微型计算机系统而言,将对汽车驾驶安全产生致命的威胁。
基于上述问题,本申请发明人提出了一种看门狗模块管理方法、装置和车辆,对看门狗模块的运行模式进行配置,既能在整车控制器正常运行的状态下提供复位保障,也能防止应用程序更新时的错误重启和更新中断。
参照图1,图1是本发明实施例提供的一种看门狗模块管理方法的步骤流程图。如图1所示,所述方法应用于整车控制器,所述整车控制器包括看门狗模块、Bootloader和应用程序,所述方法具体包括如下步骤:
步骤S31、确定当前运行程序。
在整车控制器中,作为运行程序的软件可以分为Bootloader和应用程序,进一步地,整车控制器的当前运行程序可以包括四种状态:Bootloader不运行且应用程序运行、Bootloader运行且应用程序不运行、Bootloader运行且应用程序运行、Bootloader不运行且应用程序不运行。
其中,Bootloader不运行且应用程序运行是整车控制器在用户的正常使用过程中所处的工作状态,可以是整车控制器在用户开机后进行驾驶的过程中所处的工作状态。
Bootloader运行且应用程序不运行、Bootloader运行且应用程序运行,均是应用程序更新或者技术人员调试时可能处于的状态,具体根据整车控制器所使用的的微型计算机系统类型决定。
Bootloader不运行且应用程序不运行是整车控制器关机或待机所处的状态。
本实施例通过对当前运行程序进行监测,以便于根据整车控制器中不同的程序工作状态,适应性地提供与程序工作状态相对应的看门狗模块工作模式,满足整车控制器的功能需求和安全需求。
步骤S32、在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块。
参照图2,图2是本发明实施例提供的一种看门狗模块的硬件配置示意图。考虑到整车控制器的当前运行程序可能只有Bootloader或只有应用程序的情况。因此,如图2所示,在一种实施方式中,可以预先在整车控制器的Bootloader端为看门狗模块配置看门狗禁用端口;以及,可以预先在整车控制器的应用程序端为看门狗模块配置看门狗窗口时间端口。因此,可以将Bootloader和应用程序看作均包含看门狗模块,使得整车控制器在只有Bootloader或只有应用程序运行时均能分别实现看门狗模块的不同配置。
如图2所示,在本实施例中,应用程序和Bootloader可以切换作为整车控制器的当前运行程序。其中,应用程序在正常工作运行时需要按间隔时序定期发送信号至看门狗模块,看门狗模块按窗口时长接收信号,在没有按时收到信号时,看门狗模块将复位信号发送至电源芯片,使整车控制器重启。
在本实施例中,在当前运行程序包括所述Bootloader的情况下,可以是应用程序更新的时候,可以进一步对应整车控制器的两种工作状态:Bootloader运行且应用程序运行、Bootloader运行且应用程序不运行。而这两种工作状态均是应用程序更新时可能出现的情况。
因此,针对以上两种工作状态,在一种实施方式中,在当前运行程序包括所述Bootloader的情况下,本发明还提供了一种针对整车控制器的不同工作状态进行相应的看门狗模块管理的方法,包括:
在当前运行程序包括所述Bootloader和所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长;
在当前运行程序仅包括所述Bootloader的情况下,禁用所述看门狗模块。
其中,在当前运行程序包括所述Bootloader和所述应用程序的情况下,即,Bootloader运行且应用程序运行时,由于整车控制器FLASH芯片进行擦写操作,应用程序的工作状态受到影响,可能无法按时发送信号至看门狗模块,在这种情况下,可以将看门狗模块接收信号的窗口时长配置为第一时长,即,相比较于仅应用程序运行的日常工作状态,延长看门狗模块接收信号的窗口时长。
在当前运行程序仅包括所述Bootloader的情况下,即,Bootloader运行且应用程序不运行时,整车控制器FLASH芯片同样进行擦写操作,而应用程序已经关闭,这种状态下不用考虑控制看门狗模块接收信号的窗口时长和应用程序发送信号的间隔时序,而是直接禁用看门狗模块即可。
通过本实施例,在当前运行程序包括所述Bootloader的情况下,针对整车控制器的不同工作状态进行相应的看门狗模块管理的方法,在应用程序和Bootloader同时运行时仍然可以通过配置延长窗口时长为第一时长,使看门狗模块执行监控功能,在第一时长内若看门狗模块未收到应用程序按时发送的信号,仍可以发送复位信号令整车控制器重启,尽可能保证了看门狗模块对应用程序运行状态的监控作用。
步骤S33、控制所述看门狗模块按照所述第一时长接收所述应用程序发送的信号,或停止运行。
在前述步骤中,本实施例通过不同的端口完成了相应的配置或禁用。在本步骤中,控制看门狗模块根据配置或禁用指令完成相应的操作即可。
具体地,在当前运行程序包括所述Bootloader时的两种工作状态下,分别完成包括如下两种操作:
在Bootloader运行且应用程序运行时,控制所述看门狗模块按照所述第一时长接收所述应用程序发送的信号。这一步骤可以通过配置在应用程序端的看门狗窗口时间端口完成,通过该端口,还可以将应用程序发送信号的间隔时序延长,使得应用程序更新时,FLASH的擦写不会中断,进而顺利地完成应用程序更新。
在Bootloader运行且应用程序不运行时,控制所述看门狗模块停止运行。这一步骤可以通过配置在Bootloader端的看门狗禁用端口完成,看门狗模块停止运行后,应用程序的更新不再受到看门狗模块控制整车控制器复位重启的威胁,FLASH的擦写也不会中断,进而顺利地完成应用程序更新。
看门狗模块的本职工作是监控应用程序的运行状态是否健康,而整车控制器的大部分工作状态都是仅应用程序运行,因此,基于对应用程序的运行状态的监控需求,同样需要为看门狗模块配置符合监控需求的窗口时长。因此,结合上述实施例,在一种实施方式中,还可以包括以下步骤:
在当前运行程序仅包括所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第二时长,所述第二时长短于所述第一时长;
控制所述看门狗模块按照所述第二时长接收所述应用程序发送的信号。
在本实施例中,第二时长和第一时长的配置先后顺序并不受限定。
示例性地,在整车控制器启动时,可以先上电启动bootloader;
若检测应用程序无效或应用程序有更新需求,则先将看门狗模块接收信号的窗口时长配置为第一时长或禁用看门狗模块,控制所述看门狗模块按照所述第一时长接收所述应用程序发送的信号,或停止运行,在应用程序更新完成后,再将看门狗模块接收信号的窗口时长配置为第二时长,进入应用程序正常工作的运行状态,并关闭bootloader,控制看门狗模块按照所述第二时长接收所述应用程序发送的信号;、
若检测应用程序有效或应用程序无更新需求,则先将看门狗模块接收信号的窗口时长配置为第二时长,进入应用程序正常工作的运行状态,并关闭bootloader,控制看门狗模块按照所述第二时长接收所述应用程序发送的信号;在应用程序需要更新时,再次启动bootloader,再将看门狗模块接收信号的窗口时长配置为第一时长或禁用看门狗模块,控制所述看门狗模块按照所述第一时长接收所述应用程序发送的信号,或停止运行。
在本实施例中,第二时长可以是第一时长的正整数倍,比如4倍、8倍等等。示例性地,可以将第一时长设置为256ms,将第二时长设置为1024ms。
通过本实施例,在当前运行程序仅为应用程序的情况下,即,应用程序整车工作的运行状态下,通过配置延长窗口时长为第二时长,配置窗口使看门狗模块正常执行监控功能,在第二时长内若看门狗模块未收到应用程序按时发送的信号,即可以发送复位信号令整车控制器重启,可以在整车控制器的日常使用中,保证看门狗模块对应用程序运行状态的监控作用。
在一种实施方式中,还可以通过配置寄存器的方式来完成对看门狗模块的配置和控制管理,具体包括:
第一种需要配置寄存器的情况,是在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块,包括:在检测到当前运行程序由应用程序切换为Bootloader时或在运行Bootloader后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第一时长或禁用所述看门狗模块。
其中,当前运行程序由应用程序切换为Bootloader时,即,应用程序收到更新的通知,需要由应用程序工作切换为Bootloader引导加载工作时。
在运行Bootloader后,若发现看门狗模块接收信号的窗口时长并未成功配置为第一时长或禁用,可以再次进入INIT_FS阶段,重新进行看门狗模块的配置或禁用。
此外,当前运行程序包括所述Bootloader的情况,同样也包括整车控制器启动时,需要先上电启动Bootloader的情况。这种情况下,同样可以通过寄存器将窗口时长配置为第一时长或禁用看门狗模块。
在完成上述配置后,即可退出INIT_FS阶段,由Bootloader进行引导工作。
第二种需要配置寄存器的情况,是在当前运行程序仅包括所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第二时长,包括:在检测到当前运行程序由Bootloader切换为应用程序时或在运行应用程序后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第二时长。
其中,当前运行程序由Bootloader切换为应用程序时,即,应用程序完成更新,可以退出Bootloader引导加载工作,应用程序即将进入正常工作的运行状态。
在运行应用程序后,若发现看门狗模块接收信号的窗口时长并未成功配置为第二时长或启用,同样可以再次进入INIT_FS阶段,重新进行看门狗模块的配置或启用。
在完成上述配置后,即可退出INIT_FS阶段,应用程序进入正常工作的运行状态。
在一种实施方式中,所述第一寄存器和所述第二寄存器可以使用“FS_I”寄存器。
“FS_I”寄存器需要在INIT_FS阶段进行初始化,以完成配置。在退出INIT_FS阶段后还可以通过第一寄存器的设置预设标识为1,重新进入该阶段,通过初始化的方式再次配置第二寄存器。相应地,所述第一寄存器可以采用寄存器“FS_SAFE_IOS”,所述预设标识可以是“GOTO_INITFS”位置,所述第二寄存器可以是寄存器“FS_WD_WINDOW”。
上述实施例针对整车控制器的不同工作状态,通过寄存器完成对看门狗的控制管理,则需要看门狗模块在整车控制器的每一次工作状态切换之后进行初始化,以完成配置。参照图3,图3是本发明实施例提供的一种看门狗模块初始化的流程示意图。如图3所示,结合上述实施例,在一种实施方式中,看门狗模块的初始化流程如下:
第一步,开始看门狗模块的初始化;
第二步,判断初始化过程持续的时间;
第三步,若初始化时长超过100ms,则置初始化失败标识,进入初始化失败模式,进入第十二步;若初始化时长不超过100ms,进入第四步;
第四步,手动进入INIT_FS阶段;
第五步,初始化“FS_I”寄存器;
第六步,检测“FS_I”寄存器初始化是否完成,若是则进入第七步,否则返回第五步;
第七步,操作退出INIT_FS阶段;
第八步,检查是否成功退出INIT_FS阶段,若是则进入第九步,否则返回第七步;
第九步,初始化非“FS_I”寄存器;
第十步,检测非“FS_I”寄存器初始化是否完成,若是则进入第十一步,否则返回第九步;
第十一步,进入正常运行模式;
第十二步,结束看门狗模块的初始化。
其中,所述“手动进入INIT_FS阶段”可以是根据用户的触发操作进入INIT_FS阶段;所述“操作退出INIT_FS阶段”可以是根据用户的触发操作退出INIT_FS阶段。以应用程序更新时的情况为例,当前运行程序需要由应用程序切换为Bootloader,在进行上述第二步之后,若初始化时长不超过100ms,视为可以进行初始化,可以在用户交互截面为用户提供“开始更新”提示,若用户手动点选确认,则进入INIT_FS阶段进行寄存器的初始化配置,为整车控制器工作状态的切换做准备;在INIT_FS阶段寄存器完成初始化配置之后,同样可以在用户交互截面为用户提供“完成更新”的提示,若用户手动点选确认,则退出INIT_FS阶段,在初始化非“FS_I”寄存器后,即可回到应用程序正常工作的运行状态。
其中,非“FS_I”寄存器是看门狗模块中除用于配置窗口时长的“FS_I”寄存器以外的其他功能寄存器,实现看门狗模块的基础功能,在此不再赘述。
通过上述实施例,本发明提供一种看门狗模块管理方法,针对整车控制器的不同工作状态,对看门狗模块进行相应的控制管理,使看门狗模块在应用程序更新时,不会因为没有及时接收到信号而重启,从而造成应用程序更新的中断,同时也避免了整车控制器无意义的复位重启,最大程度地保障了驾驶安全,提升了用户体验。
基于同一发明构思,本发明实施例还提供了一种看门狗模块管理装置50。图4是本发明实施例提供的一种看门狗模块管理装置50的结构框图。如图4所示,该装置50应用于整车控制器,所述整车控制器包括看门狗模块、Bootloader和应用程序,具体包括:
程序运行检测单元51,用于确定当前运行程序;
看门狗模块配置单元52,用于在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块;
看门狗模块控制单元53,用于控制所述看门狗模块按照所述第一时长接收所述应用程序发送的信号,或停止运行。
可选地,所述装置包括:
看门狗模块第二配置单元,用于在当前运行程序仅包括所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第二时长,所述第二时长短于所述第一时长;
看门狗模块第二控制单元,用于控制所述看门狗模块按照所述第二时长接收所述应用程序发送的信号。
可选地,所述装置还包括:
看门狗模块第二配置单元,用于在当前运行程序仅包括所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第二时长,所述第二时长短于所述第一时长;
看门狗模块第二控制单元,用于控制所述看门狗模块按照所述第二时长接收所述应用程序发送的信号。
可选地,
所述看门狗模块配置单元还包括:看门狗模块配置子单元,用于在检测到当前运行程序由应用程序切换为Bootloader时或在运行Bootloader后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第一时长或禁用所述看门狗模块;
所述看门狗模块第二配置单元还包括:看门狗模块第二配置子单元,用于在检测到当前运行程序由Bootloader切换为应用程序时或在运行应用程序后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第二时长。
基于同一发明构思,本发明实施例还提供了一种车辆,所述车辆的整车控制器用于执行上述任一实施例所述的方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本实施例中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种看门狗模块管理方法、一种看门狗模块管理装置和一种车辆,进行了详细介绍,本实施例中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (5)
1.一种看门狗模块管理方法,其特征在于,应用于整车控制器,所述整车控制器包括看门狗模块、Bootloader和应用程序,所述方法包括:
确定当前运行程序;
在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块;
控制所述看门狗模块按照所述第一时长接收所述应用程序发送的信号,或停止运行;
所述方法还包括:
在当前运行程序仅包括所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第二时长,所述第二时长短于所述第一时长;
控制所述看门狗模块按照所述第二时长接收所述应用程序发送的信号;
其中,在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块,包括:在检测到当前运行程序由应用程序切换为Bootloader时或在运行Bootloader后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第一时长或禁用所述看门狗模块;
在当前运行程序仅包括所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第二时长,包括:在检测到当前运行程序由Bootloader切换为应用程序时或在运行应用程序后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第二时长。
2.根据权利要求1所述的方法,其特征在于,在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块,包括:
在当前运行程序包括所述Bootloader和所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长;
在当前运行程序仅包括所述Bootloader的情况下,禁用所述看门狗模块。
3.一种看门狗模块管理装置,其特征在于,应用于整车控制器,所述整车控制器包括看门狗模块、Bootloader和应用程序,所述装置包括:
程序运行检测单元,用于确定当前运行程序;
看门狗模块配置单元,用于在当前运行程序包括所述Bootloader的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长或禁用所述看门狗模块;
看门狗模块控制单元,用于控制所述看门狗模块按照所述第一时长接收所述应用程序发送的信号,或停止运行;
所述装置还包括:
看门狗模块第二配置单元,用于在当前运行程序仅包括所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第二时长,所述第二时长短于所述第一时长;
看门狗模块第二控制单元,用于控制所述看门狗模块按照所述第二时长接收所述应用程序发送的信号;
其中,所述看门狗模块配置单元还包括:看门狗模块配置子单元,用于在检测到当前运行程序由应用程序切换为Bootloader时或在运行Bootloader后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第一时长或禁用所述看门狗模块;
所述看门狗模块第二配置单元还包括:看门狗模块第二配置子单元,用于在检测到当前运行程序由Bootloader切换为应用程序时或在运行应用程序后,设置第一寄存器的预设标识为1,以进入INIT_FS阶段;将第二寄存器存储的窗口时长配置为第二时长。
4.根据权利要求3所述的装置,其特征在于,所述看门狗模块配置装置包括:
看门狗模块第一配置单元,用于在当前运行程序包括所述Bootloader和所述应用程序的情况下,将所述看门狗模块接收信号的窗口时长配置为第一时长;
看门狗模块禁用单元,在当前运行程序仅包括所述Bootloader的情况下,禁用所述看门狗模块。
5.一种车辆,其特征在于,所述车辆的整车控制器用于执行权利要求1或2所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011391637.XA CN114578721B (zh) | 2020-12-02 | 2020-12-02 | 一种看门狗模块管理方法、装置和车辆 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011391637.XA CN114578721B (zh) | 2020-12-02 | 2020-12-02 | 一种看门狗模块管理方法、装置和车辆 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114578721A CN114578721A (zh) | 2022-06-03 |
CN114578721B true CN114578721B (zh) | 2024-03-08 |
Family
ID=81767406
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011391637.XA Active CN114578721B (zh) | 2020-12-02 | 2020-12-02 | 一种看门狗模块管理方法、装置和车辆 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114578721B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117331421B (zh) * | 2023-12-01 | 2024-03-19 | 深圳市航顺芯片技术研发有限公司 | 微控制芯片及其复位方法、存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1815449A (zh) * | 2005-02-01 | 2006-08-09 | 艾默生网络能源有限公司 | 看门狗控制方法 |
CN101271414A (zh) * | 2008-05-06 | 2008-09-24 | 江苏东大金智建筑智能化系统工程有限公司 | 嵌入式系统的全程喂狗方法 |
CN104090796A (zh) * | 2014-07-08 | 2014-10-08 | 成都万维图新信息技术有限公司 | 一种嵌入式设备程序更新方法和系统 |
JP2016218864A (ja) * | 2015-05-22 | 2016-12-22 | 日本精工株式会社 | プロセッサのリセット方法、プロセッサのリセットプログラム、このプログラムを搭載したマイクロコントローラを備えた電子制御装置、この電子制御装置を備えたモータ駆動システム及びこのモータ駆動システムを備えた工作機械 |
CN111767172A (zh) * | 2020-06-29 | 2020-10-13 | 深圳市宽宏科技有限公司 | 一种基于看门狗及bootloader的机顶盒自修复办法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7003775B2 (en) * | 2001-08-17 | 2006-02-21 | Hewlett-Packard Development Company, L.P. | Hardware implementation of an application-level watchdog timer |
-
2020
- 2020-12-02 CN CN202011391637.XA patent/CN114578721B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1815449A (zh) * | 2005-02-01 | 2006-08-09 | 艾默生网络能源有限公司 | 看门狗控制方法 |
CN101271414A (zh) * | 2008-05-06 | 2008-09-24 | 江苏东大金智建筑智能化系统工程有限公司 | 嵌入式系统的全程喂狗方法 |
CN104090796A (zh) * | 2014-07-08 | 2014-10-08 | 成都万维图新信息技术有限公司 | 一种嵌入式设备程序更新方法和系统 |
JP2016218864A (ja) * | 2015-05-22 | 2016-12-22 | 日本精工株式会社 | プロセッサのリセット方法、プロセッサのリセットプログラム、このプログラムを搭載したマイクロコントローラを備えた電子制御装置、この電子制御装置を備えたモータ駆動システム及びこのモータ駆動システムを備えた工作機械 |
CN111767172A (zh) * | 2020-06-29 | 2020-10-13 | 深圳市宽宏科技有限公司 | 一种基于看门狗及bootloader的机顶盒自修复办法 |
Non-Patent Citations (1)
Title |
---|
Linux看门狗管理及在DM8168芯片上的应用;刘永红;单片机与嵌入式系统应用(第12期);50-53 * |
Also Published As
Publication number | Publication date |
---|---|
CN114578721A (zh) | 2022-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101673303B1 (ko) | 와치독 제어 방법 및 장치 | |
CN106873943B (zh) | 嵌入式系统的固件升级方法 | |
US10089164B2 (en) | Watchdog timer | |
US7395455B2 (en) | System, method and program product for recovering from a failure | |
JP5244981B2 (ja) | マイクロコンピュータ及びその動作方法 | |
JPH063586B2 (ja) | 計算モジュールの監視方法 | |
CN114578721B (zh) | 一种看门狗模块管理方法、装置和车辆 | |
US8225289B2 (en) | Method and system for improved tool interaction with a target | |
CN105468390B (zh) | Boot在线升级装置及方法 | |
CN111240753A (zh) | 引导程序的加载方法、存储介质及嵌入式终端 | |
CN107391174B (zh) | 一种系统在线升级的控制方法及控制装置 | |
CN104391754A (zh) | 一种任务异常的处理方法及装置 | |
CN110262920B (zh) | Linux系统外置看门狗间接喂狗方法、看门狗喂狗代理驱动模块、看门狗系统 | |
KR102109125B1 (ko) | Autosar 기반 차량 ecu 상태 관리 방법 | |
CN109960599B (zh) | 芯片系统及其看门狗自检方法、电器设备 | |
CN107179980B (zh) | 用于监视计算系统的方法和相应的计算系统 | |
JP5533777B2 (ja) | プログラム群 | |
CN111290872A (zh) | 应用程序及应用程序的异常处理方法 | |
CN201638201U (zh) | 一种应用于嵌入式系统的看门狗设备 | |
EP2691853B1 (en) | Supervisor system resuming control | |
CN108205480B (zh) | 异常处理方法、装置、智能后视镜及存储介质 | |
US20140181799A1 (en) | Boot Bank Selection, Bios, Upgrades and Crisis Recovery In Intel Based Platforms | |
KR102119767B1 (ko) | 자율 주행 제어기에 소프트웨어 업데이트 위한 방법 | |
JP2827594B2 (ja) | マイクロプロセツサ装置のフアームウエア・オンライン更新方式及びその更新方法 | |
CN117008941B (zh) | 一种中断处理程序无感升级方法和计算机系统 |
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 |