按键连加

[复制链接]
 楼主| CZM_GOLD 发表于 2008-7-16 14:31 | 显示全部楼层 |阅读模式
请问各路高手按键按住不放连续加怎么编好?用C语言编
边锋软件 发表于 2008-7-16 18:23 | 显示全部楼层

我记得匠人手记里有个关于"多种击键类型的处理流程图"

 楼主| CZM_GOLD 发表于 2008-7-17 08:25 | 显示全部楼层

有网址吗

rui.costa 发表于 2008-7-17 16:32 | 显示全部楼层

计时

例如计时超过3S就设定为连长击键。。。
程序匠人 发表于 2008-7-18 00:03 | 显示全部楼层

按键漫谈

地址:http://blog.21ic.com/user1/349/archives/2006/8960.html
相关链接:http://blog.21ic.com/user1/349/archives/2006/8960.html
程序匠人 发表于 2008-7-18 00:05 | 显示全部楼层

多种击键类型的处理流程图


地址:http://blog.21ic.com/user1/349/archives/2006/29906.html
相关链接:http://blog.21ic.com/user1/349/archives/2006/29906.html
hotpower 发表于 2008-7-18 06:34 | 显示全部楼层
 楼主| CZM_GOLD 发表于 2008-7-18 10:43 | 显示全部楼层

我看了,编个程序无法实现单击和连击,请高人指点

高勇 发表于 2008-7-18 18:15 | 显示全部楼层

认真

对待学习态度要认真,并勤于思考,这种问题就不需要问了。
5880527 发表于 2008-7-18 18:32 | 显示全部楼层

这玩意都要到处问人的话那就没语言了

看一眼那效果就应该能编一个才是,检测到沿就是单击,按住的时间在零点几秒以内时不执行任何加减,在两秒内每一时间片缓慢加,再长的时间每一时间片加的力度加强,再长的时间加得就更厉害,需注意要让人眼至少能看清出十位的变化,以便快到预期的数据时好刹车
新好男孩 发表于 2008-7-18 20:04 | 显示全部楼层

下面是头文件

/*-------------------------------------------------------*-

    key.H (V1.0)

-*-------------------------------------------------------*/

/*
 * Copyright (c) 2006,
 * All rights reserved
 * 
 * 文件名称: key.h
 * 文件标识: 
 * 摘     要: 
 * 
 * 当前版本: V1.0             * 取代版本:
 * 作     者: wsl              * 修     改:  
 * 版本信息: 2006-12-16         * 修改信息: 
 */ 

//********************************************************

#ifndef    _key_H_
#define    _key_H_

/*定义键值*/
typedef enum {
    K_Set  = 0x01,
    K_Right,
    K_Up,   
    K_Enter
};



// 公用函数
extern void KeyPad(void);
extern void KeyProcess(void);
#endif 

//******************end of file***************************
 楼主| CZM_GOLD 发表于 2008-7-19 10:24 | 显示全部楼层

关于按键连加

谢谢各位!按键连加已解决。只是按键按下数码管出现闪烁,数码管采用74LS164静态驱动,按键采用148驱动,按键按下不该亮的端出现亮而闪烁。请各位大虾指点,多谢!
edgesoft 发表于 2008-7-26 09:15 | 显示全部楼层

看看

木马河 发表于 2008-7-27 01:18 | 显示全部楼层

随风倒国防军虎骨酒

随风倒国防军虎骨酒
guanshan237 发表于 2012-7-20 16:02 | 显示全部楼层
楼主后面是怎么实现这个连加功能的
zd420325 发表于 2012-7-20 17:12 | 显示全部楼层
别用delay();用定时做5-10ms循环扫描,如果有按键与段码复用IO口,记得把按键与IO间串接一个5K左右的电阻,PS:我是用LCD的SGE口与KEY复用的,按键按下,对显示无影响。
mugenwon 发表于 2012-7-22 19:00 | 显示全部楼层
:loveliness:这个东西我可以说比较熟悉,正用中!
dlyt_test001 发表于 2012-7-23 10:37 | 显示全部楼层
按键按下启动定时器。
定时器小于设定时间1,按键抬起,为1次单击按键;
定时器大于设定时间2,每增加敲定时间3,为1次连续按键;此后,如果按键抬起,记得不要判断成单击按键啊!
zhoukouguren 发表于 2012-7-30 08:40 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

42

主题

151

帖子

0

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