|
发表于 2015-12-31 13:52:49
|
显示全部楼层
qwer1111 发表于 2015-12-28 11:55
long randNumberA1;
long randNumberA2;
long randNumberB1;
#define KEY 2
#define KEY1 3
#define KEY2 4
#define KEY3 5
#define KEY4 6
#define KEY5 7
#define KEY6 8
#define KEY7 9
#define KEY8 10
#define KEY9 11
#define KEY10 12
unsigned long currentMillis;long randNumberA1;long randNumberA2;
long randNumberB1;long randNumberB2;
int KEY_NUM = 0;int KEY1_NUM = 0;int KEY2_NUM = 0;
int KEY3_NUM = 0;int KEY4_NUM = 0;int KEY5_NUM = 0;
int KEY6_NUM = 0;int KEY7_NUM = 0;int KEY8_NUM = 0;
int KEY9_NUM = 0;int KEY10_NUM = 0;
int a=63;int b=0;int c=0;int interval = 500;
int a1=0;int a2=0;int a3=0;int a4=0;int a5=0;
int b1=0;int b2=0;int b3=0;int b4=0;int b5=0;
void setup()
{
Serial.begin(9600);
pinMode(KEY,INPUT_PULLUP);
pinMode(KEY1,INPUT_PULLUP);
pinMode(KEY2,INPUT_PULLUP);
pinMode(KEY3,INPUT_PULLUP);
pinMode(KEY4,INPUT_PULLUP);
pinMode(KEY5,INPUT_PULLUP);
pinMode(KEY6,INPUT_PULLUP);
pinMode(KEY7,INPUT_PULLUP);
pinMode(KEY8,INPUT_PULLUP);
pinMode(KEY9,INPUT_PULLUP);
pinMode(KEY10,INPUT_PULLUP);
}
void loop()
{
if(digitalRead(2)==LOW){b=1;}
if(b==1){
unsigned long startMillis = millis();
for(currentMillis = millis();startMillis + interval > currentMillis;)
{currentMillis=millis();
if(a<=59){
ScanKey1();
if(KEY1_NUM == 1)
{ a1=1;Serial.print("A1close:");digitalWrite(23,LOW);digitalWrite(24,LOW);digitalWrite(25,LOW);digitalWrite(26,LOW);digitalWrite(27,LOW);a1=0;
digitalWrite(randNumberA1,!digitalRead(randNumberA1));
randNumberA1 = random(23,28);
Serial.print("A1open:");
Serial.println(randNumberA1);}
ScanKey2();
if(KEY2_NUM == 1)
{ a2=1;Serial.print("A1close:");digitalWrite(23,LOW);digitalWrite(24,LOW);digitalWrite(25,LOW);digitalWrite(26,LOW);digitalWrite(27,LOW);a2=0;
digitalWrite(randNumberA1,!digitalRead(randNumberA1));
randNumberA1 = random(23,28);
Serial.print("A1open:");
Serial.println(randNumberA1);}
ScanKey3();
if(KEY3_NUM == 1)
{ a3=1;Serial.print("A1close:");digitalWrite(23,LOW);digitalWrite(24,LOW);digitalWrite(25,LOW);digitalWrite(26,LOW);digitalWrite(27,LOW);a3=0;
digitalWrite(randNumberA1,!digitalRead(randNumberA1));
randNumberA1 = random(23,28);
Serial.print("A1open:");
Serial.println(randNumberA1);}
ScanKey4();
if(KEY4_NUM == 1)
{ a4=1;Serial.print("A1close:");digitalWrite(23,LOW);digitalWrite(24,LOW);digitalWrite(25,LOW);digitalWrite(26,LOW);digitalWrite(27,LOW);a4=0;
digitalWrite(randNumberA1,!digitalRead(randNumberA1));
randNumberA1 = random(23,28);
Serial.print("A1open:");
Serial.println(randNumberA1);}
ScanKey5();
if(KEY5_NUM == 1)
{ a5=1;Serial.print("A1close:");digitalWrite(23,LOW);digitalWrite(24,LOW);digitalWrite(25,LOW);digitalWrite(26,LOW);digitalWrite(27,LOW);a5=0;
digitalWrite(randNumberA1,!digitalRead(randNumberA1));
randNumberA1 = random(23,28);
Serial.print("A1open:");
Serial.println(randNumberA1);}
ScanKey6();
if(KEY6_NUM == 1)
{ b1=1;Serial.print("A2close:");digitalWrite(28,LOW);digitalWrite(29,LOW);digitalWrite(30,LOW);digitalWrite(31,LOW);digitalWrite(32,LOW);b1=0;
digitalWrite(randNumberA2,!digitalRead(randNumberA2));
randNumberA2 = random(28,33);
Serial.print("A2open:");
Serial.println(randNumberA2);}
ScanKey7();
if(KEY7_NUM == 1)
{ b2=1;Serial.print("A2close:");digitalWrite(28,LOW);digitalWrite(29,LOW);digitalWrite(30,LOW);digitalWrite(31,LOW);digitalWrite(32,LOW);b2=0;
digitalWrite(randNumberA2,!digitalRead(randNumberA2));
randNumberA2 = random(28,33);
Serial.print("A2open:");
Serial.println(randNumberA2);}
ScanKey8();
if(KEY8_NUM == 1)
{ b3=1;Serial.print("A2close:");digitalWrite(28,LOW);digitalWrite(29,LOW);digitalWrite(30,LOW);digitalWrite(31,LOW);digitalWrite(32,LOW);b3=0;
digitalWrite(randNumberA2,!digitalRead(randNumberA2));
randNumberA2 = random(28,33);
Serial.print("A2open:");
Serial.println(randNumberA2);}
ScanKey9();
if(KEY9_NUM == 1)
{ b4=1;Serial.print("A2close:");digitalWrite(28,LOW);digitalWrite(29,LOW);digitalWrite(30,LOW);digitalWrite(31,LOW);digitalWrite(32,LOW);b4=0;
digitalWrite(randNumberA2,!digitalRead(randNumberA2));
randNumberA2 = random(28,33);
Serial.print("A2open:");
Serial.println(randNumberA2);}
ScanKey10();
if(KEY10_NUM == 1)
{ b5=1;Serial.print("A2close:");digitalWrite(28,LOW);digitalWrite(29,LOW);digitalWrite(30,LOW);digitalWrite(31,LOW);digitalWrite(32,LOW);b5=0;
digitalWrite(randNumberA2,!digitalRead(randNumberA2));
randNumberA2 = random(28,33);
Serial.print("A2open:");
Serial.println(randNumberA2);}
}
if(a<0){a=63;b=0;}
}
Serial.println(a);
a--;
if(a==59){
randNumberA1 = random(23,28);
Serial.print("A1open:");
Serial.print(randNumberA1);
Serial.print(",");
randNumberA2 = random(28,33);
Serial.print("A2open:");
Serial.print(randNumberA2);
Serial.print(",");
}
}
}
void ScanKey()
{
KEY_NUM = 0;
if(digitalRead(KEY) == LOW)
{
delay(20);
if(digitalRead(KEY) == LOW)
{
KEY_NUM = 1;
while(digitalRead(KEY) == LOW);
}
}
}
void ScanKey1()
{
KEY1_NUM = 0;
if(digitalRead(KEY1) == LOW)
{
delay(20);
if(digitalRead(KEY1) == LOW)
{
KEY1_NUM = 1;
while(digitalRead(KEY1) == LOW);
}
}
}
void ScanKey2()
{
KEY2_NUM = 0;
if(digitalRead(KEY2) == LOW)
{
delay(20);
if(digitalRead(KEY2) == LOW)
{
KEY2_NUM = 1;
while(digitalRead(KEY2) == LOW);
}
}
}
void ScanKey3()
{
KEY3_NUM = 0;
if(digitalRead(KEY3) == LOW)
{
delay(20);
if(digitalRead(KEY3) == LOW)
{
KEY3_NUM = 1;
while(digitalRead(KEY3) == LOW);
}
}
}
void ScanKey4()
{
KEY4_NUM = 0;
if(digitalRead(KEY4) == LOW)
{
delay(20);
if(digitalRead(KEY4) == LOW)
{
KEY4_NUM = 1;
while(digitalRead(KEY4) == LOW);
}
}
}
void ScanKey5()
{
KEY5_NUM = 0;
if(digitalRead(KEY5) == LOW)
{
delay(20);
if(digitalRead(KEY5) == LOW)
{
KEY5_NUM = 1;
while(digitalRead(KEY5) == LOW);
}
}
}
void ScanKey6()
{
KEY6_NUM = 0;
if(digitalRead(KEY6) == LOW)
{
delay(20);
if(digitalRead(KEY6) == LOW)
{
KEY6_NUM = 1;
while(digitalRead(KEY6) == LOW);
}
}
}
void ScanKey7()
{
KEY7_NUM = 0;
if(digitalRead(KEY7) == LOW)
{
delay(20);
if(digitalRead(KEY7) == LOW)
{
KEY7_NUM = 1;
while(digitalRead(KEY7) == LOW);
}
}
}
void ScanKey8()
{
KEY8_NUM = 0;
if(digitalRead(KEY8) == LOW)
{
delay(20);
if(digitalRead(KEY8) == LOW)
{
KEY8_NUM = 1;
while(digitalRead(KEY8) == LOW);
}
}
}
void ScanKey9()
{
KEY9_NUM = 0;
if(digitalRead(KEY9) == LOW)
{
delay(20);
if(digitalRead(KEY9) == LOW)
{
KEY9_NUM = 1;
while(digitalRead(KEY9) == LOW);
}
}
}
void ScanKey10()
{
KEY10_NUM = 0;
if(digitalRead(KEY10) == LOW)
{
delay(20);
if(digitalRead(KEY10) == LOW)
{
KEY10_NUM = 1;
while(digitalRead(KEY10) == LOW);
}
}
} |
|