搜索
bottom↓
楼主: zhuhanliang

新型的按键扫描程序,仅三行程序

  [复制链接]

出0入0汤圆

发表于 2012-9-16 23:24:45 | 显示全部楼层
值得借鉴

出0入0汤圆

发表于 2012-9-20 14:20:55 | 显示全部楼层
回去再细看,

出0入0汤圆

发表于 2012-9-22 14:16:17 | 显示全部楼层
很经典,谢谢楼主!收藏了!

出0入0汤圆

发表于 2012-9-23 14:34:09 | 显示全部楼层
学习了,mark

出0入0汤圆

发表于 2012-9-26 11:02:16 | 显示全部楼层
有3种状态
按下
按着
弹起

要表示3种状态 那么至少要有2个变量因子来表示 11 10 00  三种状态
cont 表示开关接触着
trg  表示按键值   

出0入0汤圆

发表于 2012-9-26 15:30:45 | 显示全部楼层
特好!我现在一直在用

出0入0汤圆

发表于 2012-9-28 11:34:28 | 显示全部楼层
顶一下,研究研究

出0入0汤圆

发表于 2012-9-28 12:19:59 | 显示全部楼层
要仔细研究下

出0入0汤圆

发表于 2012-10-4 16:37:01 | 显示全部楼层
      MARK!

出0入0汤圆

发表于 2012-10-4 17:09:18 | 显示全部楼层
新的思路,新的发现。谢谢分享。

出50入0汤圆

发表于 2012-10-4 20:04:05 | 显示全部楼层
新型的按键扫描程序,仅三行程序       方法的确不错,谢谢分享! 记录下备用

出0入0汤圆

发表于 2012-10-7 18:47:17 | 显示全部楼层
思路很好,谢谢

出0入0汤圆

发表于 2012-10-8 15:02:17 | 显示全部楼层
跟马老师的状态机很像,只是感觉这个算法有点投机取巧,不过还是顶一下,,谢谢楼主提供另一种算法....

出0入0汤圆

发表于 2012-10-9 17:32:25 | 显示全部楼层
mark !!有空再好好研究。

出0入0汤圆

发表于 2012-10-9 17:57:49 | 显示全部楼层
顶一下,dddddddd

出0入0汤圆

发表于 2012-10-9 22:09:39 | 显示全部楼层
很好的算法,收藏;

发现其实只是捕捉上升沿,我加多一句,就可以捕捉下降沿了

unsigned char Trg;
unsigned char Cont;
unsigned char Up;
void KeyRead( void )
{
    unsigned char ReadData = PINB^0xff;   // 1
    Trg = ReadData & (ReadData ^ Cont);      // 2
    Up  = Cont&(ReadData^Cont);
    Cont = ReadData;                                // 3
}

出0入0汤圆

发表于 2012-10-10 13:19:04 | 显示全部楼层
正好这2天要用到按键,试试啊

出0入0汤圆

发表于 2012-10-11 16:07:24 | 显示全部楼层
必须顶一下。

出0入0汤圆

发表于 2012-10-11 17:51:32 | 显示全部楼层
六个名字~~~~

出0入0汤圆

发表于 2012-10-11 19:59:00 | 显示全部楼层
不错,感谢分享。。

出0入0汤圆

发表于 2012-10-19 09:41:06 | 显示全部楼层
用过两年多了

出0入0汤圆

发表于 2012-10-19 10:53:29 | 显示全部楼层
必须留名顶啊,好算法

出0入0汤圆

发表于 2012-10-19 14:08:30 | 显示全部楼层
MARK再说

出0入0汤圆

发表于 2012-10-19 14:34:27 | 显示全部楼层
细看。。细看

出0入0汤圆

发表于 2012-10-19 17:21:31 | 显示全部楼层
MARK               

出0入0汤圆

发表于 2012-10-19 23:51:27 | 显示全部楼层
好东西,这按键检测很牛

出0入0汤圆

发表于 2012-10-20 04:46:27 | 显示全部楼层
真是精辟啊,厉害

出0入0汤圆

发表于 2012-10-20 11:08:01 | 显示全部楼层
仔细看看

出0入0汤圆

发表于 2012-10-20 20:55:57 | 显示全部楼层
嗯,扫描

出0入0汤圆

发表于 2012-10-23 15:14:10 | 显示全部楼层
好用,非常好用。如果是STM32记得模式是:GPIO_InitStructure.GPIO_Mode  = GPIO_Mode_Out_PP;

出0入0汤圆

发表于 2012-10-25 02:26:11 | 显示全部楼层
你们发的链接我点击不进去哦,怎么回事?我想看

