想走的鱼 发表于 2016-7-20 22:31:11

t滴答时钟溢出问题

我们知道系统嘀嗒时钟使用了一个u32类型的变量每毫秒加1,约49天回归0。那么问题来了,如果在这个变量剩余如255(等于0xFFFFFF00)时就要回归0,这时定时如1000毫秒,而hal库中是先记录首个变量值0xFFFFFF00,而后就是用新值减去0xFFFFFF00,看是否大于1000。那么如果要大于1000必须等到变量回归0后递增到1001,这是延时的总时间是不是255+1001=1256毫秒呢?那这个定时不就不准了吗

Dylan疾风闪电 发表于 2016-7-21 08:28:41

对于STM32来说,滴答器是向下计数的、且有对应的标志位。所以你只需要写入计数值,然后监视标志位(循环或者中断)。:)


想走的鱼 发表于 2016-7-27 23:07:31

看清了,所答非所问
页: [1]
查看完整版本: t滴答时钟溢出问题