[N32G43x] 关于FreeRTOS实现微秒级tick问题

[复制链接]
2142|23
wsdmzz 发表于 2023-4-11 14:49 | 显示全部楼层
wiba 发表于 2023-4-10 13:24
那么需要跑多少个空循环大概够30us呢


//粗延时函数,微秒
void delay_us(u16 time)
{   
   u16 i=0;  
   while(time--)
   {
      i=10;  //自己定义
      while(i--) ;   
   }
}
大概的  根据不同的mcu频率会有误差    自己实际测试一下  主要是为了完成30us的任务
pattywu 发表于 2025-9-27 18:27 | 显示全部楼层
开一个1us为计数单位的定时器,不开中断,只计数。
然后,就一个程序主程序。
不断的读定时器的计数值,与原始值之差,达到你的要求,就调用一下你的某个任务;达到一个要求,调用一次,就OK了。
还有什么OS呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部