出0入0汤圆

发表于 2012-10-25 02:27:21 | 显示全部楼层
你们发的链接我点击不进去,我想学习这个,希望你们可以发到我邮箱2387613607@qq.com

出0入0汤圆

发表于 2012-10-26 22:05:57 | 显示全部楼层
为什么我做MARK 的帖子  我找不到了呢

出0入0汤圆

发表于 2012-11-5 09:00:29 | 显示全部楼层
标记标记标记

出0入0汤圆

发表于 2012-11-5 09:54:54 | 显示全部楼层
我表示暂时没看懂,有点高深

出0入0汤圆

发表于 2012-11-8 18:51:32 | 显示全部楼层
mark,谢谢lz。

出0入0汤圆

发表于 2012-11-8 22:56:07 | 显示全部楼层
一个位与操作,一个异或操作,叫什么名词吗?

出0入0汤圆

发表于 2012-11-8 23:38:21 来自手机 | 显示全部楼层
学习学习

出0入0汤圆

发表于 2012-11-9 15:33:26 | 显示全部楼层
好东西,收藏了

出0入0汤圆

发表于 2012-11-9 16:23:20 | 显示全部楼层
不错的。

出0入0汤圆

发表于 2012-11-9 16:52:46 | 显示全部楼层
长见识啦

出0入0汤圆

发表于 2012-11-9 17:28:31 | 显示全部楼层
居然是转帖,不过楼主辛苦了,也给顶个

出0入0汤圆

发表于 2012-11-12 18:26:09 | 显示全部楼层
额,这个按键算法太神奇了,膜拜。

出0入0汤圆

发表于 2012-11-12 19:33:09 来自手机 | 显示全部楼层
果然犀利啊,还是要用脑子的

出0入0汤圆

发表于 2012-11-12 19:48:47 | 显示全部楼层
认真看了一半,简直是神作啊!!!

出0入0汤圆

发表于 2012-11-14 13:03:07 | 显示全部楼层
不错,顶

出0入0汤圆

发表于 2012-11-15 08:17:47 | 显示全部楼层
标记下!!!!

出0入0汤圆

发表于 2012-11-15 14:17:23 | 显示全部楼层
如果谁弄个矩阵的出来的才,就更好了。思路确实是很厉害

出0入0汤圆

发表于 2012-11-17 12:35:08 | 显示全部楼层
真的是好东西。

出0入0汤圆

发表于 2012-11-17 13:19:02 | 显示全部楼层
现在才看到,不过前人回复的福利包、类似程序的网贴地址什么的,全都失效了,可惜

出0入0汤圆

发表于 2012-11-17 14:58:20 | 显示全部楼层
make 不错,学习了11

出0入0汤圆

发表于 2012-11-17 23:49:22 | 显示全部楼层

出0入0汤圆

发表于 2012-11-18 00:35:33 | 显示全部楼层
貌似不错,谢谢分享

出0入0汤圆

发表于 2012-11-18 11:24:23 | 显示全部楼层
   新型的按键扫描程序

出0入0汤圆

发表于 2012-11-18 23:32:10 来自手机 | 显示全部楼层
神,这么简单的按键!

出0入0汤圆

发表于 2012-11-19 00:19:37 | 显示全部楼层
凑活。
头像被屏蔽

出0入0汤圆

发表于 2012-11-19 00:32:44 | 显示全部楼层
学习了!

出0入0汤圆

发表于 2012-11-19 05:23:50 来自手机 | 显示全部楼层
收藏备用。
很精妙的按键处理

出0入0汤圆

发表于 2012-11-28 18:40:23 | 显示全部楼层
总的感觉还可以,顶起

出0入0汤圆

发表于 2012-11-28 19:13:29 | 显示全部楼层
试试就知道了~~高手在民间啊

出0入0汤圆

发表于 2012-11-30 08:57:40 | 显示全部楼层
试了一下,很好,谢谢楼主分享

出0入0汤圆

发表于 2012-12-1 08:44:30 | 显示全部楼层
不错,学习

出0入0汤圆

发表于 2012-12-1 10:38:37 | 显示全部楼层
读取的间隔大约10ms左右即可。

出0入0汤圆

发表于 2012-12-1 10:53:23 | 显示全部楼层
关注下~~~

出0入0汤圆

发表于 2012-12-3 11:55:56 | 显示全部楼层
mark,经典

出0入0汤圆

发表于 2012-12-3 17:03:33 | 显示全部楼层
mark~~~~~~~~

出0入0汤圆

发表于 2012-12-7 21:51:34 | 显示全部楼层
谢谢楼主分享!

