一种TIMER定时器修正方法、系统及PSAM卡技术方案

技术编号:34334463 阅读:11 留言:0更新日期:2022-07-31 02:42
本发明专利技术公开了一种TIMER定时器修正方法、系统及PSAM卡,其方法包括步骤:在系统启动时运行定时器;根据所述定时器的启动时间和各个时隙中预设的中断时段,设置所述定时器在第一时隙中的时隙间隔为第一时间间隔,使所述定时器根据所述第一时间间隔在所述第一时隙中的所述中断时段内执行中断;经过所述第一时隙后,修改所述定时器在后续各个时隙中的时隙间隔均为第二时间间隔,使所述定时器在后续各个时隙中,均在当前时隙中所述中断时段内执行中断。本发明专利技术可以在现有定时器硬件基础上进行软件改进,避免执行中断动作时由于偏差累加导致中断动作在错误的时隙上执行,提高定时中断的时间精度。时间精度。时间精度。

A timer correction method, system and PSAM card

【技术实现步骤摘要】
一种TIMER定时器修正方法、系统及PSAM卡


[0001]本专利技术涉及TIMER定时器
,特别涉及一种TIMER定时器修正方法、系统及PSAM卡。

技术介绍

[0002]在系统运行过程中经常需要使用TIMER定时器进行定时,在对应时间点执行预设动作。例如起一个时间间隔为T的定时器,每隔T时段采集一次信号。一般情况下,给定起始时间,如果CPU运行速度足够快,那么开启TIMER定时器所需的时间就可以被忽略,即执行start_timer的时间不会影响后续采样动作的执行。但是由于实际运行过程中系统的MCU主频无法达到理想速度,因此从接到信号开启TIMER开始,调用start_timer这个函数本身就占用了大量时间,这样导致后续的采样动作容易在错误的时隙上执行,进而导致运行错误。
[0003]现在存在的解决方案是在使用TIMER时,在每一个时隙都调用stop_timer和start_timer,在调用start_timer时将这stop_timer和start_timer两个函数自身执行时间扣除,保证系统运行正常。但这个方案需要保证每个时隙中stop_timer的执行时间和start_timer的执行时间均可精确获得,而实际情况是这两个时间是没有办法精确测量。如果每个时隙中stop_timer和start_timer两个函数的时间均产生1的偏差,累计n个时隙之后,这个偏差就是n*1,除非需要的中断点较少,否则累计的偏差还是会导致中断动作在错误的时隙上执行的问题。
[0004]因此目前需要一种TIMER定时器修正方法,在不改变硬件基础的情况下,避免系统运行过程中偏差的累加导致中断动作在错误的时隙上执行的技术问题,在对时间精度要求较高的场景中,满足定时执行动作的需求。

技术实现思路

[0005]为解决系统运行过程中偏差的累加导致中断动作在错误的时隙上执行的技术问题,本专利技术提供一种TIMER定时器修正方法、系统及PSAM卡,具体的技术方案如下:
[0006]本专利技术提供一种TIMER定时器修正方法,包括步骤:
[0007]在系统启动时运行定时器,根据所述定时器的启动时间和各个时隙中预设的中断时段,设置所述定时器在第一时隙中的时隙间隔为第一时间间隔,使所述定时器根据所述第一时间间隔在所述第一时隙中的所述中断时段内执行中断;
[0008]经过所述第一时隙后,修改所述定时器在后续各个时隙中的时隙间隔均为第二时间间隔,使所述定时器在后续各个时隙中,均在当前时隙中所述中断时段内执行中断。
[0009]本专利技术提供的TIMER定时器修正方法通过在系统启动时只启动一次定时器,并两次执行定时器的时隙间隔的修改动作,实现基于现有的TIMER硬件方案,通过软件方式进行修正,使各个时隙均满足定时中断要求,避免在错误时隙中断的。
[0010]在一些实施方式中,所述定时器基于ARM架构实现;
[0011]所述的经过所述第一时隙后,修改所述定时器在后续各个时隙中的时隙间隔均为
第二时间间隔之前,还包括:
[0012]在系统启动时运行定时器,根据所述定时器的启动时间和各个时隙中预设的中断时段,设置所述定时器在所述第一时隙和第二时隙中的时隙间隔均为第三时间间隔,使所述定时器根据所述第三时间间隔,分别在所述第一时隙中的所述中断时段和所述第二时隙中的所述中断时段内执行中断。
[0013]本专利技术提供的TIMER定时器修正方法针对ARM架构中定时器进行方案优化,在第一次设置定时器时隙间隔时,考虑针对ARM架构中定时器在第一时隙结束后修改时隙间隔时,要等到再第三时隙才正式生效,因此综合考虑第一时隙和第二时隙中的中断时段,设置第三时间间隔,提高在各时隙中的中断执行动作的准确性。
[0014]在一些实施方式中,在各个时隙中预设中断时刻;
[0015]所述的经过所述第一时隙后,修改所述定时器在后续各个时隙中的时隙间隔均为第二时间间隔,使所述定时器在后续各个时隙中,均在当前时隙中的所述中断时段内执行中断,具体包括:
[0016]经过所述第一时隙后,修改所述定时器在后续各个时隙中的时隙间隔均为第二时间间隔,使所述定时器在后续各个时隙中,均在当前时隙中的所述中断时刻执行中断。
[0017]本专利技术提供的TIMER定时器修正方法根据中断时刻确定定时器的第二时间间隔,使第三时隙及后续各个时隙中,定时器均可在更为精确的中断时刻执行中断,进一步提高中断动作执行的准确性。
[0018]在一些实施方式中,所述中断时段根据所述中断时刻和所述定时器的占空比设置。
[0019]在一些实施方式中,任意两个相邻时隙内所述中断时刻的时间差值相同;
[0020]所述的修改所述定时器在后续各个时隙中的时隙间隔均为第二时间间隔,具体包括:
[0021]修改所述定时器在后续各个时隙中的时隙间隔均为所述时间差值。
[0022]在一些实施方式中,所述的修改所述定时器在后续各个时隙中的时隙间隔均为第二时间间隔,具体包括:
[0023]通过修改所述定时器中Auto

