一种嵌入式系统硬件模块离线状态的检测方法及系统技术方案

技术编号:25708224 阅读:71 留言:0更新日期:2020-09-23 02:55
本发明专利技术提供了一种嵌入式系统硬件模块离线状态的检测方法及系统,检测方法包括:通过每一个硬件模块的响应时间和标准响应时间的响应时间差,得出每一个硬件模块的状态;根据所有的硬件模块的检测结果与对比结果,采取相应的操作。检测系统包括微处理器、存储器单元、人机交互界面。通过位操作,替代结构体成员变量,节省了系统内存空间;通过位操作,不再需要重复地对所有硬件模块轮询处理,只有当硬件模块状态发生变化时才进行处理,节省了微处理器资源;不再局限于单个微处理器的嵌入式系统,而可以应用于多个微处理器的情况,简化了在多个微处理器之间获取硬件模块状态信息的过程。本发明专利技术主要用于硬件模块检测领域。

【技术实现步骤摘要】
一种嵌入式系统硬件模块离线状态的检测方法及系统
本专利技术涉及硬件模块检测领域,尤其涉及一种嵌入式系统硬件模块离线状态的检测方法及系统。
技术介绍
嵌入式系统的应用十分广泛,涉及工业生产、日常生活、工业控制、航空航天等多个领域,而且随着电子技术和计算机软件技术的发展,不仅在这些领域中的应用越来越深入,而且在其他传统的非信息类设备中也逐渐显现其用武之地。广泛的应用和智能发展,对嵌入式系统的硬件和软件组成提出了更高的要求。针对一些硬件线路较为复杂的嵌入式系统,排查其硬件部分的故障,需要花费很多的时间。很多嵌入式产品在对于硬件模块离线状态检测的方案中,会选在在程序中定义一个关于模块状态的结构体,结构体中的成员变量对应相应的硬件模块,在系统中断处理程序中对模块状态进行检测,最后通过指示灯、蜂鸣器等来提示硬件故障。然而,当系统比较庞大,硬件模块较多时,如果对每一个模块都需要定义一个结构体成员变量,硬件模块离线测试方案则较为复杂,需要占用较大的内存,且无论系统的状态信息是否发生改变,都需要对所有的成员变量做出判断,占用较多的微处理器资源。对于仅仅作为整个系统运行情况辅助测试的硬件模块离线测试,如果占用太多主任务的微处理器资源,可能会导致系统的运行状况出现问题。因此,如何设计一种相对简单,不需要太多内存和微处理器资源的嵌入式系统硬件模块检测方法及系统,是这方面的重点和难点。
技术实现思路
本专利技术的目的在于提出一种嵌入式系统硬件模块离线状态的检测方法,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。为了实现上述目的,本专利技术采用以下的技术方案,适用于循环检测嵌入式系统的所有硬件模块,提出了一种嵌入式系统硬件模块离线状态的检测方法,包括以下步骤:设定N为嵌入式系统中硬件模块的编号,设置N的初始值为1,N的取值范围为[1,M],M为硬件模块总数量;硬件模块的状态标记包括离线、在线两种状态,设置所有硬件模块的初始状态标记为在线;S100:设置N等于1;S200:检测第N个硬件模块的响应时间t2,将所测得的响应时间t2与第N个硬件模块的标准响应时间t1相减,以获得响应时间差t3;S300:当N小于M时,如果响应时间差t3大于设定值,将所述第N个硬件模块的状态标记设置为离线,令N增加1并转到S200,即检测下一个硬件模块;当N小于M时,如果响应时间差t3小于等于设定值,将所述第N个硬件模块的状态标记设置为在线,令N增加1并转到S200,即检测下一个硬件模块;当N等于M时,转到S400;S400:当N等于M时,如果所有的硬件模块的检测结果与所有的硬件模块的对比结果完全相同,则保存当前所有硬件模块的检测结果,并转到S100,即进行下一次循环检测;如果所有硬件模块的检测结果与所有硬件模块的对比结果不完全相同,则保存当前所有硬件模块的检测结果,并通过人机交互界面显示,然后转到S100,即进行下一次循环检测。进一步的,所述嵌入式系统的硬件模块包括微处理器模块、存储器模块、电源模块、复位模块。具体的,检测第N个硬件模块的响应时间t2的方法为:计算微处理器接收到硬件模块发送的数据后微处理器进入中断处理操作的时间,并将所述时间作为第N个硬件模块的响应时间t2;所述第N个硬件模块的标准响应时间t1在第一次循环检测中为微处理器初始运行时间,在第一次循环检测后的循环检测中为上一次循环检测中第N个硬件模块的响应时间,所述第一次循环检测为微处理器第一次运行步骤S100到S400的检测;所述上一次循环检测为微处理器上一次运行步骤S100到S400的检测;所述下一次循环检测为微处理器下一次运行步骤S100到S400的检测;所述设定值为50ms。具体的,硬件模块的检测结果为硬件模块的编号及状态标记;所述硬件模块的对比结果为硬件模块上一次循环检测的编号及状态标记。进一步的,所有硬件模块的检测结果与所有硬件模块的对比结果完全相同,即所有硬件模块的编号及状态标记与上一次循环检测所有硬件模块的的编号及状态标记完全相同;所述所有硬件模块的检测结果与对比结果不完全相同,即大于等于1个硬件模块的编号及状态标记与上一次循环检测的对应硬件模块的编号及状态标记不相同。进一步的,保存当前所有硬件模块的检测结果为保存当前所有硬件模块的编号和状态标记作为上一次循环检测的所有硬件模块的编号和状态标记,即将本次所有硬件模块的检测结果更新为所有硬件模块的新的对比结果。具体的,人机交互界面包括显示屏;所述通过人机交互界面显示的方法为,将硬件模块的检测结果中与硬件模块的对比结果不相同的硬件模块的状态标记及其对应的编号推送到人机交互界面显示。本专利技术还提出了一种嵌入式系统硬件模块离线状态的检测系统,包括:微处理器;存储器单元:配置为存储计算机程序指令,所述计算机程序指令适于由所述微处理器加载并执行所述的一种嵌入式系统硬件模块离线状态的检测方法;进一步的,所述检测系统还包括人机交互界面,所述人机交互界面包括显示屏。本专利技术的有益效果为:通过位操作,替代结构体成员变量,节省了系统内存空间;通过位操作,不再需要重复地对所有硬件模块轮询处理,只有当硬件模块状态发生变化时才进行处理,节省了微处理器资源;不再局限于单个微处理器的嵌入式系统,而可以应用于多个微处理器的情况,简化了在多个微处理器之间获取硬件模块状态信息的过程。附图说明图1所示为本专利技术实施例的一种嵌入式系统硬件模块离线状态的检测方法流程图。具体实施方式为了使本领域的技术人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下,所获得的所有其他实施例,都应当属于本专利技术保护的范围。需要说明的是,本专利技术的说明书和权利要求书及上述参照附图中的术语是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。对本专利技术的优选实施例进行详细说明,在描述过程中省略了对于本专利技术来说是不必要的细节和功能,以防止对本专利技术的理解造成混淆。以下,以本专利技术应用于嵌入式系统的场景为例,对本专利技术进行了详细描述。但本专利技术并不局限于此,本专利技术也可以应用于其它任意混合结构。以下将结合实施例和附图对本专利技术的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本专利技术的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。附图中各处使用的相同的附图标记指示相同或相似的部分。图1所示为本专利技术实施例的一种嵌入式系统硬件模块离线状态的检本文档来自技高网...

