其他分享
首页 > 其他分享> > RT-thread微秒延时?

RT-thread微秒延时?

作者:互联网

今天继续做之前的东西,使用了RT-thread操作系统。程序中有AT24C02的相关操作AT24C02的操作的接口是IIC接口,所以又涉及到IIC。程序用的模拟的IIC,IIC的时序挺严格的,有微秒的延时操作。由于模拟IIC程序中的延时操作用的是裸机实现滴答定时器的延时方式,所以造成程序卡死。要解决这个问题第一时间想到的是RT-Thread有没有相关的微秒级别的延时API。由于是在MDk软件包添加的RTT,所以 没找到相关的API。求助百度发现真的有相关的函数实现微秒延时的。
在这里插入图片描述
RT-thread论坛上有人说drv_common.c上过有这个微秒函数的实现。但是很玄学啊,之前在RT-thread的4.0.1的源码中找到了这个文件。而现在下同一个版本的源码我却找不到了drv_common.c这个文件了,很玄学啊。好吧,那去官方手册上找吧。找到的函数代码如下:
在这里插入图片描述
这个函数延时微秒时间不能超过一个OS tick即1/RT_TICK_PER_SECOND s

标签:RT,函数,thread,IIC,延时,微秒
来源: https://blog.csdn.net/qq_36413982/article/details/94044644