嵌入式系统运行信息的获取方法及计算机可读存储介质技术方案

技术编号:38352817 阅读:8 留言:0更新日期:2023-08-05 17:25
本申请提供一种嵌入式系统运行信息的获取方法及计算机可读存储介质,所述运行信息包括嵌入式系统的至少一个外设的实时运行状态数据,所述获取方法包括以下步骤:执行预设的第一方案以获取所述运行信息并存储至嵌入式系统的第一存储区域;以及,在嵌入式系统进入HardFault中断前,执行预设的第二方案将所述运行信息从所述第一存储区域转存至第二存储区域。本申请提供的嵌入式运行信息的获取方法,能够保证在嵌入式系统处于不同状态时,特别是遭遇各类故障导致重启前能够及时、完整、准确地获取各个外设的实时状态数据。准确地获取各个外设的实时状态数据。准确地获取各个外设的实时状态数据。

【技术实现步骤摘要】
嵌入式系统运行信息的获取方法及计算机可读存储介质


[0001]本申请属于嵌入式系统
,具体地,涉及一种嵌入式系统运行信息的获取方法及计算机可读存储介质。

技术介绍

[0002]嵌入式系统是计算机技术、半导体技术及微电子技术等结合的产物,自其出现后即被迅速应用于航空、航天、军事、通信及家电等领域,近年来,随着人工智能及物联网技术的飞速发展,嵌入式系统在各类机器人智能控制、智能/自动驾驶等领域也获得了越来越广泛的应用。
[0003]嵌入式系统一般由硬件、操作系统及软件运行环境等部分组成,其中,硬件包括处理器、外设以及必要的外围电路等,通过运行于操作系统中的程序实现对硬件的控制,并完成特定的功能。围绕嵌入式系统的开发,其核心工作就是基于所使用的嵌入式系统的处理器架构和操作系统特性,开发、调试主控程序及各类外设的应用程序,以使其能够精确、稳定地控制各类外设完成设定功能,显然,只有准确地获取嵌入式系统的各类运行信息,才能够对系统运行过程中出现的各类软、硬件问题进行分析解决,以保证开发完成后的嵌入式系统能够安全稳定的运行。
[0004]目前各类成熟的嵌入式系统,均具有自带的运行数据获取机制或信息保存系统,然而,在实际使用过程中,利用上述系统自带的机制或系统,已经远远无法满足各类复杂及精密控制的应用场景中对各位数据进行及时、稳定获取的需求,因此,需要对现有的嵌入式系统数据获取机制进行改进,以保证在嵌入式系统运行过程中出现的各类故障及意外情况下,均能够有效地获取其运行信息。

技术实现思路

[0005]为解决上述现有技术中存在的问题,本申请的目的在于提供嵌入式系统运行信息的获取方法及存储运行该方法的可执行程序的计算机可读存储介质。
[0006]本申请通过实施例提供一种嵌入式系统运行信息的获取方法,所述运行信息包括嵌入式系统的至少一个外设的实时运行状态数据。
[0007]该获取方法包括以下步骤:执行预设的第一方案以获取所述运行信息并存储至嵌入式系统的第一存储区域;以及,在嵌入式系统进入HardFault中断前,执行预设的第二方案将所述运行信息从所述第一存储区域转存至第二存储区域。
[0008]进一步地,所述第一方案包括以下步骤:所述嵌入式系统持续运行主线程直到至少一个所述外设触发接收中断;执行数据更新函数以获取触发接收中断的外设的所述实时运行状态数据;将所述实时运行状态数据存储至所述第一存储区域;退出所述接收中断。
[0009]进一步地,所述第二方案包括以下步骤:中断当前执行的程序;周期性地重置看门狗的倒计时数据,直到遍历地将所述第一存储区域存储的各个外设的最近一次更新的实时运行状态数据转存至所述第二存储区域。
[0010]优选地,所述第二方案在所述嵌入式系统出现以下至少一种情况时执行:内存溢出、出现野指针、爆栈。
[0011]优选地,所述嵌入式系统为RT

Thread系统,以及,所述第二方案在所述RT