【技术保护点】
1.一种嵌入式系统硬件模块离线状态的检测方法,其特征在于,所述方法包括以下步骤:/n设定N为嵌入式系统中硬件模块的编号,设置N的初始值为1,N的取值范围为[1,M],M为硬件模块总数量;硬件模块的状态标记包括离线、在线两种状态,设置所有硬件模块的初始状态标记为在线;/nS100:设置N等于1;/nS200:检测第N个硬件模块的响应时间t2,将所测得的响应时间t2与第N个硬件模块的标准响应时间t1相减,以获得响应时间差t3;/nS300:当N小于M时,如果响应时间差t3大于设定值,将所述第N个硬件模块的状态标记设置为离线,令N增加1并转到S200,即检测下一个硬件模块;当N小于M时,如果响应时间差t3小于等于设定值,将所述第N个硬件模块的状态标记设置为在线,令N增加1并转到S200,即检测下一个硬件模块;当N等于M时,转到S400;/nS400:当N等于M时,如果所有的硬件模块的检测结果与所有的硬件模块的对比结果完全相同,则保存当前所有硬件模块的检测结果,并转到S100,即进行下一次循环检测;如果所有硬件模块的检测结果与所有硬件模块的对比结果不完全相同,则保存当前所有硬件模块的检测结果,并通过人机交互界面显示,然后转到S100,即进行下一次循环检测。/n...

【技术特征摘要】
1.一种嵌入式系统硬件模块离线状态的检测方法,其特征在于,所述方法包括以下步骤:
设定N为嵌入式系统中硬件模块的编号,设置N的初始值为1,N的取值范围为[1,M],M为硬件模块总数量;硬件模块的状态标记包括离线、在线两种状态,设置所有硬件模块的初始状态标记为在线;
S100:设置N等于1;
S200:检测第N个硬件模块的响应时间t2,将所测得的响应时间t2与第N个硬件模块的标准响应时间t1相减,以获得响应时间差t3;
S300:当N小于M时,如果响应时间差t3大于设定值,将所述第N个硬件模块的状态标记设置为离线,令N增加1并转到S200,即检测下一个硬件模块;当N小于M时,如果响应时间差t3小于等于设定值,将所述第N个硬件模块的状态标记设置为在线,令N增加1并转到S200,即检测下一个硬件模块;当N等于M时,转到S400;
S400:当N等于M时,如果所有的硬件模块的检测结果与所有的硬件模块的对比结果完全相同,则保存当前所有硬件模块的检测结果,并转到S100,即进行下一次循环检测;如果所有硬件模块的检测结果与所有硬件模块的对比结果不完全相同,则保存当前所有硬件模块的检测结果,并通过人机交互界面显示,然后转到S100,即进行下一次循环检测。


2.根据权利要求1所述的一种嵌入式系统硬件模块离线状态的检测方法,其特征在于,所述检测第N个硬件模块的响应时间t2的方法为:计算微处理器接收到硬件模块发送的数据后微处理器进入中断处理操作的时间,并将所述时间作为第N个硬件模块的响应时间t2;所述第N个硬件模块的标准响应时间t1在第一次循环检测中为微处理器初始运行时间,在第一次循环检测后的循环检测中为上一次循环检测中第N个硬件模块的响应时间,所述第一次循环检测为微处理器第一次运行步骤S100到S400的检测;所述上一次循环检测为微处理器上一次运行步骤S100到S400的检测;所述下一次循环检...

【专利技术属性】
技术研发人员:张云志黄敬凯
申请(专利权)人:佛山科学技术学院
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1