Für alle anderen Menschen, die Arrays nicht verstehen also hier einen anderen Weg, um eine 4-stellige 7-Segment Werke zu zeigen.
Int aPin = 2; // A
Int bPin = 3; // ________
Int cPin = 4; // | |
Int dPin = 5; // F | | B
Int ePin = 6; // | G |
Int fPin = 7; // |________|
Int gPin = 8; // | |
Int GND1 = 9; // | |
Int GND2 = 10; // E | | C
Int GND3 = 11; // |________|
Int GND4 = 12; //
Int Num; // D
Int dig1 = 0;
Int dig2 = 0;
Int dig3 = 0;
Int dig4 = 0;
Int DTime = 4;
void setup()
{
PinMode (aPin, OUTPUT);
PinMode (bPin, Ausgang);
PinMode (cPin, OUTPUT);
PinMode (dPin, Ausgang);
PinMode (ePin, OUTPUT);
PinMode (fPin, Ausgang);
PinMode (gPin, OUTPUT);
PinMode (GND1, OUTPUT);
PinMode (GND2, OUTPUT);
PinMode (GND3, OUTPUT);
PinMode (GND4, OUTPUT);
Serial.Begin(9600);
}
void loop()
{
DigitalWrite (GND1, HIGH);
DigitalWrite (GND2, hoch);
DigitalWrite (GND3, hohe);
DigitalWrite (GND4, hohe);
Wenn (Serial.available() > 0)
{
NUM = Serial.parseInt();
Serial.println(Num);
dig1 = Num / 1000;
NUM = Num - (dig1 * 1000);
dig2 = Num / 100;
NUM = Num - (dig2 * 100);
dig3 = Num / 10;
dig4 = Num - (dig3 * 10);
}
DigitalWrite (GND4, LOW); Ziffer 4
pickNumber(dig4);
Delay(DTime);
DigitalWrite (GND4, hohe);
DigitalWrite (GND3, LOW); Ziffer 3
pickNumber(dig3);
Delay(DTime);
DigitalWrite (GND3, hohe);
DigitalWrite (GND2, LOW); Ziffer 2
pickNumber(dig2);
Delay(DTime);
DigitalWrite (GND2, hoch);
DigitalWrite (GND1, LOW); Ziffer 1
pickNumber(dig1);
Delay(DTime);
DigitalWrite (GND1, HIGH);
}
void PickNumber(int x) {}
Switch(x) {}
Fall 1: one(); zu brechen;
Fall 2: two(); zu brechen;
Fall 3: three(); zu brechen;
Fall 4: four(); zu brechen;
Fall 5: five(); zu brechen;
Fall 6: six(); zu brechen;
Fall 7: seven(); zu brechen;
Fall 8: eight(); zu brechen;
Fall 9: nine(); zu brechen;
Standard: zero(); zu brechen;
}
}
void clearLEDs()
{
DigitalWrite (2, niedrig); A
DigitalWrite (3, LOW); B
DigitalWrite (4, niedrig); C
DigitalWrite (5, niedrig); D
DigitalWrite (6, niedrig); E
DigitalWrite (7, niedrig); F
DigitalWrite (8, niedrig); G
}
void one()
{
DigitalWrite (aPin, LOW);
DigitalWrite (bPin, HIGH);
DigitalWrite (cPin, HIGH);
DigitalWrite (dPin, LOW);
DigitalWrite (ePin, LOW);
DigitalWrite (fPin, LOW);
DigitalWrite (gPin, LOW);
}
void two()
{
DigitalWrite (aPin, HIGH);
DigitalWrite (bPin, HIGH);
DigitalWrite (cPin, LOW);
DigitalWrite (dPin, HIGH);
DigitalWrite (ePin, HIGH);
DigitalWrite (fPin, LOW);
DigitalWrite (gPin, HIGH);
}
void three()
{
DigitalWrite (aPin, HIGH);
DigitalWrite (bPin, HIGH);
DigitalWrite (cPin, HIGH);
DigitalWrite (dPin, HIGH);
DigitalWrite (ePin, LOW);
DigitalWrite (fPin, LOW);
DigitalWrite (gPin, HIGH);
}
void four()
{
DigitalWrite (aPin, LOW);
DigitalWrite (bPin, HIGH);
DigitalWrite (cPin, HIGH);
DigitalWrite (dPin, LOW);
DigitalWrite (ePin, LOW);
DigitalWrite (fPin, HIGH);
DigitalWrite (gPin, HIGH);
}
void five()
{
DigitalWrite (aPin, HIGH);
DigitalWrite (bPin, LOW);
DigitalWrite (cPin, HIGH);
DigitalWrite (dPin, HIGH);
DigitalWrite (ePin, LOW);
DigitalWrite (fPin, HIGH);
DigitalWrite (gPin, HIGH);
}
void six()
{
DigitalWrite (aPin, HIGH);
DigitalWrite (bPin, LOW);
DigitalWrite (cPin, HIGH);
DigitalWrite (dPin, HIGH);
DigitalWrite (ePin, HIGH);
DigitalWrite (fPin, HIGH);
DigitalWrite (gPin, HIGH);
}
void seven()
{
DigitalWrite (aPin, HIGH);
DigitalWrite (bPin, HIGH);
DigitalWrite (cPin, HIGH);
DigitalWrite (dPin, LOW);
DigitalWrite (ePin, LOW);
DigitalWrite (fPin, LOW);
DigitalWrite (gPin, LOW);
}
void eight()
{
DigitalWrite (aPin, HIGH);
DigitalWrite (bPin, HIGH);
DigitalWrite (cPin, HIGH);
DigitalWrite (dPin, HIGH);
DigitalWrite (ePin, HIGH);
DigitalWrite (fPin, HIGH);
DigitalWrite (gPin, HIGH);
}
void nine()
{
DigitalWrite (aPin, HIGH);
DigitalWrite (bPin, HIGH);
DigitalWrite (cPin, HIGH);
DigitalWrite (dPin, HIGH);
DigitalWrite (ePin, LOW);
DigitalWrite (fPin, HIGH);
DigitalWrite (gPin, HIGH);
}
void zero()
{
DigitalWrite (aPin, HIGH);
DigitalWrite (bPin, HIGH);
DigitalWrite (cPin, HIGH);
DigitalWrite (dPin, HIGH);
DigitalWrite (ePin, HIGH);
DigitalWrite (fPin, HIGH);
DigitalWrite (gPin, LOW);
}