电子技术论坛

 找回密码
 快速注册

QQ登录

只需一步,快速开始

搜索
下载方法|用单线程|避免多扣帖子规范|求助必读|发帖建议积分策略|勋章介绍|新人必读获取金币|推广论坛|出售帖子基本礼节|致会员信|版规总则
禁涉政治|反对低俗|举报专帖征集相片|留下足迹|推荐精华上传附件|制作分卷|使用网盘禁发qq群|恶意灌水|纯表情帖加入团队|监督机制|安全上网
查看: 5414|回复: 16

一个按键,怎么控制多个有流水LED及闪光程序

[复制链接]
发表于 2017-8-30 17:25:51 来自手机 | 显示全部楼层 |阅读模式

注册家电维修技术论坛,与同行畅聊维修技术,享更多技术论坛功能。

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
各位大神,大家好:用51单片机C语言,STC89c52。怎么实现一个按键,按一次左led流水,再按一次右led流水,再按一次全部闪烁,再按一次关,全灭。
发表于 2017-8-30 17:47:40 | 显示全部楼层
我的想法是:声明一个变量用来记录按键的次数,每扫描到一次按键,值就+1,当加到4时立即清0。它的值1,2,3,0分别标志左led流水、右led流水、全部闪烁,全关。
然后用switch()处理这几个值所对应的代码。
发表于 2017-8-30 17:59:57 | 显示全部楼层
简单问题,可这不是家电维修范畴
发表于 2017-8-30 18:23:01 | 显示全部楼层
如果楼主会编写程序,这是小问题不难。
发表于 2017-8-30 18:34:20 | 显示全部楼层
我有个现成的。控制器、需要出你、
 楼主| 发表于 2017-8-31 11:36:02 来自手机 | 显示全部楼层
lazyborns 发表于 2017-8-30 17:47
我的想法是:声明一个变量用来记录按键的次数,每扫描到一次按键,值就+1,当加到4时立即清0。它的值1,2, ...

不过一步一步点亮每个灯就可以的,到了闪灯或流动的LED子程序,按键就失灵,跳不出闪灯子程序,在死循环里,也可能是按键检测不到吧。
 楼主| 发表于 2017-8-31 11:36:35 来自手机 | 显示全部楼层
华维国际 发表于 2017-8-30 17:59
简单问题,可这不是家电维修范畴

不过一步一步点亮每个灯就可以的,到了闪灯或流动的LED子程序,按键就失灵,跳不出闪灯子程序,在死循环里,也可能是按键检测不到吧。
发表于 2017-8-31 16:57:30 | 显示全部楼层
lgxwmv 发表于 2017-8-31 11:36
不过一步一步点亮每个灯就可以的,到了闪灯或流动的LED子程序,按键就失灵,跳不出闪灯子程序,在死循环 ...

自己看看,合理利用定时器和中断啰。。
 楼主| 发表于 2017-9-1 09:18:54 来自手机 | 显示全部楼层
lazyborns 发表于 2017-8-30 17:47
我的想法是:声明一个变量用来记录按键的次数,每扫描到一次按键,值就+1,当加到4时立即清0。它的值1,2, ...

用定时器做按键,这样可以检测到了,就是一个LED流水子程序,再按一次了,它还在流水,等它走完了程序,才切换到下一个子程序,而不是马上切换到下一个子程序,这是什么回事?是不是一个流水子程序长了点?
发表于 2017-9-1 17:31:29 | 显示全部楼层
lgxwmv 发表于 2017-9-1 09:18
用定时器做按键,这样可以检测到了,就是一个LED流水子程序,再按一次了,它还在流水,等它走完了程序, ...

子程序没有进行按键模式检测,特别是用循环计数来延时控制速度的。
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|家电维修技术论坛 ( 鄂ICP备09003585号-2 )

GMT+8, 2025-2-3 08:50 , Processed in 0.061889 second(s), 4 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

CopyRight © 电子技术论坛
电子邮箱:8794149@qq.com | 联系 QQ:3081868839 | 官方网址:www.dzdu.com

Qiji. All Rights Reserved


服务条款 | 站长声明

Wuhan Qiji Technology Co., Ltd.武汉奇迹科技有限公司版权所有


鄂ICP备09003585号-2鄂公网安备42010602000420号

快速回复 返回顶部 返回列表