摘要: 对于所有任务,无论在何种情况下,任务的运行时间 t 都应该小于时间间隔。即如果任务不能在规定的时段内完成,就中止该任务,尤其是对于以查询方式运行的中断程序。比如,这样的代码是不可靠的:// 等待, 直到AD转换结束(检查ADCI) while((ADCON & ADCI) == 0); 因为在某些情况下,可能由于如下原因导致系统被挂起:a 如果模数转换器的初始化不正确,不能确定模数转换将被执行b 如果模数转换器的输入电压过高,那么可能根本就不运行c 如果没有正确初始化变量ADCON或ADCI,那么可能不按要求运行如果要求系统很可靠,则必须能够保证没有函数会这样挂起。循环超时提供了一种简 阅读全文
posted @ 2011-12-03 10:13 云说风轻 阅读(340) 评论(0) 推荐(0) 编辑