亚博智能论坛  
  
查看: 705|回复: 0

如何检测按键按下次数

  [复制链接]

该用户从未签到

2

主题

4

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2017-10-19 16:26:18 | 显示全部楼层 |阅读模式
程序如下,但按键无反应
3 }$ `& x) G% ~  L% H: a: kint key=12;  //按键接口
' J% R. c2 l7 Z4 B& \* Cint led=13;  //led灯接口6 U5 p: R% R  D; I6 t0 F8 n
int val;
7 q( u6 T0 H: hint num;
- s1 z( E9 r' z, T* Hvoid setup()5 F& F& j0 @' K) A9 a8 X7 p
{6 t* F. U1 ~6 b6 S
  // 初始化电机驱动IO为输出方式) b. u# s- K$ F$ a; I6 s8 Q4 l
  pinMode(key,INPUT);
/ F( x, }: l+ @6 S  pinMode(led,OUTPUT);' k" r# l3 @! Y3 J
  digitalWrite(key,HIGH);: o5 T8 W1 y  e4 ?' b! ~: y) A# G
  num=0;
5 k, B. @( l0 m8 s& o}
3 H  P, F" o  j4 G5 I% ~) v1 P; p6 F: g; X2 T
void loop()  _$ P; i, k: B
{
8 A6 N0 U2 b5 [+ S7 o( ]( u" B  val=digitalRead(key);
9 L* S+ t! |8 @  while(1)2 u- o- L" o9 q" h
  {8 Y* k4 l+ z* X! A4 e( L
    if(val==LOW)( |; y* R1 E  `' M2 T$ t1 L4 e  s
    {5 C# [4 Y+ k6 u/ M8 }# U
      delay(10);
4 P3 k! F: ]- `& L  l0 ^      if(val==LOW)0 S# f9 \/ \+ w  G/ o
      {
* j. a( p( i: n5 Z        while(val==LOW);% C2 `* U" t& j( k5 @
        num++;' K# F) S# S) Z/ s
        if(num>1)6 Y& F! U& A. k9 }+ s: [5 m
        {
/ J$ `+ y/ ]( {* s7 M          num=0;' q3 K" J; S0 h. I. b
        }" s6 b8 G  ?9 @
      }! `2 ~! Q4 R! x+ c! q
    }
" G8 D0 {/ M8 t7 n3 {, k7 N# ^    if(num==0)
4 O7 N. ^  M. K4 D* k    {9 Q2 i/ R) o1 Z0 U0 ?) p
      digitalWrite(led,LOW);
" _" t6 U/ n- W7 N9 y8 m1 Z    }
( H( O2 `6 Q! U: B2 P: z    if(num==1)% O% A5 o' H* }4 ?
    {; F1 l  p% c. e* O' o
      digitalWrite(led,HIGH);
- k0 [% y) @$ o' I# z8 P    }6 Y5 f) f! i3 C: K5 Y4 T/ I
  }  
* N1 d0 q0 \4 o}  D) C- c6 e6 H% D1 S4 O
( D) M; m7 w1 P9 H8 B1 ~, b
/*
$ {; _: S, m9 f* O3 |void loop()
9 o" \2 I; J5 p  l; H{
) U! K: g8 U: o  val=digitalRead(key);
# N* m2 n+ r, O: {5 m  if(val==HIGH)/ h0 C" ]1 j2 N0 E7 k
  {
6 Q. q( `$ z2 f# j7 L& ^: ?- x' p    digitalWrite(led,LOW);( c: s# b' K: j* H( |
  }
+ |7 V4 Q. O8 x8 Y# G  else& _4 p! m( P, W
  {
* t2 J/ u& Q/ P" X( n& E# f    digitalWrite(led,HIGH);% Y: T' p  e- s" k5 ^( X- _" x
  }: n7 o6 q# P+ B; d! |
}
* s, O! [* O2 o9 j*/9 ^6 S3 e: r+ _& D) t# O

) Y% |: ^0 Y& `8 V' B9 ?  U9 I
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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