Wir müssen in der Schule ein Programm am Arduino schreiben bei dem man das Licht eines Kfz bedienen können muss. Das haben wir auch geschafft, jetzt wollen wir aber noch ein display dazufügen, für das wir auch ein passendes Programm haben. Allerding bekommen wir die Programme einfach nicht zusammen.
Das Lichtprogramm:
#define Blink_R 6 //Blinkerlampe rechts am Port 6
#define S_Blink_R 8 //Schalter vom Blinker rechts am Port 8
#define Blink_L 7 //Blinkerlampe Links am Port 7
#define S_Blink_L 9 //Schlter vom Blinker Links am Port 9
#define Ruecklicht_R 4 //Rücklicht Rechts am Port 4
#define Ruecklicht_L 5 //Rücklicht Links am Port 5
#define S_Fahrlicht 10 //Schalter vom Fahrlicht am Port 10
#define Bremslicht_L 2 //Bremslicht Links am Port 2
#define Bremslicht_R 11 //Bremslicht Rechts am Port 11
#define S_Bremslicht 3 //Schalter vom Bremslicht am Port 3
int blinkStatus = LOW; //Blink-Status auf "aus"
int BlinkerRStatus = LOW; //Blinker-Status- Speicher 1 auf "aus"
int BlinkerLStatus = LOW; //Blinker-Status-Speicher 1 auf "aus"
int FahrlichtStatus = LOW; //Standlicht-Status auf "aus"
int BremslichtStatus = LOW; // Fahrtlicht-Status auf "aus"
unsigned long zurueckZeit = 0; //32 Bit-Speicherplatz für die zurückliegende Zeit
unsigned long aktuelleZeit = 0; //32 Bit-Speicherplatz für die Zeit nach dem Einschalten
const long blinkintervall = 555; //32 Bit-Speicherplatz für den Blink-Intervall-Konstante
void setup()
{
pinMode(Blink_R, OUTPUT); //Blinkerlampenport recht auf Ausgabe schalten
pinMode(Blink_L, OUTPUT); //Blinkerlampenport links auf Ausgabe schalten
pinMode(Ruecklicht_R, OUTPUT); //Rücklicht links-Port auf Ausgabe schalten
pinMode(Ruecklicht_L, OUTPUT); //Rücklicht links-Port auf Ausgabe schalten
pinMode(Bremslicht_L, OUTPUT); //Bremslicht-links-Port auf Ausgabe schalten
pinMode(Bremslicht_R, OUTPUT); //Bremslicht-links-Port auf Ausgabe schalten
pinMode(S_Fahrlicht, INPUT_PULLUP); //Port für den Fahrtrichtungsschalter auf Eingabe mit Pullup-Wiederstand Schalten
pinMode(S_Blink_R, INPUT_PULLUP); //Port für den Blinkschalter-rechts auf Eingabe mit Pullup-Wiederstand schalten
pinMode(S_Blink_L, INPUT_PULLUP); //Port für den Blinkerschalter-links auf Eingabe mit Pullup-Wiederstand schalter
pinMode(S_Bremslicht, INPUT_PULLUP); //Port für den Bremslichtschalter auf Eingabe mit Pullup-Wiederstand schalten
}
void loop()
{
aktuelleZeit = millis();
if(aktuelleZeit - zurueckZeit >= blinkintervall)
{
zurueckZeit = aktuelleZeit;
if(blinkStatus == LOW)
{
blinkStatus =HIGH;
}
else
{
blinkStatus = LOW;
}
}
BlinkerRStatus = digitalRead(S_Blink_R);
if (BlinkerRStatus == LOW)
{
digitalWrite(Blink_R, blinkStatus);
}
else
{
digitalWrite(Blink_R, LOW);
}
BlinkerLStatus = digitalRead(S_Blink_L);
if (BlinkerLStatus == LOW)
{
digitalWrite(Blink_L, blinkStatus);
}
else
{
digitalWrite(Blink_L, LOW);
}
FahrlichtStatus = digitalRead(S_Fahrlicht);
if(FahrlichtStatus == LOW)
{
digitalWrite(Ruecklicht_L, HIGH);
digitalWrite(Ruecklicht_R, HIGH);
}
else
{
digitalWrite(Ruecklicht_L, LOW);
digitalWrite(Ruecklicht_R, LOW);
}
BremslichtStatus = digitalRead(S_Bremslicht);
if(BremslichtStatus == LOW)
{
digitalWrite(Bremslicht_L, HIGH);
digitalWrite(Bremslicht_R, HIGH);
}
else
{
digitalWrite(Bremslicht_L, LOW);
digitalWrite(Bremslicht_R, LOW);
}
}
Das Displayporgramm:
#include <LiquidCrystal> //LCD-Bibliothek laden
LiquidCrystal lcd(34, 32, 30, 28, 26, 24); //In dieser Zeile wird festgelegt, welche Pins des Mikrocontrollerboards für das LCD verwendet wird (Am besten erstmal nicht verändern).
void setup()
{
lcd.begin(16, 2); //Im Setup wird angegeben, wie viele Zeichen und Zeilen verwendet werden. Hier: 16 Zeichen in 2 Zeilen.
}
void loop()
{
lcd.setCursor(0, 0); //Startposition der Darstellung auf dem LCD festlegen. lcd.setCursor(0,0) bedeutet: Erstes Zeichen in der ersten Zeile.
lcd.print("Turbo"); //Dort soll der Text „www.funduino.de“ erscheinen. Der Befehl lcd.setCursor ist dem Mikrocontrollerboard durch das Aufrufen der Bibliothek bekannt.
lcd.setCursor(0, 1); // lcd.setCursor(0,1) bedeutet: Erstes Zeichen in der zweiten Zeile.
lcd.print("[Ein] [Aus]"); //Dort soll dann der Text „Viel Erfolg!!!“ auftauchen.
}
Könnt ihr uns bitte helfen ?![]()