boytodance 发表于 2010-8-16 14:33:04

mark

luojiyin 发表于 2010-9-16 19:16:10

mark

ljt8015 发表于 2010-9-16 22:01:38

mark!~

fover 发表于 2010-10-15 20:38:03

mark

yywin 发表于 2010-10-22 20:44:43

学习一下

yywin 发表于 2010-10-22 20:49:07

学习一下

zhuhanliang 发表于 2010-10-31 09:27:34

mark

alice5208 发表于 2010-11-20 16:43:18

写的不错,正是我想要的

qink2008 发表于 2010-11-30 17:16:01

mark

kongjie07 发表于 2010-12-7 20:21:57

留个记号。

wpnx 发表于 2010-12-14 17:32:54

mark

wpnx 发表于 2010-12-19 14:25:14

mark 学习

BINGSHUIHUO 发表于 2010-12-24 02:08:26

就冲楼主这精神也得收藏啊,谢谢分享!!慢慢品了

xydxyd 发表于 2010-12-26 12:46:54

标记

zyw19987 发表于 2011-3-12 13:18:47

4*4按键,状态机思想

dkld_720 发表于 2011-3-17 16:50:50

mark

meirenai 发表于 2011-3-30 17:22:57

mark

quweisy 发表于 2011-4-6 22:43:21

写的不错,顶一下

myworkmail 发表于 2011-4-7 11:21:36

MARK

anvy178 发表于 2011-6-18 11:13:27

标记下

wayeah 发表于 2011-6-18 13:46:28

pass

ansai0089 发表于 2011-6-18 14:01:17

mark

zzt8899 发表于 2011-6-18 14:06:06

mark

xiaohong.zhang 发表于 2011-6-20 15:20:27

mark

airfex 发表于 2011-6-20 21:53:41

学习一下

xuanye 发表于 2011-6-20 22:50:55

mark./emotion/em006.gif

8s209 发表于 2011-6-26 22:37:51

mark

li0709 发表于 2011-7-24 19:58:48

正在学习键盘 有些还看不懂 努力中

wb5846410 发表于 2011-8-2 23:37:33

55楼 eduhf_123 经历 那个图像丑死了,有点像猪头,看着恶心。

lihp1603 发表于 2011-8-3 02:04:29

马老师的东西一定要顶的!呵呵

qinhya 发表于 2011-8-3 09:03:56

mark

maomaomao007 发表于 2011-8-5 11:22:32

学习了,,,,,

ddwl99 发表于 2011-8-11 09:54:01

mark一下,呵呵,以前没这么写过,学习了。哈哈~

phidiawang 发表于 2011-8-20 09:27:58

学习了

RUANJI 发表于 2011-9-4 23:08:24

回复【6楼】machao
-----------------------------------------------------------------------

马老师好,我一直有个疑问,我觉得LZ的状态1也是没有必要的。
我是这么想的,一旦状态0检测到变化,然后就转到状态1,这中间不是就延时了一定时间了么(不是就已经消抖了么)?这时候如果再检测到有按键按下,那应该就是真的有按键按下了。
不知道理解是否有误,请马老师赐教

longcai1988 发表于 2011-9-5 09:29:15

学习

tianyaykq 发表于 2011-10-21 11:49:05

学习了

wwqq 发表于 2011-10-21 12:21:52

学习了

renwocai 发表于 2011-10-30 10:31:54

MARK

xjmlfm1 发表于 2011-10-30 11:15:01

mark

ljmdzyx 发表于 2011-10-31 12:12:16

mark

guxiang 发表于 2011-11-5 19:21:35

不错,顶顶

CHENXIAOTIAN 发表于 2011-11-5 19:34:07

mark 状态机 组合键

avrlv 发表于 2011-11-5 21:21:13

mark

ljt80158015 发表于 2011-11-5 21:26:05

不错!

szlcw 发表于 2011-11-17 11:29:22

mark!

szlcw 发表于 2011-11-17 11:32:52

mark!

guiyang 发表于 2011-11-19 20:08:58

学习!

lixupeng 发表于 2011-11-22 20:38:12

mark!!

www1519 发表于 2011-11-22 21:02:29

mark

xin_71 发表于 2011-12-4 10:06:14

呵呵!新手,先做记号,现在正在摸索单片机键盘的输入!

jyjmaster 发表于 2011-12-4 10:46:54

mark

gaocen100 发表于 2011-12-4 11:22:24

学习 mark

wangtian 发表于 2011-12-4 11:29:25

mark.....不错的资料!

SNOOKER 发表于 2011-12-4 12:08:51

df

weizhe15 发表于 2011-12-4 12:39:54

mark

xin71 发表于 2011-12-5 10:18:46

回复【158楼】weizhe15
-----------------------------------------------------------------------

学习了

taocongrong 发表于 2011-12-27 23:20:02

mark

ljmdzyx 发表于 2011-12-28 00:09:33

马克

protel138 发表于 2012-2-2 23:40:07

