3840| 5
|
请教一个延迟函数:原子哥的delay函数 |
1金钱
最佳答案delay_ms()函数是对systick计数器做的查询计数,而systick是独立的不受中断影响。中断0.2s中systick仍然在计时,所以你的算法没错。
之所以不能精确定时是因为还有这种情况:比如你这中断刚好发生在0.9s的时候,这个时候执行中断0.2s,返回之后delay_ms()会判断已经到时间从而结束延时,这样你实际延时了1.1s而不是1s
所以查询法延时必然会有这样的问题。因此,第一是精确延时最好用定时器,第二是中断越短越好
| ||
| ||
| ||
| ||
| ||
| ||
|手机版|OpenEdv-开源电子网
( 粤ICP备12000418号-1 )
GMT+8, 2025-5-25 13:44
Powered by OpenEdv-开源电子网
© 2001-2030 OpenEdv-开源电子网