[应用相关] 如何用按键控制LED

[复制链接]
758|11
 楼主| wanglaojii 发表于 2018-6-11 20:57 | 显示全部楼层 |阅读模式
我想用按键控制LED,按键按一次是这个灯亮,连续按两次是另外一个灯亮。不知道编程要怎么编,哪位大侠可以教下我。谢谢了
laozhongyi 发表于 2018-6-11 20:58 | 显示全部楼层
把按键做为一个外部中断就行
Edisons 发表于 2018-6-11 21:00 | 显示全部楼层
反复地读端口的电平值试试看
_gege 发表于 2018-6-11 21:01 | 显示全部楼层

检测到第一次按键按下后启动定时器,如果没有溢出即检测到第二次按下则亮灯一,若溢出还未检测到则亮灯二
Mozarts 发表于 2018-6-11 21:04 | 显示全部楼层
价格计数器,用case选择。
Listate 发表于 2018-6-11 21:04 | 显示全部楼层
用定时器,约定连续按两次的时间,其实就是一个键处理多次,长按、短按、还有多次按
guanjiaer 发表于 2018-6-11 21:06 | 显示全部楼层
地板正解呵呵  很专业
zhouhuanの 发表于 2018-6-11 21:07 | 显示全部楼层
如果是扫描,就要用到定时器。我想设计定时器每隔10ms扫描一次按键。
handleMessage 发表于 2018-6-11 21:08 | 显示全部楼层
#pragma vector = TIMERA0_VECTOR
__interrupt void TimerA_ISR(void)
{
GetKey();
}每当定时时间到了以后,就调用GetKey()函数一次。
bbapple 发表于 2018-6-11 21:11 | 显示全部楼层
单片机的LED灯一直是一闪一闪呀
CallReceiver 发表于 2018-6-11 21:12 | 显示全部楼层

具体描述你的功能要求,这这个不知道怎么编写呢。
chongdongchen 发表于 2018-6-11 22:21 | 显示全部楼层
把按键的底层先做好,能识别出单击、双击、长按、连击什么的。
然后才是应用层,根据按键的信息去点灯。。
层次分明,逻辑不乱。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

220

主题

1411

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部