我只知道定时器最短时间不好弄,没听说最大的不好弄的,最短的时间间隔与MCU主频有关,短了不精确。
若要得到最大间隔,很简单啊,比如我想有个100分钟的间隔,但是定时器不可能有100分钟这么长的定时的,那解决办法是累加。
如:设一个1秒的定时器中断,那么100分钟就等于6000秒,流程是中断每隔1秒进入一次,进入之后就把一个寄存器+1,判断当寄存器=6000,即6000/60=100分钟,此时就可以发送数据给上位机了。
不知道你要的是不是这个答案,还是说你另有其意。用定时器,定时1ms,每当到了、中断,就把
n1、n2、n3,分别加一,然后退出中断。
在主函数中,分别检测n1、n2、n3是否到了50、30、60,到了,就该干什么就干什么去。
用一个定时器,基本就可以满足所有的定时需求。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)