学习了。

armku 发表于 2012-2-3 02:12:27

mark 4*4按键,状态机思想

enovo2468 发表于 2012-2-16 19:59:41

mark

eleven_sue 发表于 2012-2-27 16:30:34

mark

hgy_tom 发表于 2012-4-9 10:45:28

留个记号

Feco 发表于 2012-4-25 10:09:19

品味中~~~~~~~

gccavr 发表于 2012-4-25 10:39:35

学习标记

gccavr 发表于 2012-4-25 10:40:40

实际应用有些按键少些

liycobl 发表于 2012-5-1 14:53:50

mark                        

易冰 发表于 2012-5-4 08:25:38

MARK下   

daruikl 发表于 2012-5-4 09:19:35

mark,作个参考,想必有用处

wpnx 发表于 2012-5-13 16:29:49

学习 {:smile:}

蔡锦源 发表于 2012-5-25 23:20:06

#include<reg52.h>
unsigned char delay=0;
sbit key=P3^5;
void init();
main()
{
unsigned char lp=0,time=0,num=0,flag=0,value=0,ldat=0,ndat=0;
init();
P0=0xfe;
P1=0;
while(1){
if(delay){
delay=0;
switch(lp)
{
        case 0:P2=0xf0;if(P2!=0xf0)lp++;if(num++>40)ldat=0;break;
        case 1:if(P2!=0xf0){ndat=P2;P2=ndat|0x0f;ndat=P2;lp++;}else lp=0;num=0;break;
        case 2:if(P2==ndat){if(num++>99)P1=~ndat;}else lp++;break;
        case 3:if(num>99);else{if(ldat!=ndat){ldat=ndat;}else{P0--;}P1=ndat;}num=0;lp=0;break;
}
}
}
}
void init()
{
EA=1;
RCAP2H=55536/256;
RCAP2L=55536%256;
TH2=RCAP2H;
TL2=RCAP2L;
ET2=1;//开启定时器2中断
TR2=1;//启动定时器

}
void timer()interrupt 5
{
TF2=0;
delay=1;
}
我感觉4步应该就能实现。具体连发和组合,在最后一步增加对ndat和ldat的判断就可以了

baoqi 发表于 2012-5-25 23:45:44

mark标志

xiaomaoci 发表于 2012-5-30 23:55:11

组合键操作,mark

liujialin_ 发表于 2012-5-31 00:05:43

收下了,下楼主

hamipeter 发表于 2012-5-31 00:07:30

顶一下啊

shouqiang_zhang 发表于 2012-5-31 06:11:53

谢谢,学习了/

good200xyz 发表于 2012-6-8 12:51:43

shouqiang_zhang 发表于 2012-5-31 06:11 static/image/common/back.gif
谢谢,学习了/

正在研究状态机矩阵键盘。多谢分享!

ieee911 发表于 2012-6-13 09:34:05

mark,方便查找!

xiaoyigechaos 发表于 2012-6-13 09:55:00

mark 一下

yuanpooo 发表于 2012-6-24 17:02:20

mark一下~用到再仔细体会

bestlong22 发表于 2012-6-24 17:26:25

mark 备用

734282083 发表于 2012-6-24 18:32:07

不错 留个记号

xiousi 发表于 2012-7-28 14:40:41

了解下状态机

dongfo 发表于 2012-8-3 15:58:11

看看先,回头再仔细看看

miaoxun206 发表于 2012-8-9 16:27:05

mark,,,,,,,

chenfzg 发表于 2012-8-10 00:41:21

嗯嗯,谢谢了!                                             

sisia 发表于 2012-9-4 15:53:48

mark。。。。

BG2UKY 发表于 2012-9-14 00:04:09

严重学习4X4组合按键!

236719016 发表于 2012-9-15 08:08:36

mark{:smile:}

lcmdw 发表于 2012-10-16 11:34:00

mark{:smile:}

eryueniao 发表于 2012-11-23 14:54:24

不错    学习                           

1752482885 发表于 2012-11-28 14:36:07

代码就应该这样写,按照大部分教科书上那样,太浪费mcu 时间了。希望楼主能发个有关 NEC 红外解码的程序,工程上能用的。

57462554 发表于 2012-11-30 20:29:41

MARK    前段时间一直苦于如果一个矩阵键盘内有三个按键同时按下,该如何扫描出来是哪三个按键按下

sunnny 发表于 2012-12-22 16:05:53

原来是CASE、SWITCH

moouse 发表于 2012-12-22 16:50:08

收藏下,多谢了   

SuperTao 发表于 2012-12-27 11:27:09

太帅了,标记

lyhjx 发表于 2012-12-27 11:52:28

谢谢收下

xiongxie007 发表于 2013-1-4 00:06:44

谢谢楼主!

chenhua1991 发表于 2013-1-4 00:56:26

mark一下
页: 1 [2] 3
查看完整版本: 4*4按键,状态机思想:定时扫描+多键组合+连_发功能(具有实际应用意义)