掌桥专利:专业的专利平台
掌桥专利
首页

一种看门狗芯片的板上测试方法、装置及测试系统

文献发布时间:2024-04-18 19:58:53


一种看门狗芯片的板上测试方法、装置及测试系统

技术领域

本发明涉及电力系统自动控制技术领域,尤其涉及一种看门狗芯片的板上测试方法、装置及测试系统。

背景技术

随着电力系统运行的自动控制设备功能越来越强大,程序结构越来越复杂,指令代码越来越长,加之现场工作环境的影响,设备失控,程序“跑飞”,各功能模块“死机”的概率也大大增加。当程序运行出现异常时,需采取一些措施来保障系统程序失控后能自动恢复正常。目前常见的解决方法是在电路设计时使用看门狗(Watchdog)功能,能监测CPU程序运行错误后强制系统复位。

但当看门狗芯片被加工成PCBA(Printed Circuit Board Assembly,印刷电路板)后,对看门狗芯片的测试却很缺乏,甚至大部分情况下不进行测试,或者进行测试所需的步骤较多且效率低下。

鉴于此,如何能够实现一种新的看门狗芯片性能测试方法,是目前有待解决的一项重要问题。

发明内容

本发明提供了一种看门狗芯片的板上测试方法、装置及测试系统,以解决对看门狗芯片缺乏测试方法、测试步骤繁多以及测试效率低下的问题。

第一方面,本发明实施例提供了一种看门狗芯片的板上测试方法,该方法包括:

响应于上电启动信号,触发板内应用程序正常生成喂狗信号,并通过第一端口向测试模块发送第一波形信号,以标识看门狗芯片处于正常清零状态;

在通过第二端口接收到测试模块发送的测试启动信号时,触发应用程序停止发送喂狗信号,并同步通过第一端口向测试模块发送第二波形信号;

在被测单板经看门狗芯片成功复位后,重新通过第一端口向测试模块发送第一波形信号;

其中,所述测试模块用于根据所述第二波形信号的持续时间,验证被测单板上的看门狗芯片是否通过回路测试。

第二方面,本发明实施例还提供了一种看门狗芯片的板上测试装置,由集成有看门狗芯片的被测单板执行,该装置包括:

正常工作模块,用于响应于上电启动信号,触发板内应用程序正常生成喂狗信号,并通过第一端口向测试模块发送第一波形信号,以标识看门狗芯片处于正常清零状态;

测试响应模块,用于在通过第二端口接收到测试模块发送的测试启动信号时,触发应用程序停止发送喂狗信号,并同步通过第一端口向测试模块发送第二波形信号;

复位响应信号,用于在被测单板经看门狗芯片成功复位后,重新通过第一端口向测试模块发送第一波形信号;

其中,所述测试模块用于根据所述第二波形信号的持续时间,验证被测单板上的看门狗芯片是否通过回路测试。

第三方面,本发明实施例还提供了一种看门狗芯片的板上测试系统,所述测试系统包括:集成有看门狗芯片的被测单板以及测试模块。

所述被测单板,用于响应于上电启动信号,触发板内应用程序正常生成喂狗信号,并通过第一端口向测试模块发送第一波形信号,以标识看门狗芯片处于正常清零状态;在通过第二端口接收到测试模块发送的测试启动信号时,触发应用程序停止发送喂狗信号,并同步通过第一端口向测试模块发送第二波形信号;在被测单板经看门狗芯片成功复位后,重新通过第一端口向测试模块发送第一波形信号;

所述看门狗芯片,用于在接收到喂狗信号时,将内部实时累加的计时器进行清零处理,以及,在未接收到喂狗信号时,不再对所述计时器进行清零处理,并在所述计时器溢出时,对所述被测单板进行复位处理;

所述测试模块,用于根据所述第二波形信号的持续时间,验证被测单板上的看门狗芯片是否通过回路测试。

