这个程序怎么改能不用延迟函数而用定时器中断达到用一个独立按键控制一个LED实现三种不同频率的闪烁?

这个程序怎么改能不用延迟函数而用定时器中断达到用一个独立按键控制一个LED实现三种不同频率的闪烁?,第1张

算法: 1采用定时器定时25毫秒 启动定时器工作 2每当定时时间到中断 在中断服务程序中软件计数器减1(初始值为20) 3当软件计数器减到0时,表示0.5秒时间到 这时可以判断开关状态 开关合上可以让8个LED左移一位开关断开可以让8个LED右移一位 呵呵 按上诉算法 编写程序 就可以实现你的要求(指导可以见百度知道的消息 右上角) 满意就选满意回答

流程如下:

①定义静态变量作为标志flag=0。

②定时器做一个20ms中断,因为按键消抖一般是20ms。

③在中断中进行按键检测。

进中断时,若检测到按键按下,此时flag=0,令标志flag=1;若flag=1,则可判断有按键按下,flag=0;退出中断。

代码不难,你应该很容易就搞定了。有问题的话再追问。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12130791.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存