标题: 关于单片机中断延时按键程序的问题 [打印本页]

作者: liu118    时间: 2018-11-26 15:26
标题: 关于单片机中断延时按键程序的问题
求助一个中断延时的问题1、按键中断,在中断函数中,按一个按键(同中断按键),计数一次,每一个计数,输出一种状态,用switch case语句;2、switch语句中,每个case必须要执行延时5S,并且switch只能放在中断函数中,因为主函数在实时采样数据和其他操作,5S延时时间在主函数中太长;中断中的延时采用软件延时的方法,delay()延时无用;

  问题:
     虽然解决了中断延时输出的问题,但是在switch中延时5S,按键相应也会延时5S,这个时间太长了,好像按键不灵敏一样;
  目的:
      不影响按键执行(指按键不要延时),按键完成后,再case中延时5秒执行程序,有办法解决吗?




作者: wulin    时间: 2018-11-26 20:46
这属于程序构架没有设计好,把自己逼到死胡同里了。其实解决这类问题还是挺简单的。使用计数法可以处理任意长延时而不影响其他程序运行。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1