本发明实施例的技术方案,通过利用测试装置触发被测单板上的程序指令,从而控制被测单板对板上的看门狗芯片进行喂狗信号的输入控制,模拟真实环境下由于不可控因素导致的程序异常等情况,整个过程实现了自动化测试,简化了测试步骤,同时进一步提高了看门狗芯片测试的准确性,从而更好地保障系统程序以及高效完成程序失控后的自动恢复工作。

应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例的技术方案所适用的一种测试连接示意图;

图2是根据本发明实施例一提供的一种看门狗芯片的板上测试方法的流程图;

图3是本发明实施例的技术方案所适用的一种被测单板的测试流程图;

图4是根据本发明实施例二提供的一种看门狗芯片的板上测试装置的结构示意图;

图5是根据实现本发明实施例三提供的一种看门狗芯片的板上测试系统的测试流程图;

图6是本发明实施例的技术方案所适用的启动信号和响应信号的波形示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

实施例一

图1为针对本发明实施例的技术方案所适用的一种测试连接示意图,如图1所示,测试所需的被测单板与测试模块直接通过两路输入输出端口相连,例如,该端口可以为GPIO(General-purpose input/output,通用型之输入输出)端口。一路GPIO端口用作传输测试启动信号,由测试模块输出,被测单板负责接收该测试启动信号;另一路GPIO端口用作传输响应信号,由被测单板输出,测试模块负责采集该响应信号。所述被测单板是一个嵌入了看门狗芯片同时安装有应用程序的一个合成装置,而测试模块是一个可以接收和发出对应信号同时可以计时的装置。

图2为本发明实施例一提供的一种看门狗芯片的板上测试方法的流程图,本实施例可适用于对看门狗回路进行自动化测试的情况,该方法可以由一种看门狗芯片的板上测试装置来执行,该看门狗芯片板上测试装置可以采用硬件和/或软件的形式实现,该测试装置可配置于至少含有两路输入输出端口的设备中,也即,集成有看门狗芯片的被测单板中。

S210、响应于上电启动信号,触发板内应用程序正常生成喂狗信号,并通过第一端口向测试模块发送第一波形信号,以标识看门狗芯片处于正常清零状态。

具体的,上电是指测试开始后先将测单板通电,被测单板通电后其上安装的应用程序会接收到启动信号,进而会向看门狗芯片输出初始化的喂狗信号。由图1的测试连接图可知,被测单板上至少存在第一端口和第二端口,分别用作输入和输出,因此当应用程序响应上电启动信号对看门狗芯片执行喂狗程序的同时,会通过第一端口向测试模块输出第一波形信号,该波形信号也称作响应信号,目的是来标记此时看门狗芯片处于未触发复位阶段,即正常清零状态。上述过程称之为响应于上电启动信号的操作,其中,上电启动信号的电平可以是一直保持低电平状态。

可选的,所述第一端口和第二端口为GPIO端口。

S220、在通过第二端口接收到测试模块发送的测试启动信号时,触发应用程序停止发送喂狗信号,并同步通过第一端口向测试模块发送第二波形信号。

接着启动看门狗回路测试,测试启动信号是由测试模块发出经第二端口输入进被测单板的一种脉冲信号,当被测单板接收到该脉冲信号时会触发应用程序发送向看门狗停止喂狗的程序指令,同时会通过第一端口向测试模块输出第二波形信号,其中,第二波形信号可以是设定脉宽(例如,10ms)的脉宽响应信号。

S230、在被测单板经看门狗芯片成功复位后,重新通过第一端口向测试模块发送第一波形信号。

具体的,当看门狗芯片不再收到喂狗信号时,看门狗芯片中实时累加的计数结果无法有效的清零,当该计数结果溢出后,该看门狗芯片会向被测单板发送复位信号,以触发该被测单板进行复位重启。

被测单板被成功复位后不仅会对看门狗恢复喂狗,还会恢复向测试模块发送第一波形信号。对测试模块来说,接收信号的过程经历了第一波形信号、第二波形信号和第一波形信号三个阶段,进一步的,第一阶段接收信号为第一波形信号时标志着该阶段被测单板正常对看门狗进行喂狗工作;第二阶段当接收信号为第二波形信号时标志着此时被测单板已对看门狗停止喂狗;第三阶段当接收信号重新变回第一波型信号时标志着被测单板已被重新启动即已恢复对看门狗芯片喂狗。