出0入0汤圆

发表于 2012-12-7 21:51:56 | 显示全部楼层
谢谢楼主分享!

出0入0汤圆

发表于 2012-12-8 10:43:12 | 显示全部楼层
很好,学习了

出0入0汤圆

发表于 2012-12-8 12:16:45 | 显示全部楼层
思路很好,表述清楚,顶一个。

出0入0汤圆

发表于 2012-12-9 14:38:35 | 显示全部楼层
zhuhanliang 发表于 2010-10-8 15:02
回复【11楼】n0831
-----------------------------------------------------------------------

这种方法是不是要牺牲很多的IO口?

出0入0汤圆

发表于 2012-12-9 14:40:21 | 显示全部楼层
貌似要牺牲较多的IO口。。。

出0入0汤圆

发表于 2012-12-9 16:57:06 | 显示全部楼层
记着!记着!

出0入0汤圆

发表于 2012-12-23 16:35:56 | 显示全部楼层
留下 等会嘟嘟

出0入0汤圆

发表于 2012-12-24 02:07:08 | 显示全部楼层
感觉很好;楼主加油

出0入0汤圆

发表于 2012-12-24 09:33:32 | 显示全部楼层
东西是好东西,但你写的时候不要卖弄好不好?!

出0入0汤圆

发表于 2012-12-25 23:16:45 | 显示全部楼层
mARK  学习了

出0入0汤圆

发表于 2012-12-26 01:13:51 | 显示全部楼层
很好的思路

出0入0汤圆

发表于 2012-12-26 10:04:44 | 显示全部楼层
楼主威武,学习了

出0入0汤圆

发表于 2012-12-27 22:52:57 | 显示全部楼层
你好,我试了一下这个方法,真的挺好用,有一个疑问,我按以下方式 定义 KEY_BEEP  0X01,但写完  if (Trg & KEY_BEEP)  编译不过,要写  if (Trg & 0x01)   才行,是编译器问题吗?我用CVAVR。

#define KEY_BEEP 0x01
void KeyProc(void)
{
       if (Trg & KEY_BEEP) // 如果按下的是KEY_BEEP
    {
         Beep();            // 执行蜂鸣器处理函数
    }
}

出0入0汤圆

发表于 2012-12-28 07:11:12 | 显示全部楼层
很有助力

出0入0汤圆

发表于 2012-12-28 10:09:05 | 显示全部楼层
mark,回头细读

出0入0汤圆

发表于 2012-12-28 10:26:13 | 显示全部楼层
很好的设计思路,感谢楼主的分享

出5入8汤圆

发表于 2012-12-28 13:35:27 | 显示全部楼层
这个程序好啊!

出0入0汤圆

发表于 2012-12-28 15:36:53 | 显示全部楼层
  谢谢分享

出0入0汤圆

发表于 2012-12-29 17:25:57 | 显示全部楼层
思路不错,学习

出0入0汤圆

发表于 2013-1-1 13:52:34 来自手机 | 显示全部楼层
手机标记

出0入0汤圆

发表于 2013-1-2 12:34:41 | 显示全部楼层
标记以方便以后需要了

出0入0汤圆

发表于 2013-1-2 15:32:49 | 显示全部楼层
好东西,学习下

出0入0汤圆

发表于 2013-1-3 14:25:59 | 显示全部楼层
看过之后,感觉不错,很受启发……谢谢LZ共享……期待更多类似的经典处理方法

出0入0汤圆

发表于 2013-1-3 20:56:21 | 显示全部楼层
是很有道理;

出0入0汤圆

发表于 2013-1-3 20:59:25 | 显示全部楼层
简洁明了!

出0入0汤圆

发表于 2013-1-3 21:04:06 | 显示全部楼层
学习了~按键扫描。。

出0入0汤圆

发表于 2013-1-4 07:42:04 来自手机 | 显示全部楼层
这么厉害啊学习学习

出0入0汤圆

发表于 2013-1-7 17:45:24 | 显示全部楼层

学习了!谢谢

出0入0汤圆

发表于 2013-1-7 23:26:12 | 显示全部楼层
做个标记,会用到的。思路很好

出0入0汤圆

发表于 2013-1-14 13:02:47 | 显示全部楼层
精辟啊,LZ

出0入0汤圆

发表于 2013-1-18 12:29:44 | 显示全部楼层
厉害啊,在学习中

出0入8汤圆

发表于 2013-1-18 12:49:58 | 显示全部楼层
好东西,必须要mark!

出0入0汤圆

发表于 2013-1-20 13:10:04 | 显示全部楼层
多个按下呢?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-29 20:30

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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