在程序中使用了RT-Thread中的软件定时器,初始化时候设定了一个超时时间为10S。我目前想实现的功能为:
1.在10S之内,发生了特定的事件,则将定时器复位重新开始计数直到超时;(假如一直有特定事件发生,则超时触发函数一直不会执行)
我实际调试发现:在特定事件发生时候,调用了rt_
timer_control()函数重新设定超时函数定时时间。
rt_timer_control(&System_Updates_Hz_Timer,RT_TIMER_CTRL_SET_TIME, &Change_Timer);
//重新设定定时器时间,重新开始定时。检测缓冲数组2是否超时时刻还未接收满数据
可时间软件定时器触发超时函数的时间似乎一直没有改变,计算时间是从软件定时器初始化时候开始计算的。请问,该使用什么方法重新设定软件定时器的定时时间呢?