Dus voor alle andere mensen die niet Arrays begrijpen is hier een andere manier van het maken van een 4-cijferige 7-segment weer werk.
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 rekenwijze = 4;
VOID Setup
{
pinMode (aPin, uitvoer);
pinMode (bPin, OUTPUT);
pinMode (cPin, OUTPUT);
pinMode (dPin, OUTPUT);
pinMode (ePin, OUTPUT);
pinMode (fPin, OUTPUT);
pinMode (gPin, OUTPUT);
pinMode (GND1, uitvoer);
pinMode (GND2, uitvoer);
pinMode (GND3, uitvoer);
pinMode (GND4, uitvoer);
Serial.begin(9600);
}
void loop
{
digitalWrite (GND1, hoge);
digitalWrite (GND2, hoge);
digitalWrite (GND3, hoge);
digitalWrite (GND4, hoge);
Als (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, laag); cijfer 4
pickNumber(dig4);
delay(DTime);
digitalWrite (GND4, hoge);
digitalWrite (GND3, laag); cijfer 3
pickNumber(dig3);
delay(DTime);
digitalWrite (GND3, hoge);
digitalWrite (GND2, laag); cijfer 2
pickNumber(dig2);
delay(DTime);
digitalWrite (GND2, hoge);
digitalWrite (GND1, laag); cijfer 1
pickNumber(dig1);
delay(DTime);
digitalWrite (GND1, hoge);
}
VOID pickNumber(int x) {}
switch(x) {}
geval 1: one(); breken;
geval 2: two(); breken;
Case 3: three(); breken;
geval 4: four(); breken;
geval 5: five(); breken;
kast 6: six(); breken;
geval 7: seven(); breken;
geval 8: eight(); breken;
zaak 9: nine(); breken;
standaard: zero(); breken;
}
}
VOID clearLEDs()
{
digitalWrite (2, laag); A
digitalWrite (3, laag); B
digitalWrite (4, laag); C
digitalWrite (5, laag); D
digitalWrite (6, laag); E
digitalWrite (7, laag); F
digitalWrite (8, laag); G
}
VOID one()
{
digitalWrite (aPin, laag);
digitalWrite (bPin, hoge);
digitalWrite (cPin, hoge);
digitalWrite (dPin, laag);
digitalWrite (ePin, laag);
digitalWrite (fPin, laag);
digitalWrite (gPin, laag);
}
VOID two()
{
digitalWrite (aPin, hoge);
digitalWrite (bPin, hoge);
digitalWrite (cPin, laag);
digitalWrite (dPin, hoge);
digitalWrite (ePin, hoge);
digitalWrite (fPin, laag);
digitalWrite (gPin, hoge);
}
VOID three()
{
digitalWrite (aPin, hoge);
digitalWrite (bPin, hoge);
digitalWrite (cPin, hoge);
digitalWrite (dPin, hoge);
digitalWrite (ePin, laag);
digitalWrite (fPin, laag);
digitalWrite (gPin, hoge);
}
VOID four()
{
digitalWrite (aPin, laag);
digitalWrite (bPin, hoge);
digitalWrite (cPin, hoge);
digitalWrite (dPin, laag);
digitalWrite (ePin, laag);
digitalWrite (fPin, hoge);
digitalWrite (gPin, hoge);
}
VOID five()
{
digitalWrite (aPin, hoge);
digitalWrite (bPin, laag);
digitalWrite (cPin, hoge);
digitalWrite (dPin, hoge);
digitalWrite (ePin, laag);
digitalWrite (fPin, hoge);
digitalWrite (gPin, hoge);
}
VOID six()
{
digitalWrite (aPin, hoge);
digitalWrite (bPin, laag);
digitalWrite (cPin, hoge);
digitalWrite (dPin, hoge);
digitalWrite (ePin, hoge);
digitalWrite (fPin, hoge);
digitalWrite (gPin, hoge);
}
VOID seven()
{
digitalWrite (aPin, hoge);
digitalWrite (bPin, hoge);
digitalWrite (cPin, hoge);
digitalWrite (dPin, laag);
digitalWrite (ePin, laag);
digitalWrite (fPin, laag);
digitalWrite (gPin, laag);
}
VOID eight()
{
digitalWrite (aPin, hoge);
digitalWrite (bPin, hoge);
digitalWrite (cPin, hoge);
digitalWrite (dPin, hoge);
digitalWrite (ePin, hoge);
digitalWrite (fPin, hoge);
digitalWrite (gPin, hoge);
}
VOID nine()
{
digitalWrite (aPin, hoge);
digitalWrite (bPin, hoge);
digitalWrite (cPin, hoge);
digitalWrite (dPin, hoge);
digitalWrite (ePin, laag);
digitalWrite (fPin, hoge);
digitalWrite (gPin, hoge);
}
VOID zero()
{
digitalWrite (aPin, hoge);
digitalWrite (bPin, hoge);
digitalWrite (cPin, hoge);
digitalWrite (dPin, hoge);
digitalWrite (ePin, hoge);
digitalWrite (fPin, hoge);
digitalWrite (gPin, laag);
}