int ledPins[7]={19,18,5,17,16,4,0};
int counter=0;
void setup() {
Serial.begin(115200);
Serial.println("Hello, ESP32!");
for(int i=0;i<7;i++)
{
pinMode(ledPins[i], OUTPUT);
}
}
void loop()
{
}
void serialEvent()
{
while(Serial.available())
{
char ch = Serial.read();
Serial.print(ch);
sevensegment(ch);
}
}
void sevensegment(char ch)
{
switch(ch)
{
case '0':
all_off();
digitalWrite(ledPins[0], HIGH);
digitalWrite(ledPins[1], HIGH);
digitalWrite(ledPins[2], HIGH);
digitalWrite(ledPins[3], HIGH);
digitalWrite(ledPins[4], HIGH);
digitalWrite(ledPins[5], HIGH);
break;
case '1':
all_off();
digitalWrite(ledPins[1], HIGH);
digitalWrite(ledPins[2], HIGH);
break;
case '2':
all_off();
digitalWrite(ledPins[0], HIGH);
digitalWrite(ledPins[6], HIGH);
digitalWrite(ledPins[1], HIGH);
digitalWrite(ledPins[4], HIGH);
digitalWrite(ledPins[3], HIGH);
break;
case '3':
all_off();
digitalWrite(ledPins[0], HIGH);
digitalWrite(ledPins[6], HIGH);
digitalWrite(ledPins[1], HIGH);
digitalWrite(ledPins[2], HIGH);
digitalWrite(ledPins[3], HIGH);
break;
case '4':
all_off();
digitalWrite(ledPins[5], HIGH);
digitalWrite(ledPins[6], HIGH);
digitalWrite(ledPins[1], HIGH);
digitalWrite(ledPins[2], HIGH);
break;
case '5':
all_off();
digitalWrite(ledPins[0], HIGH);
digitalWrite(ledPins[6], HIGH);
digitalWrite(ledPins[5], HIGH);
digitalWrite(ledPins[2], HIGH);
digitalWrite(ledPins[3], HIGH);
break;
case '6':
all_off();
digitalWrite(ledPins[0], HIGH);
digitalWrite(ledPins[6], HIGH);
digitalWrite(ledPins[5], HIGH);
digitalWrite(ledPins[2], HIGH);
digitalWrite(ledPins[3], HIGH);
digitalWrite(ledPins[4], HIGH);
break;
case '7':
all_off();
digitalWrite(ledPins[0], HIGH);
digitalWrite(ledPins[2], HIGH);
digitalWrite(ledPins[1], HIGH);
break;
case '8':
all_off();
digitalWrite(ledPins[0], HIGH);
digitalWrite(ledPins[6], HIGH);
digitalWrite(ledPins[5], HIGH);
digitalWrite(ledPins[2], HIGH);
digitalWrite(ledPins[3], HIGH);
digitalWrite(ledPins[4], HIGH);
digitalWrite(ledPins[1], HIGH);
break;
case '9':
all_off();
digitalWrite(ledPins[0], HIGH);
digitalWrite(ledPins[6], HIGH);
digitalWrite(ledPins[5], HIGH);
digitalWrite(ledPins[2], HIGH);
digitalWrite(ledPins[3], HIGH);
digitalWrite(ledPins[1], HIGH);
break;
}
}
void all_off()
{
for(int i=0;i<7;i++)
{
digitalWrite(ledPins[i],LOW);
}
}