其中,所述测试模块用于根据所述第二波形信号的持续时间,验证被测单板上的看门狗芯片是否通过回路测试。

进一步的,测试模块从接收到的信号由第一波型信号变为第二波形信号时开始计时,当接收到的信号由第二波形信号变回第一波形信号时停止计时,即测试模式记录了第二波形信号的持续时间,该持续时间也是看门狗从发现喂狗程序停止到恢复喂狗程序的用时,用该时间与理论上看门狗重启程序所用时间比较,可以由此判断看门狗芯片是否正常工作,若判定为正常工作则可认为看门狗芯片通过了回路测试。

可选的,所述第一波形信号可以为低电平信号;所述测试启动信号可以为由低电平跳变至高电平的脉冲信号;所述第二波形信号为设定脉宽的方波信号。

由上述过程可以得出被测单板的测试流程,如图3所示。其中,被测单板从正常喂狗到停止喂狗的变化是由于测试模块向应用程序输入低电平信号引起的,而被测单板从停止喂狗到恢复对看门狗芯片喂狗的变化是由于看门狗芯片对被测单板的重置引起的,当被测单板恢复正常喂狗后标志着对看门狗芯片的测试结束。

在本发明实施例中,在看门狗芯片与测试模块中利用被测单板做中介,测试装置通过触发被测单板上的程序指令,进而控制被测单板对看门狗芯片的输入输出,模拟真实环境下由于不可控因素导致的程序异常等情况,实现了对看门狗芯片的自动化测试。

本发明实施例的技术方案中被测单板通过响应上电启动信号,触发板内应用程序正常生成喂狗信号,并通过第一端口向测试模块发送第一波形信号,以标识看门狗芯片处于正常清零状态;在通过第二端口接收到测试模块发送的测试启动信号时,触发应用程序停止发送喂狗信号,并同步通过第一端口向测试模块发送第二波形信号;在被测单板经看门狗芯片成功复位后,重新通过第一端口向测试模块发送第一波形信号。提供了一种新的看门狗芯片的板上测试方法,通过将被测单板与测试模块直接通过2路GPIO相连,既简化了测试步骤又提升了测试效率,进一步提高了对看门狗芯片测试的准确性,从而更好地保障系统程序以及高效完成程序失控后的自动恢复工作。

实施例二

本发明实施例二提供了一种看门狗芯片的板上测试装置,由集成有看门狗芯片的被测单板执行,如图4所示,所述装置包括:

正常工作模块410,用于响应于上电启动信号,触发板内应用程序正常生成喂狗信号,并通过第一端口向测试模块发送第一波形信号,以标识看门狗芯片处于正常清零状态;

测试响应模块420,用于在通过第二端口接收到测试模块发送的测试启动信号时,触发应用程序停止发送喂狗信号,并同步通过第一端口向测试模块发送第二波形信号;

复位响应模块430,用于在被测单板经看门狗芯片成功复位后,重新通过第一端口向测试模块发送第一波形信号;

其中,所述测试模块用于根据所述第二波形信号的持续时间,验证被测单板上的看门狗芯片是否通过回路测试。

本发明实施例的技术方案中被测单板通过响应上电启动信号,触发板内应用程序正常生成喂狗信号,并通过第一端口向测试模块发送第一波形信号,以标识看门狗芯片处于正常清零状态;在通过第二端口接收到测试模块发送的测试启动信号时,触发应用程序停止发送喂狗信号,并同步通过第一端口向测试模块发送第二波形信号;在被测单板经看门狗芯片成功复位后,重新通过第一端口向测试模块发送第一波形信号。提供了一种新的看门狗芯片的板上测试方法,通过将被测单板与测试模块直接通过2路GPIO相连,既简化了测试步骤又提升了测试效率,进一步提高了对看门狗芯片测试的准确性,从而更好地保障系统程序以及高效完成程序失控后的自动恢复工作。

