CMSIS-RTOS 时间管理之虚拟定时器Virtual Timers

Posted zzdbullet

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CMSIS-RTOS 时间管理之虚拟定时器Virtual Timers相关的知识,希望对你有一定的参考价值。

虚拟定时器Virtual Timers

CMSIS-RTOS API里有几个向下计数的虚拟定时器,它们实现计数完成时用户的回调功能。每个定时器都可以配置成单次计数或重复计数模式,它们可以在定义定时器结构体的时候被创建:

osTimerDef(timer0, led_function);

在上面的代码中给定时器定义了一个名字timer0,并同时定义了回调函数led_function,紧接着必须对这个定时器进行实例化:

osTimerId timer0_handle = osTimerCreate(timer(timer0), osTimerPeriodic,(void*)0);

上面的代码创建了这个定时器,并把它定义成周期性定时器(还可以定义成单次定时器–osTimerOnce),最后一个参数0是传递给回调函数的实参,当定时器定时结束时会用的用到。

osTimerStart(timer0_handle, 0x100);

定时器可以在线程的任意位置启动,从上面的代码中可以看到,定时器启动函数使用的是timer0的句柄,并定义了0x100ms的周期定时。

 

以上是关于CMSIS-RTOS 时间管理之虚拟定时器Virtual Timers的主要内容,如果未能解决你的问题,请参考以下文章

CMSIS-RTOS 中断处理Interrupt Handling

KVM之使用virt-manager 管理工具创建虚拟机

CMSIS-RTOS 时间管理之时间延迟Time Delay

ARM官方《CMSIS-RTOS教程》之线程Threads

通过 KVM+virt-manager配置双屏虚拟机(两套键盘。鼠标)

虚拟化从VirtIO without Virt到DPU