STM32/STM8技术william hill官网
直播中

李伟

7年用户 1561经验值
私信 关注
[问答]

延时函数延时时间应该怎么算?

28027,系统时钟60M,像这样的延时函数:
void delay(Uint32 count)
{
     while(count>0)  
      {
        count--;
      }
}


回帖(9)

李敏

2018-10-15 14:05:23
是不是系统时钟长度(1/60M)乘以计数值(count)
1 举报

刘涛

2018-10-15 14:05:44
这还要看你的count式存储在哪里的,读写这个变量可能也占用时钟周期
举报

王燕

2018-10-15 14:05:54
调用这个延时函数的过程也会花费一些时间
举报

李霞

2018-10-15 14:06:03
具体你可以看看调试过程生成的汇编程序
举报

王秀兰

2018-10-15 14:06:13
无法准确计算延时时间。
要精确定时,可以选择定时器。
举报

刘艳

2018-10-15 14:06:23
datasheet例程中有延时函数,是使用汇编写的,且定义为Ramfuncs,即在RAM中运行,执行的时间是可以用数周期的办法算出来的 。
举报

陈静

2018-10-15 14:06:32
这种就别求精度了,能用就行。
举报

王鹏

2018-10-15 14:06:46
不如用systick做定时延时器。
举报

王平

2018-10-15 14:06:56
看编译后的汇编了
举报

更多回帖

发帖
×
20
完善资料,
赚取积分