求助如何实现单片机按键长按短按1长按下,LED0LED7一个个

单片机控制按键,键按下自带的led灯亮,松开就暗 - 【Atmel MCU】 -
电子工程世界-论坛
后使用快捷导航没有帐号?
请完成以下验证码
查看: 6320|回复: 27
单片机控制按键,键按下自带的led灯亮,松开就暗
在线时间4 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
首先声明本人菜鸟一个:
最近想把键盘改动一下 ,大约40个键,某几个常用键把按键换成自带led灯的按键。键按下,灯亮,松开,灯暗。
现在我想把键盘和led灯用单片机的io口分别控制,作成阵列式。键盘按键电路好解决,问题是led灯的,用uln2803a控制led灯,但是不知道2803a输入接单片机,输出怎么接?还有怎么把按键和led灯对应联系起来?或者各位有没有更好的办法?
求各位指导一下 或者给点思路?谢谢大家
(15.93 KB, 下载次数: 0)
18:08 上传
在线时间4 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
有偿回报,有点急!
在线时间1903 小时
威望1362分
芯币1842枚
E金币141枚
TA的帖子TA的资源
纯净的硅(高级), 积分 1362, 距离下一级还需 638 积分
纯净的硅(高级), 积分 1362, 距离下一级还需 638 积分
最近在用TCA6424A
感觉那个更适合吧
在线时间1776 小时
威望43241分
芯币42877枚
E金币1812枚
TA的帖子TA的资源
指示灯可以用移位寄存器串转并来实现,根据键盘扫描结果用软件控制即可。
上传了一些书籍资料,也许有你想要的:
在线时间748 小时
芯币1218枚
TA的帖子TA的资源
一粒金砂(高级), 积分 433, 距离下一级还需 67 积分
一粒金砂(高级), 积分 433, 距离下一级还需 67 积分
本帖最后由 曾经in 于
20:46 编辑
参考下LED点阵动态扫描,三两句话说不清,相关资料网上很多,楼主搜索一下
在线时间4 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
最近在用TCA6424A
感觉那个更适合吧
这个芯片是IO口扩展?可以说一下你的大概思路吗
TCA6416A和TCA6424A任你选择,只需要单片机的几个IO口就行了,这个部分至多用到单片机4个IO(两根是IIC,两根是中断)。
TCA6416A手册里有按键应用部分的接法,你可以比对看看,看了一下,你的31个按键,2个6416A可&
在线时间1903 小时
威望1362分
芯币1842枚
E金币141枚
TA的帖子TA的资源
纯净的硅(高级), 积分 1362, 距离下一级还需 638 积分
纯净的硅(高级), 积分 1362, 距离下一级还需 638 积分
这个芯片是IO口扩展?可以说一下你的大概思路吗
TCA6416A和TCA6424A任你选择,只需要单片机的几个IO口就行了,这个部分至多用到单片机4个IO(两根是IIC,两根是中断)。
TCA6416A手册里有按键应用部分的接法,你可以比对看看,看了一下,你的31个按键,2个6416A可以组成32个独立的按键。
每个按键触发产生一个中断,读取按键值之后可以用单片机产生亮灭LED
这个我已经试验过,不过我的LED比较多(由6424A控制),每个按键触发,对应位置的灯亮。
在线时间4 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
参考下LED点阵动态扫描,三两句话说不清,相关资料网上很多,楼主搜索一下
我搜了,但是那些都是单独的led点阵 ,这个和键盘按键要联系到一起的 ,还是不同吧。
多个按键用矩阵键盘,LED点阵也是类似的原理,外加非门或达林顿管放大电流,也可以用74hc573、595神马的扩展一下端口。原理都是一样的。键盘按键要联系到一起是你程序做的事,读到按键点亮相应的灯,应该没什么问题&
在线时间4 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
指示灯可以用移位寄存器串转并来实现,根据键盘扫描结果用软件控制即可。
可以麻烦说详细点吗 ?因为led点阵估计就10个左右,所以行和列要分别用移位寄存器还是其中一个用就可以啊?还要按键按下时led灯要亮,是通过同时设置单片机io口设置吗?现在好混乱
用74HC595,一片可带8个LED,好好去看器件手册,理解怎么操作。&
用 CD4094 吧,8位串转并芯片,串行输入,并行输出。至于你说的按键和LED一一对应,得程序处理下。
建议楼主先做个低阶的矩阵键盘4*4或3*3,然后结合CD4094芯片控制八盏灯。等会用了,自然就知道后面怎么做了,&
在线时间620 小时
威望1107分
芯币7955枚
E金币300枚
TA的帖子TA的资源
纯净的硅(中级), 积分 1107, 距离下一级还需 93 积分
纯净的硅(中级), 积分 1107, 距离下一级还需 93 积分
可以麻烦说详细点吗 ?因为led点阵估计就10个左右,所以行和列要分别用移位寄存器还是其中一个用就可以啊 ...
用&&CD4094 吧,8位串转并芯片,串行输入,并行输出。至于你说的按键和LED一一对应,得程序处理下。
建议楼主先做个低阶的矩阵键盘4*4或3*3,然后结合CD4094芯片控制八盏灯。等会用了,自然就知道后面怎么做了,这些基础的东西建议楼主还是一步一步来的好,至少原理性的东西要搞明白
dj的世界一直很好
在线时间1776 小时
威望43241分
芯币42877枚
E金币1812枚
TA的帖子TA的资源
可以麻烦说详细点吗 ?因为led点阵估计就10个左右,所以行和列要分别用移位寄存器还是其中一个用就可以啊 ...
用74HC595,一片可带8个LED,好好去看器件手册,理解怎么操作。
好的 ,谢谢~决定用74hc373和uln2803a驱动led4*4阵列了。&
上传了一些书籍资料,也许有你想要的:
在线时间4 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
TCA6416A和TCA6424A任你选择,只需要单片机的几个IO口就行了,这个部分至多用到单片机4个IO(两根是IIC, ...
好像可以 但是那个led阵列应该怎么连啊?键盘的直接用单片机IO口就可以吧。可以把你的led阵列原理图发我一下吗 ?哟啊不加你QQ吧
在线时间4 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
用74HC595,一片可带8个LED,好好去看器件手册,理解怎么操作。
好的 ,谢谢~决定用74hc373和uln2803a驱动led4*4阵列了。
那需要你有足够的IO口,从设计和成本的角度考虑,此想法很不妥。&
在线时间748 小时
芯币1218枚
TA的帖子TA的资源
一粒金砂(高级), 积分 433, 距离下一级还需 67 积分
一粒金砂(高级), 积分 433, 距离下一级还需 67 积分
我搜了,但是那些都是单独的led点阵 ,这个和键盘按键要联系到一起的 ,还是不同吧。
多个按键用矩阵键盘,LED点阵也是类似的原理,外加非门或达林顿管放大电流,也可以用74hc573、595神马的扩展一下端口。原理都是一样的。键盘按键要联系到一起是你程序做的事,读到按键点亮相应的灯,应该没什么问题。
嗯嗯 键盘的问题容易。主要是led阵列,我是用达林顿管2803a驱动的.不知道一个达林顿管可以不可以同时驱动行和列?&
在线时间1776 小时
威望43241分
芯币42877枚
E金币1812枚
TA的帖子TA的资源
好的 ,谢谢~决定用74hc373和uln2803a驱动led4*4阵列了。
那需要你有足够的IO口,从设计和成本的角度考虑,此想法很不妥。
现在主要是想办法 解决LED阵列了。IO口够的 ,特意选了个ATMEGA128,用373和2803A是为了功能考虑的 ,我选的按键里面的LED灯电流是20毫安的,2803a电流可达500毫安,然后选373是要锁存功能。
我想问一下 :2803a有&
上传了一些书籍资料,也许有你想要的:
在线时间4 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
那需要你有足够的IO口,从设计和成本的角度考虑,此想法很不妥。
现在主要是想办法 解决LED阵列了。IO口够的 ,特意选了个ATMEGA128,用373和2803A是为了功能考虑的 ,我选的按键里面的LED灯电流是20毫安的,2803a电流可达500毫安,然后选373是要锁存功能。
我想问一下 :2803a有八个输入八个输出,可以用八个输出的其中四个分别驱动led阵列的行和列吗 ?
干嘛不自己画出图来分析?看看你的想法能不能实现。&
在线时间4 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
多个按键用矩阵键盘,LED点阵也是类似的原理,外加非门或达林顿管放大电流,也可以用74hc573、595神马的 ...
嗯嗯 键盘的问题容易。主要是led阵列,我是用达林顿管2803a驱动的.不知道一个达林顿管可以不可以同时驱动行和列?
为什么这么问&
在线时间1776 小时
威望43241分
芯币42877枚
E金币1812枚
TA的帖子TA的资源
现在主要是想办法 解决LED阵列了。IO口够的 ,特意选了个ATMEGA128,用373和2803A是为了功能考虑的 ,我 ...
干嘛不自己画出图来分析?看看你的想法能不能实现。
噢噢 不好意思 ~不知道这样画的可以不可以,是不是2803输出那还要接电阻?
还有就是假如不能用2803同时驱动行和列,那用3驱动行,用595驱动列,可以吗&
上传了一些书籍资料,也许有你想要的:
在线时间4 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
一粒金砂(中级), 积分 16, 距离下一级还需 184 积分
本帖最后由 小蔡袅 于
14:49 编辑
干嘛不自己画出图来分析?看看你的想法能不能实现。
噢噢&&不好意思 ~不知道这样画的可以不可以,是不是2803输出那还要接电阻?
还有就是假如不能用2803同时驱动行和列,那用3驱动行,用595驱动列,可以吗
(52.01 KB, 下载次数: 0)
14:11 上传
(29.25 KB, 下载次数: 0)
14:49 上传
好好看看器件手册,分析2803的内电路按你的连接能不能工作。别只画图,要分析电路,否则你永远学不会。&
在线时间1776 小时
威望43241分
芯币42877枚
E金币1812枚
TA的帖子TA的资源
噢噢&&不好意思 ~不知道这样画的可以不可以,是不是2803输出那还要接电阻?
还有就是假如不能用2803同时 ...
好好看看器件手册,分析2803的内电路按你的连接能不能工作。别只画图,要分析电路,否则你永远学不会。
那个2803的手册 介绍的很简单 ,看完还是不懂。。&
上传了一些书籍资料,也许有你想要的:
技术导师勋章
论坛威望大于30000或网友提名:坛子里公认的技术导师
EEWORLD 官方微信
EE福利 唾手可得
Powered by三菱触摸屏 如何做到 按键长按
输入数值快速增减?-专业自动化论坛-中国工控网
三菱触摸屏 如何做到 按键长按
输入数值快速增减?
给TA发消息
加TA为好友
发表于: 14:14:48
三菱触摸屏 如何做到 按键长按 &输入数值快速增减?短按一个按键,数据加1,长按时不停增加,直到松开,如何实现非常感谢大牛前来指导,谢谢。
给TA发消息
加TA为好友 发表于: 14:57:50 1楼
m0.&&m8013.&incp.&d0
给TA发消息
加TA为好友 发表于: 16:35:31 2楼
你好,我先谢谢你,试了下还有点问题接着请教下,下图中,M7使用触摸屏控制点动,目的是使D5002中的数据在M7长按下后快速增加值,运行了下没有反应,不知道为什么?回复内容:对: wtg5077389
m0.&&m8013.&incp.&d0 内容的回复!
给TA发消息
加TA为好友 发表于: 16:43:54 3楼
回复内容:对:sys601 你好,我先谢谢你,试了下还有点问题接着请教下,下图中,M7使用触摸屏控制点动,目的是使D5002中的数据在M7长按下后快速增加值,运行了下没有反应,不知道为什么?回复内容:对: wtg5077389
m0.&&m8013.&incp.&d0 内容的回复!&&&&&内容的回复:我的是fx1nplc
给TA发消息
加TA为好友 发表于: 16:50:24 4楼
这是100,100的增加,按钮选择取反
给TA发消息
加TA为好友 发表于: 17:00:31 5楼
短按加一,使用按钮脉冲沿触发加一;长按快速加,可以考虑按钮一直按下超过一定时间后,每个扫描周期加一或者每*ms时间加一。
给TA发消息
加TA为好友 发表于: 17:11:31 6楼
我用的是Q系列,Q02HCPU,不知道为啥一直没反应,我再琢磨下,谢了,回复内容:对: wtg5077389
这是100,100的增加,按钮选择取反 内容的回复!
给TA发消息
加TA为好友 发表于: 17:12:43 7楼
这个应该是可以的,之前考虑过这样但不知道哪里有问题没弄好一直,谢谢你啊回复内容:对: 我是一颗小小草
短按加一,使用按钮脉冲沿触发加一;长按快速加,可以考虑... 内容的回复!
给TA发消息
加TA为好友 发表于: 21:36:19 8楼
短按用脉冲加一指令,长按的话接通中继直接程序扫描一次加一或者加十甚至更大,随你咋玩
给TA发消息
加TA为好友 发表于: 22:05:01 9楼
谢谢回复,想问下接通中继是什么意思?是一种软元件吗?具体怎么操作能否告知,谢回复内容:对: 乖乖小笨熊
短按用脉冲加一指令,长按的话接通中继直接程序扫描一次加... 内容的回复!
给TA发消息
加TA为好友 发表于: 16:14:41 10楼
朋友 按住两秒以上给个定时器 &定时器接通了,在给个MS脉冲信号
周点击排行周回复排行
[223] [193] [147] [136] [126] [91] [85] [80] [76] [74]
[37] [15] [12] [11] [11] [9] [8] [7] [7] [7]最新求助
[4] [3] [1] [15] [2] [0] [1] [7] [0] [11]查看: 6603|回复: 11
问一下原子兄,哪个例程有按键短按和长按实现不同功能的?谢谢
主题帖子精华
金牌会员, 积分 1886, 距离下一级还需 1114 积分
在线时间85 小时
如题,烦请告知,谢谢啦。
主题帖子精华
金牌会员, 积分 1553, 距离下一级还需 1447 积分
在线时间2 小时
这很容易实现吧.
学习交流请加Q群:(STM32F4交流群)
主题帖子精华
金牌会员, 积分 1886, 距离下一级还需 1114 积分
在线时间85 小时
是容易实现,不过想用更可靠,稳定的方法。
主题帖子精华
高级会员, 积分 506, 距离下一级还需 494 积分
在线时间0 小时
我来给楼主传一个,不是一般的好用,用在项目上没问题的。
&实现按键的检测,具有软件滤波机制
(1) 按键按下
(2) 按键弹起
(3) 长按键
(4) 长按时自动连发
(5) 组合键
21:05 上传
点击文件名下载附件
475.7 KB, 下载次数: 5151
主题帖子精华
金钱117661
在线时间911 小时
回复【楼主位】螃蟹爱虫:
---------------------------------
给按键返回值带一个参数:时间参数。
这样你自己检测这个参数即可。
我是开源电子网站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺:
微信公众平台:正点原子& &
主题帖子精华
初级会员, 积分 124, 距离下一级还需 76 积分
在线时间0 小时
回复【4楼】Eric2013:
---------------------------------
看了一下还不错
主题帖子精华
金牌会员, 积分 1886, 距离下一级还需 1114 积分
在线时间85 小时
搞好了,就是感觉有点复杂了。
主题帖子精华
中级会员, 积分 301, 距离下一级还需 199 积分
在线时间15 小时
回复【7楼】螃蟹爱虫:
---------------------------------
能发图按键长按部分做参考下吗?
主题帖子精华
高级会员, 积分 825, 距离下一级还需 175 积分
在线时间136 小时
学习了!设计的很巧妙!
主题帖子精华
初级会员, 积分 115, 距离下一级还需 85 积分
在线时间11 小时
学习了,很不错
主题帖子精华
初级会员, 积分 147, 距离下一级还需 53 积分
在线时间49 小时
MAKE 一下!!!
主题帖子精华
初级会员, 积分 173, 距离下一级还需 27 积分
在线时间19 小时
我也下载了下来,学习学习
Powered by相关文章推荐
原文:/zp/message.aspx不过我在网上游逛了很久,也看过不少源程序了,没有发现这种按键处理办法的踪迹,所以,我将他共享...
文章来自:/user1/8499/archives/.html
一般的按键输入软件接口程序非常简单,在程序中一旦检测到按键输入...
#ifndef __KEY_H__
#define __KEY_H__
#define KEY_MODE_STATUS
#define KEY_SHOOT_...
按键定时扫描
——有限状态机的软件实现方法
由于按键扫描采用定时扫描方式,由连续2次或3次扫描的状态来判断按键是否按下,
原文:/zp/message.aspx不过我在网上游逛了很久,也看过不少源程序了,没有发现这种按键处理办法的踪迹,所以,我将他共享...
第十一节:同一个按键短按与长按的区别触发。
上一节讲了类似电脑键盘组合按键触发的功能,这节要教会大家一个知识点:如何在上一节的基础上,略作修改,就可以实现同一个按键短按与长按的区别触...
他的最新文章
讲师:董晓杰
讲师:姚远
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 按键长按短按程序 的文章

 

随机推荐