Stap 4: De Arduino schets/Code
Hier is de code hieronder, ik bereid voor dit project. Voor het samenstellen van dit, ik hoop dat je een kennis van de Arduino IDE & seriële Monitor voeders van de IDE. In principe moet de code worden gecompileerd en geüpload naar de Arduino. Vervolgens in de seriële Monitor hebt net voor het invoeren van een getal (cijfer off-cursus) weer te geven in de breadboard 7 Segment setup. Elke verkeerde ingang (tekens dan getallen) zal alle de LEDs uitschakelen en geven een foutmelding in de seriële beeldscherm (zoals te zien in de afbeelding als bijlage).
Ik heb zelfs de code in de Arduino Sketch formaat (voor degenen die haat kopiëren-plakken) standaard bijgevoegd.
<pre>void setup()<br>{ Serial.begin(9600); // begin serial communication Serial.println("Digit Displayed in 7 Segment Setup : "); // debug string for (int DigitalPin = 7; DigitalPin <= 13; DigitalPin++) { pinMode(DigitalPin, OUTPUT); } } //end setup method
int x; // integer x decalaraion for taking input from user
void loop() //begin main loop { if(Serial.available()>0) //check if there is charecter in the serial buffer { x=Serial.read();
switch (x) { case '1': //display 1 in 7 Segment Setup Serial.println(); Serial.write(x); digitalWrite(7, LOW); digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, LOW); digitalWrite(11, LOW); digitalWrite(12, LOW); digitalWrite(13, LOW); break; case '2': //display 2 in 7 Segment Setup Serial.println(); Serial.write(x); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, LOW); digitalWrite(10, HIGH); digitalWrite(11, HIGH); digitalWrite(12, LOW); digitalWrite(13, HIGH); break; case '3': //display 3 in 7 Segment Setup Serial.println(); Serial.write(x); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, HIGH); digitalWrite(11, LOW); digitalWrite(12, LOW); digitalWrite(13, HIGH); break; case '4': //display 4 in 7 Segment Setup Serial.println(); Serial.write(x); digitalWrite(7, LOW); digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, LOW); digitalWrite(11, LOW); digitalWrite(12, HIGH); digitalWrite(13, HIGH); break; case '5': //display 5 in 7 Segment Setup Serial.println(); Serial.write(x); digitalWrite(7, HIGH); digitalWrite(8, LOW); digitalWrite(9, HIGH); digitalWrite(10, HIGH); digitalWrite(11, LOW); digitalWrite(12, HIGH); digitalWrite(13, HIGH); break; case '6': //display 6 in 7 Segment Setup Serial.println(); Serial.write(x); digitalWrite(7, HIGH); digitalWrite(8, LOW); digitalWrite(9, HIGH); digitalWrite(10, HIGH); digitalWrite(11, HIGH); digitalWrite(12, HIGH); digitalWrite(13, HIGH); break; case '7': //display 7 in 7 Segment Setup Serial.println(); Serial.write(x); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, LOW); digitalWrite(11, LOW); digitalWrite(12, LOW); digitalWrite(13, LOW); break; case '8': //display 8 in 7 Segment Setup Serial.println(); Serial.write(x); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, HIGH); digitalWrite(11, HIGH); digitalWrite(12, HIGH); digitalWrite(13, HIGH); break; case '9': //display 9 in 7 Segment Setup Serial.println(); Serial.write(x); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, HIGH); digitalWrite(11, LOW); digitalWrite(12, HIGH); digitalWrite(13, HIGH); break; case '0': //display 0 in 7 Segment Setup Serial.println(); Serial.write(x); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, HIGH); digitalWrite(11, HIGH); digitalWrite(12, HIGH); digitalWrite(13, LOW); break; default: Serial.println(); Serial.println("No Digit is Displayed ! Please enter a valid digit from 0-9 !!"); for (int DigitalPin = 7; DigitalPin <= 13; DigitalPin++) { digitalWrite(DigitalPin, LOW); // turn all the LEDs off }
} //end switch case } //end if } //end main loop