一种基于linux的红外信号调制方法及系统与流程

专利2022-06-30  57


本申请涉及计时领域,具体而言,涉及一种基于linux的红外信号调制方法。



背景技术:

现有的基于linux的嵌入式智能设备,在开发基于红外信号遥控的功能时,需要基于现有linux框架去通过定时开关红外信号灯来实现红外信号的调制。目前基于linux的红外信号调制有两种:(1)基于cpu忙等待来做时间计时。但是一个完整的红外信号总时间长,所以红外信号调试的时候需要长时间独占cpu。基于任务睡眠来做时间计时,但是精度较低(大于4ms),红外信号准确率低。



技术实现要素:

本申请的主要目的在于提供一种基于linux的红外信号调制方法,包括:

s2:启动linux高精度定时器;

s4:计算总时间是否到期;

s6:当所述总时间未到期时,重复步骤s4,当所述总时间到期时,关闭所述高精度定时器。

可选地,还包括:等待红外时间码。

可选地,还包括:初始化所述高精度定时器。

可选地,还包括高精度定时器回调步骤。

可选地,所述高精度定时器回调步骤包括:

当当前已发送信号数量小于总信号数时,开启或关闭红外灯;

当当前已发送信号数量不小于总信号数时,关闭所述高精度定时器,并重置当前已发送信号数。

设定下次定时器到期时间,且已发送信号数量加1。

根据本申请的一方面,还提供了一种基于linux的红外信号调制系统,包括:

启动模块,用于启动linux高精度定时器;

计算模块,用于计算总时间是否到期;

关闭模块,用于当所述总时间未到期时,重复上述步骤,当所述总时间到期时,关闭所述高精度定时器。

本申请还公开了一种计算机设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的方法。

本申请还公开了一种计算机可读存储介质,非易失性可读存储介质,其内存储有计算机程序,所述计算机程序在由处理器执行时实现上述任一项所述的方法。

本申请还公开了一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码由计算机设备执行时,导致所述计算机设备执行上述任一项所述的方法。

与现有技术相比,本申请具有如下有益效果:

高精度定时器时间精度高(精度小于40微秒),可以满足红外信号调制对时间精度的要求,红外信号易识别。

高精度定时间基于cpu内部的硬件定时器和中断实现,不需要cpu核心本身参与时间计算,不再长时间独占cpu,解决cpu占用率高,其他任务需要长时间等待和功耗过高的问题。

附图说明

构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和有益效果变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1-图2是根据本申请一个实施例的基于linux的红外信号调制方法的流程示意图;

图3是根据本申请一个实施例的计算机设备的示意图;以及

图4是根据本申请一个实施例的计算机可读存储介质的示意图。

具体实施方式

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

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

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

请参照图1-图2,本申请一实施例提供了一种基于linux的红外信号调制方法,包括:

s2:启动linux高精度定时器;

s4:计算总时间是否到期;

s6:当所述总时间未到期时,重复步骤s4,当所述总时间到期时,关闭所述高精度定时器。

本申请一实施例中,基于linux的红外信号调制方法还包括:等待红外时间码。

本申请一实施例中,基于linux的红外信号调制方法还包括:初始化所述高精度定时器。

本申请一实施例中,基于linux的红外信号调制方法还包括:还包括高精度定时器回调步骤。

本申请一实施例中,所述高精度定时器回调步骤包括:

当当前已发送信号数量小于总信号数时,开启或关闭红外灯;

当当前已发送信号数量不小于总信号数时,关闭所述高精度定时器,并重置当前已发送信号数。

设定下次定时器到期时间,且已发送信号数量加1。

本申请还提供了一种基于linux的红外信号调制系统,其特征在于,包括:

启动模块,用于启动linux高精度定时器;

计算模块,用于计算总时间是否到期;

关闭模块,用于当所述总时间未到期时,重复上述步骤,当所述总时间到期时,关闭所述高精度定时器。

与现有技术相比,本申请具有如下有益效果:

高精度定时器时间精度高(精度小于40微秒),可以满足红外信号调制对时间精度的要求,红外信号易识别。

高精度定时间基于cpu内部的硬件定时器和中断实现,不需要cpu核心本身参与时间计算,不再长时间独占cpu,解决cpu占用率高,其他任务需要长时间等待和功耗过高的问题。

请参照图3,本申请还提供了一种计算机设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的方法。

请参照图4,一种计算机可读存储介质,非易失性可读存储介质,其内存储有计算机程序,所述计算机程序在由处理器执行时实现上述任一项所述的方法。

一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码由计算机设备执行时,导致所述计算机设备执行上述任一项所述的方法。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。


技术特征:

1.一种基于linux的红外信号调制方法,其特征在于,包括:

s2:启动linux高精度定时器;

s4:计算总时间是否到期;

s6:当所述总时间未到期时,重复步骤s4,当所述总时间到期时,关闭所述高精度定时器。

2.根据权利要求1所述的基于linux的红外信号调制方法,其特征在于,还包括:等待红外时间码。

3.根据权利要求2所述的基于linux的红外信号调制方法,其特征在于,还包括:初始化所述高精度定时器。

4.根据权利要求3所述的基于linux的红外信号调制方法,其特征在于,还包括高精度定时器回调步骤。

5.根据权利要求4所述的基于linux的红外信号调制方法,其特征在于,所述高精度定时器回调步骤包括:

当当前已发送信号数量小于总信号数时,开启或关闭红外灯;

当当前已发送信号数量不小于总信号数时,关闭所述高精度定时器,并重置当前已发送信号数。

设定下次定时器到期时间,且已发送信号数量加1。

6.一种基于linux的红外信号调制系统,其特征在于,包括:

启动模块,用于启动linux高精度定时器;

计算模块,用于计算总时间是否到期;

关闭模块,用于当所述总时间未到期时,重复上述步骤,当所述总时间到期时,关闭所述高精度定时器。

7.一种计算机设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-5中任一项所述的方法。

8.一种计算机可读存储介质,非易失性可读存储介质,其内存储有计算机程序,其特征在于,所述计算机程序在由处理器执行时实现如权利要求1-5中任一项所述的方法。

9.一种计算机程序产品,包括计算机可读代码,其特征在于,当所述计算机可读代码由计算机设备执行时,导致所述计算机设备执行权利要求1-5中任一项所述的方法。

技术总结
本申请公开了一种基于linux的红外信号调制方法,包括:S2:启动linux高精度定时器;S4:计算总时间是否到期;S6:当所述总时间未到期时,重复步骤S4,当所述总时间到期时,关闭所述高精度定时器。与现有技术相比,本申请具有如下有益效果:高精度定时器时间精度高(精度小于40微秒),可以满足红外信号调制对时间精度的要求,红外信号易识别。高精度定时间基于CPU内部的硬件定时器和中断实现,不需要CPU核心本身参与时间计算,不再长时间独占CPU,解决CPU占用率高,其他任务需要长时间等待和功耗过高的问题。

技术研发人员:孟石
受保护的技术使用者:杭州涂鸦信息技术有限公司
技术研发日:2020.01.03
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-59664.html

最新回复(0)