reload寄存器,修改所述定时器在后续各个时隙中的时隙间隔均为所述第二时间间隔。
[0024]在一些实施方式中,所述定时器每次执行中断后,在当前时刻执行数据采样。
[0025]本专利技术提供的TIMER定时器修正方法适用于需要采样的场合,通过定时器执行中断动作提高定时采样的准确性。
[0026]在一些实施方式中,本专利技术还提供一种TIMER定时器修正系统,包括:
[0027]设置模块,用于在系统启动时运行定时器,根据所述定时器的启动时间和各个时隙中预设的中断时段,设置所述定时器在第一时隙中的时隙间隔为第一时间间隔,使所述定时器根据所述第一时间间隔在所述第一时隙中的所述中断时段内执行中断;
[0028]修改模块,用于经过所述第一时隙后,修改所述定时器在后续各个时隙中的时隙间隔均为第二时间间隔,使所述定时器在后续各个时隙中,均在当前时隙中所述中断时段内执行中断。
[0029]在一些实施方式中,本专利技术还提供一种PSAM卡,包括处理器、存储器以及存储在所
述存储器中并可在所述处理器上运行的计算机程序,所述处理器,用于执行所述存储器上所存放的计算机程序,实现上述的TIMER定时器修正方法所执行的操作。
[0030]在一些实施方式中,本专利技术还提供一种手持POS机,包括上述的PSAM卡,或实现上述的TIMER定时器修正方法的终端。
[0031]本专利技术提供的TIMER定时器修正方法、系统及PSAM卡,至少包括以下一项技术效果:
[0032](1)通过在系统启动时只启动一次定时器,并两次执行定时器的时隙间隔的修改动作,实现基于现有的TIMER硬件方案,通过软件方式进行修正,使各个时隙均满足定时中断要求,避免在错误时隙中断的;
[0033](2)针对ARM架构中定时器进行方案优化,在第一次设置定时器时隙间隔时,考虑针对ARM架构中定本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种TIMER定时器修正方法,其特征在于,包括步骤:在系统启动时运行定时器;根据所述定时器的启动时间和各个时隙中预设的中断时段,设置所述定时器在第一时隙中的时隙间隔为第一时间间隔,使所述定时器根据所述第一时间间隔在所述第一时隙中的所述中断时段内执行中断;经过所述第一时隙后,修改所述定时器在后续各个时隙中的时隙间隔均为第二时间间隔,使所述定时器在后续各个时隙中,均在当前时隙中的所述中断时段内执行中断。2.根据权利要求1所述的一种TIMER定时器修正方法,其特征在于,所述定时器基于ARM架构实现;所述的在系统启动时运行定时器之后,所述的经过所述第一时隙后,修改所述定时器在后续各个时隙中的时隙间隔均为第二时间间隔之前,还包括:根据所述定时器的启动时间和各个时隙中预设的中断时段,设置所述定时器在所述第一时隙和第二时隙中的时隙间隔均为第三时间间隔,使所述定时器根据所述第三时间间隔,分别在所述第一时隙中的所述中断时段和所述第二时隙中的所述中断时段内执行中断。3.根据权利要求2所述的一种TIMER定时器修正方法,其特征在于,在各个时隙中预设中断时刻;所述的经过所述第一时隙后,修改所述定时器在后续各个时隙中的时隙间隔均为第二时间间隔,使所述定时器在后续各个时隙中,均在当前时隙中的所述中断时段内执行中断,具体包括:经过所述第一时隙后,修改所述定时器在后续各个时隙中的时隙间隔均为第二时间间隔,使所述定时器在后续各个时隙中,均在当前时隙中的所述中断时刻执行中断。4.根据权利要求3所述的一种TIMER定时器修正方法,其特征在于,所述中断时段根据所述中断时刻和所述定时器的占空比设置。5.根据权利要求3所述的一种TIMER定时器修正方法,其特...

【专利技术属性】
技术研发人员:施惟林喆
申请(专利权)人:广东川田科技有限公司
类型:发明
国别省市:

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

1