嵌入式系统分时任务调度算法实现
- 2014 酷玩创意
直奔主题,今天我们讲的是定时任务处理。简单讲就是我有一系列的任务需要在将来的某个特定时间由系统去处理。补充一下这里的将来去处理不是系统就可以延时阻塞当前的任务,这样的情况没有什么研究的价值,我们说的是在定时时间到达后系统中断当前任务处理定时任务,完了再回到主线程继续运行。
不知道大家平时有没有遇到过这种需求。就拿之前我们说到过的红外解码的干扰控制:一次成功接收到红外按键后你至少需要在500ms到1000ms后重新打开红外接收的中断,这期间你也不可能用最土的延时等待的方法让系统阻塞在解码函数里(假设你正在控制高速运转的机器,阻塞操作岂不是作死的节奏啊!),这个时候你该整么办呢?
像MCU这样的器件一般运行在没有操作系统的环境中程序就一个循环到底,要做到这样一点似乎有些困难。我们应该明确处理定时的入口应该是中断机制,要不然这种东西就根本没有第二种方法可能了,他又是和时间强相关的任