时钟管理
优质
小牛编辑
131浏览
2023-12-01
时钟管理接口
函数 | |
rt_tick_t | rt_tick_get (void) |
获取系统时钟节拍值 | |
void | rt_tick_set (rt_tick_t tick) |
设置系统时钟节拍值 | |
void | rt_tick_increase (void) |
增加系统时钟节拍值 | |
int | rt_tick_from_millisecond (rt_int32_t ms) |
节拍到毫秒的转换 | |
详细描述
时钟管理接口
RT-Thread的时钟管理以时钟节拍为基础,时钟节拍指的是周期性硬件定时器两次中断间的间隔时间长度, 这个周期性硬件定时器称之为系统时钟。时钟节拍(OS Tick)是RT-Thread 操作系统中最小的时钟单位, 系统节拍一般定义为32位无符号整数,提供给应用程序所有和时间有关的服务, 如线程的延时、线程的时间片轮转调度以及定时器超时等,从系统启动开始计数的时钟节拍数称为系统时间。 时钟节拍来源于定时器的周期性中断,一次中断表示一个OS Tick。 OS Tick的长度可以根据RT_TICK_PER_SECOND的定义来调整, 等于1/RT_TICK_PER_SECOND秒,精度越高的时钟将导致系统中定时器频繁检查。
函数说明
rt_tick_t rt_tick_get | ( | void | ) |
获取系统时钟节拍值
该函数将返回自操作系统启动以来到当前的系统时钟计数值
- 返回
- 当前系统节拍计数值
- 示例:
- hwtimer_sample.c , 以及 priority_inversion.c.
void rt_tick_set | ( | rt_tick_t | tick | ) |
设置系统时钟节拍值
该函数将设定当前的系统时钟节拍计数值。
void rt_tick_increase | ( | void | ) |
增加系统时钟节拍值
该函数将通知内核经过了一个系统时钟的时间,通常该函数在时钟中断里调用。
int rt_tick_from_millisecond | ( | rt_int32_t | ms | ) |
节拍到毫秒的转换
该函数把毫秒转换为系统时钟节拍计数值。
- 参数
ms 指定的时间(毫秒) - 为负数时将永远等待
- 为0时不等待立即返回
- 最大值为 0x7fffffff
- 返回
- 计算后的系统时钟节拍数