单片机时钟如何倒计时

2025-10-18 17:48:55

1、使用MCU提供的软定时器,根据系统的时钟频率封装出一秒响应一次的软定时器T1。

2、在T1实现:

timer()

{

     static int tick++;

    for(i=0;i<MAX;i++)

        if(eventlist[i].timeout>= tick)

        {

              eventlist[i].cb

              eventlist[i].timeout = 0

        }

}

1. 每次进入(1s)实现static int tick++;

2. 查看eventlist是否有timeout

任务中实现

AddTask(time_s, callback fun)

{

    eventlist[0].timeout = tick+time_s

    eventlist[0].cb = fun

}

3、当需要实现倒计时时调用AddTask()

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:171
  • 阅读量:73
  • 阅读量:77
  • 阅读量:160
  • 阅读量:78
  • 猜你喜欢