#include <Keypad.h>
char keys[4][4] = {
{ '1', '2', '3', 'A' },
{ '4', '5', '6', 'B' },
{ '7', '8', '9', 'C' },
{ '*', '0', '#', 'D' }
};
uint8_t colPins[4] = { 5, 4, 3, 2 }; // Pins connected to C1, C2, C3, C4
uint8_t rowPins[4] = { 9, 8, 7, 6 }; // Pins connected to R1, R2, R3, R4
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, 4, 4);
const int seg7[8] = {A0,A1,A2,A3,A4,A5,12,A11};
const bool Number[14][7]={0,0,0,0,0,0,1,//0
1,0,0,1,1,1,1,//1
0,0,1,0,0,1,0,//2
0,0,0,0,1,1,0,//3
1,0,0,1,1,0,0,//4
0,1,0,0,1,0,0,//5
0,1,0,0,0,0,0,//6
0,0,0,1,1,1,1,//7
0,0,0,0,0,0,0,//8
0,0,0,0,1,0,0,//9
0,0,0,1,0,0,0,//A
1,1,0,0,0,0,0,//B
0,1,1,0,0,0,1,//C
1,0,0,0,0,1,0,//D
};
bool st_SW1;
int x1=0;
int y;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
for(int i=0;i<8;i++){ pinMode(seg7[i], OUTPUT); }
for(int i=0;i<8;i++){ digitalWrite(seg7[i],HIGH);}
}
void loop() {
// put your main code here, to run repeatedly:
char key = keypad.getKey();
if (key != NO_KEY) {
Serial.println(key);
}
if(key == '0') {
for(int i=0;i<8;i++) {digitalWrite(seg7[i],Number[0][i]);}
}else if(key == '1') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[1][i]);}
}
else if(key == '2') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[2][i]);}
}
else if(key == '3') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[3][i]);}
}
else if(key == '4') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[4][i]);}
}
else if(key == '5') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[5][i]);}
}
else if(key == '6') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[6][i]);}
}
else if(key == '7') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[7][i]);}
}
else if(key == '8') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[8][i]);}
}
else if(key == '9') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[9][i]);}
}
else if(key == 'A') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[10][i]);}
}
else if(key == 'B') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[11][i]);}
}
else if(key == 'C') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[12][i]);}
}
else if(key == 'D') {
for(int i=0;i<8;i++){digitalWrite(seg7[i],Number[13][i]);}
}
}