不是很懂你为什么计数器用了就不能干其他的呢?定时器应该是用的中断吧。定时器应该作为一个系统心跳来看待,不要被某个程序独占。定义一个计数值count,每到2ms给计数值count+1,然后回到主程序判断if(count%500)就说明过了1秒,时钟该进位进位,显示该怎么变就怎么变。然后是你加的那部分,你在按下时记一下count的值,然后每次判断count是否小于count+10*500,小于则检测有没有反应,大于等于则说明响应超时。
我原来在应对多任务的时候是这么做的。定时中断只操作计数值,很快就退出中断,然后主程序根据计数值作出相应动作。 |