Thread系统的应用层执行。
[0012]优选地,所述运行信息还包括嵌入式系统的systick数据,以及,所述嵌入式系统运行信息的获取方法还包括以下步骤:在嵌入式系统发生操作系统运行错误时,执行预设的第三方案。
[0013]进一步地,所述第三方案包括以下步骤:获取所述systick数据并存储至所述第二存储区域;重启嵌入式系统。
[0014]具体地,所述操作系统运行错误的表现为嵌入式系统出现systick更新频率异常但未触发Hardfault中断。
[0015]优选地,该获取方法还包括以下步骤:将所述运行信息从所述第一存储区域转存至所述第二存储区域。
[0016]本申请通过实施例还提供一种计算机可读存储介质,存储有可执行程序,所述可执行程序能够被用于执行上述嵌入式系统运行信息的获取方法。
[0017]本申请的实施例提供的技术方案至少具有以下有益效果:
[0018]本申请提供的嵌入式系统运行信息的获取方法,通过第一方案在系统处于正常运行状态时以执行接收中断的方式获取各个外设的实时状态数据,并在系统处于能够引起重启的严重故障状态时,于系统进入HardFault中断前,通过执行第二方案避免看门狗引起的重启导致故障信息丢失,及时、完整、准确地获取各个外设的实时状态数据,有效地解决现有嵌入式系统自带的HardFault中断机制无法及时、有效地保存故障现场信息的问题。
附图说明
[0019]图1为一种现有的嵌入式系统的架构图;
[0020]图2为根据本申请的一些实施例的嵌入式系统运行信息的获取方法的流程图;
[0021]图3为根据本申请实施例第一方案及第二方案在嵌入式操作系统的主线程中的执行情况的示意图;
[0022]图4为在一些具体的实施例中,嵌入式系统执行第二方案的具体实施方式的示意图;
[0023]图5为根据本申请的一些实施例的嵌入式系统运行信息的获取方法的流程图;
[0024]图6为在一些具体的实施例中,嵌入式操作系统的主线程运行过程中执行第三方案的具体流程的示意图。
具体实施方式
[0025]以下,基于优选的实施方式并参照附图对本申请进行进一步说明。以下描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例,并且不应被理解为对本申请要求保护的技术方案的范围的限制。
[0026]此外,本说明书中所使用的术语,如“包括”、“具有”及其同源词,仅用于表示特定的特征、变量、数值、步骤、元件或上述各项的组合,不应被理解为排除至少一个其它特征、
变量、数值、步骤、元件或上述各项的组合的存在的可能性;并且,本说明书中所使用的例如“第一”、“第二”等词汇,仅用于区分描述,不应被理解为指示或暗示相对重要性。
[0027]除非另有限定,否则本说明书中所使用的技术术语和科学术语的含义与本领域的技术人员通常理解的含义相同。
[0028]为更加清晰地说明本申请要求保护的技术方案相对于现有技术的改进,首先对现有的嵌入式系统在开发过程中获取各类信息的机制及其与实际的信息获取需求之间存在的差距进行详细阐述。
[0029]图1示出了一种现有的嵌入式操作系统RT

Thread的架构图,基于该嵌入式操作系统能够开发嵌入式机器人系统、嵌入式无人车等,需要特别指出的是,本申请的说明书中,将嵌入式机器人系统、嵌入式无人车系统,以及其他类似的基于嵌入式操作系统所开发的软/硬件结合的系统称为嵌入式系统。
[0030]如图1所示,嵌入式操作系统一般整合了底层的实时操作系统(RTOS)内核、中间层的组件及服务(包括文件系统、网络框架、设备框架等)以及应用层的多种软件包(包括外设驱动、物联网、多媒体等),并能够支持ARM,RISC

V,Tricore等多种架构的芯片,通过外设驱动控制电机、机械臂、传感器等各种外围设备,并获取各种外围设备的运行信息。其中,一般地,运行信息包括各个外设的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种嵌入式系统运行信息的获取方法,所述运行信息包括嵌入式系统的至少一个外设的实时运行状态数据,其特征在于,包括以下步骤:执行预设的第一方案以获取所述运行信息并存储至嵌入式系统的第一存储区域;以及,在嵌入式系统进入HardFault中断前,执行预设的第二方案将所述运行信息从所述第一存储区域转存至第二存储区域。2.根据权利要求1所述的嵌入式系统运行信息的获取方法,其特征在于,所述第一方案包括以下步骤:所述嵌入式系统持续运行主线程直到至少一个所述外设触发接收中断;执行数据更新函数以获取触发接收中断的外设的所述实时运行状态数据;将所述实时运行状态数据存储至所述第一存储区域;退出所述接收中断。3.根据权利要求1所述的嵌入式系统运行信息的获取方法,其特征在于,所述第二方案包括以下步骤:中断当前执行的程序;周期性地重置看门狗的倒计时数据,直到遍历地将所述第一存储区域存储的各个外设的最近一次更新的实时运行状态数据转存至所述第二存储区域。4.根据权利要求1所述的嵌入式系统运行信息的获取方法,其特征在于,所述第二方案在所述嵌入式系统出现以下至少一种情况时执行:内存溢出、出现野指针、爆栈。5.根据权利要求1所述的嵌入式系统运行信息的...

【专利技术属性】
技术研发人员:邓子祺魏登亮刘天宇袁绍竣郭骥高枫孔德滨
申请(专利权)人:山东铂金动力科技有限公司
类型:发明
国别省市:

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

1