Untitled
unknown
plain_text
2 years ago
1.1 kB
3
Indexable
char key[4][4]={{'1','2','3','A'},{'4','5','6','B'},{'7','8','9','C'},{'*','0','#','D'}}; #define pin1 5 #define pin2 6 #define pin3 7 #define pin4 8 #define pin5 9 #define pin6 10 #define pin7 12 #define pin8 13 char pinBushed; int input_pins[4]={8,7,6,5}; int output_pins[4]={13,12,10,9}; // פונקציה char mykey(void) { int r,c; for(r=0;r<4;r++) { digitalWrite(output_pins[r],LOW); for(int c=0;c<4;c++) { if((digitalRead(input_pins[c])==LOW)) return key[r][c]; } digitalWrite(output_pins[r],HIGH); } return '$'; } void setup() { Serial.begin(9600); pinMode(pin1,INPUT_PULLUP); pinMode(pin2,INPUT_PULLUP); pinMode(pin3,INPUT_PULLUP); pinMode(pin4,INPUT_PULLUP); pinMode(pin5,OUTPUT); pinMode(pin6,OUTPUT); pinMode(pin7,OUTPUT); pinMode(pin8,OUTPUT); digitalWrite(pin5,HIGH); digitalWrite(pin6,HIGH); digitalWrite(pin7,HIGH); digitalWrite(pin8,HIGH); } void loop() { pinBushed=mykey(); char key; if(pinBushed=='$') { ; } else { Serial.println(pinBushed); } delay(500); }
Editor is loading...