可选的,所述第一端口和第二端口为GPIO端口;

进一步的,所述第一波形信号为低电平信号;所述测试启动信号为由低电平跳变至高电平的脉冲信号;所述第二波形信号为设定脉宽的方波信号。

本发明实施例所提供的一种看门狗芯片的板上测试装置可执行本发明任意实施例所提供的一种看门狗芯片的板上测试方法,具备执行方法相应的功能模块和有益效果。

实施例三

本发明实施例三提供了一种看门狗芯片的板上测试系统,所述测试系统包括:集成有看门狗芯片的被测单板与测试模块。

所述被测单板,用于响应于上电启动信号,触发板内应用程序正常生成喂狗信号,并通过第一端口向测试模块发送第一波形信号,以标识看门狗芯片处于正常清零状态;在通过第二端口接收到测试模块发送的测试启动信号时,触发应用程序停止发送喂狗信号,并同步通过第一端口向测试模块发送第二波形信号;在被测单板经看门狗芯片成功复位后,重新通过第一端口向测试模块发送第一波形信号;

所述看门狗芯片,用于在接收到喂狗信号时,将内部实时累加的计时器进行清零处理,以及,在未接收到喂狗信号时,不再对所述计时器进行清零处理,并在所述计时器溢出时,对所述被测单板进行复位处理;

所述测试模块,用于根据所述第二波形信号的持续时间,验证被测单板上的看门狗芯片是否通过回路测试;

其中,所述第一端口和第二端口为GPIO端口;

可选的,所述第一波形信号为低电平信号;所述测试启动信号为由低电平跳变至高电平的脉冲信号;所述第二波形信号为设定脉宽的方波信号;

所述测试模块具体用于:统计所述第二波形信号中包括的脉冲个数,如果所述脉冲个数未超过预设的数量阈值,则确定所述被测单板上的看门狗芯片通过回路测试。

图5示出了可以用来实施本发明的实施例的测试系统的测试流程图。由于图3中已经示出了被测单板测试流程,因此在本发明实施例中以测试模块的测试过程为视角对所述测试系统进行说明。

测试模块上电启动后,初始化测试模块与被测单板之间的两个GPIO端口,,并将复位时间T初始化为0,若复位时间T不为0则重新初始化GPIO端口并执行上述操作,直至复位时间T归0。在测试模块向被测单板输出测试启动信号之前,被测单板会触发板上应用程序正常生成喂狗信号,使得板上的看门狗芯片处于正常清零状态,进而该测试模块会首先收到被测单板发送的低电平响应信号。

之后,当测试模块在接收到被测单板发送的低电平响应信号后,生成并输出测试启动信号,且确定复位时间初始化为0时,由于被测单板已收到由测试模块发来的测试启动信号并已停止向看门狗芯片喂狗,因此被测单板会通过一个GPIO端口向测试模块输出设定脉宽的脉冲信号,测试模块接收到的信号也由低电平响应信号变为了指定脉宽的脉冲信号。在接收到该脉冲信号后复位时间T持续累加,直至测试模块不再收到该脉冲信号,也即,被测单板被重置并重新向测试模块输出低电平响应信号,此时测试模块停止对复位时间T的累加。将该复位时间T与预先设定的阈值进行误差判定,若未超过阈值则认为看门狗芯片处于正常状态,能够正常识别程序异常并且能够及时重置异常程序,判定回路测试成功,反之,回路测试失败。

图6示出了启动信号和响应信号的波形示意图,结合图6可知,复位时间T实际上就是第二波形信号所持续的时间,即看门狗芯片重置程序直至程序恢复正常的时间。由于第二波形信号为10ms的脉冲信号,因此根据第二波形信号中总脉冲信号的数量可以计算出总复位时间T,进而根据总复位时间T可以判断出本次看门狗回路测试成功与否。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

技术分类

06120116514169