标题: 关于延时的问题,有没有大佬解释一下? [打印本页]

作者: 冷瞳啊    时间: 2019-4-5 21:05
标题: 关于延时的问题,有没有大佬解释一下?
void delay_nus(unsigned int i)  //延时:i>=12,i最小延时单位12us
{
  i=i/10;
  while(--i);
}   
void delay_nms(unsigned int n)  //延时nms
{
  n=n+1;
  while(--n)  
  delay_nus(900);         //延时1ms,同时进行补偿

}  

请问一下第一个是延时ius的话怎么理解的 比如i=20的话while只转了一圈啊,为什么就是20us呢?是因为这一圈正好耗时20us吗?这是计算出来的还是调试出来的呢?
第二个同问,为什么就延时了nms ,如果是计算出来的话麻烦详细解释一下,如果是调试出来的也请告知,谢谢。


作者: diy1997    时间: 2019-4-6 11:59
执行指令要时间的,

比如“ while(--i);”,如果执行这一条指令要1US,

那执行20次就是20US。






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1