【RT-Thread基础教程】Delay函数与空闲线程及其钩子函数_rtthread空闲任务钩子

本文介绍了RT-Thread操作系统中关于延迟函数rt_thread_delay(), rt_thread_mdelay(), rt_hw_us_delay(), rt_thread_delay_until()的使用,以及空闲线程的概念和作用。详细阐述了空闲线程如何处理系统空闲时间,其低优先级特性,以及内存释放过程。同时,分享了作者的嵌入式开发经验。" 96904007,8357538,Java实现SPFA算法详解,"['算法', '图论', 'java', '数据结构']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Delay函数

1.1 rt_thread_delay()函数

我们可以使用下面这个函数延时tick

rt\_err\_t rt\_thread\_delay(rt\_tick\_t tick);

参数为你要延时的tick。当前线程会阻塞让出 CPU 资源

1.2 rt_thread_mdelay()函数

我们可以使用下面这个函数实现ms级延时:

rt\_err\_t rt\_thread\_mdelay(rt\_int32\_t ms);

参数1为你要延时的ms时间
当前线程会阻塞让出 CPU 资源

1.3 rt_hw_us_delay()函数

我们可以使用下面这个函数实现微秒的延时

void rt\_hw\_us\_delay(rt\_uint32\_t us);

参数为你要延时的us时间。当前线程不会阻塞,这个函数是"死等指定时间“

1.4 rt_thread_delay_until函数

我们可以使用下面这个函数延时指定延时到tick+n

rt\_err\_t rt\_thread\_delay\_until(rt\_tick\_t \*tick, rt\_tick\_t inc_tick);

参数1为开始的tick,参数2为延时的tick多少

1.5 获取当前tick数

我们可以使用下面这个函数获取当前系统的tick数:</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值