Hallo Torsten
Hiermit möchte ich dir das Programm zeigen.
Bin in dem Bereich Programmieren aber kein Experte.
Habe ein Hauptprogramm mit mehreren Unterprogrammen.
Die Hauptsächlichen Dinge sind IF-Bedingungen und For-Schleifen.
Im Moment läuft das Programm permanent, eventuell möchte ich aber mittels Uhr und oder Bewegungsmelder es starten.
Außerdem leuchtet der Schlepper nicht immer korrekt sondern hat auch eine Art „blink / Disco“ Funktion.
Aber seh selbst:
//################################################################################################################
/* Definierung der Variablen zu Ausgangsnummer */
#define out_LED1 1 // Positionslicht Rot
#define out_LED2 2 // Positionslicht Grün
#define out_LED3 3 // Innenraum
#define out_LED4 4 // 2x Rote Mast
#define out_LED5 5 // 2x Weiß Hinten
#define out_LED6 6 // 2x Weiß Rechts & Links
#define out_LED7 7 // 2x Weiß Bug
#define out_LED8 8 // 2x Weiß Dach
#define out_LED9 9 // Außen Rundum
#define out_LED10 11 // Toplicht Bug
#define out_LED11 12 // Toplicht Heck
#define out_LED12 13 // Licht Mast
int ledPins[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13};
int pinCount = 12;
//################################################################################################################
/* Deklaration der Variablen als Ausgang */
void setup() {
pinMode(out_LED1, OUTPUT);
pinMode(out_LED2, OUTPUT);
pinMode(out_LED3, OUTPUT);
pinMode(out_LED4, OUTPUT);
pinMode(out_LED5, OUTPUT);
pinMode(out_LED6, OUTPUT);
pinMode(out_LED7, OUTPUT);
pinMode(out_LED8, OUTPUT);
pinMode(out_LED9, OUTPUT);
pinMode(out_LED10, OUTPUT);
pinMode(out_LED11, OUTPUT);
pinMode(out_LED12, OUTPUT);
// Deklarierung der Array Wette als Output
for (int thisPin = 0; thisPin < pinCount; thisPin++) {
pinMode(ledPins[thisPin], OUTPUT);
}
}
// Hauptprogramm ##########################################################################################
void loop()
{
// Start Alle 3 mal schnell Blinken
for (int i=0; i <= 3; i++){
Alle_An();
delay(100);
Alle_Aus();
delay(100);
}
delay(500);
// Alle einzeln Ein und Ausschalten
for (int thisPin = 0; thisPin < pinCount; thisPin++) {
digitalWrite(ledPins[thisPin], HIGH);
delay(1000);
digitalWrite(ledPins[thisPin], LOW);
}
delay(500);
// Helligkeit Zufall Flackerlicht
// Außen
Flackerlicht_Ausen();
delay(500);
// Alle nacheinander Einschalte wie ein Lauflicht und wieder ausschalten
Lauflicht();
delay(500);
// Helligkeit Zufall Flackerlicht
// Innen
Flackerlicht_Innen();
delay(500);
// Zufällig Ein / Ausschalten - Wild Durcheinander
Zufall_EinAus();
delay(500);
// Helligkeit Gleitend
// Ausen
Helligkeit(9);
// Alle Blinken auf einmal
for (int i=0; i <= 5; i++){
Alle_An();
delay(500);
Alle_Aus();
delay(500);
}
// Helligkeit Gleitend
// Innen
Helligkeit(3);
// LED Mast blinken
for (int i=0; i <= 5; i++){
Mast_Alle_An();
delay(500);
Alle_Aus();
delay(500);
}
// Fotomodus
Foto();
for (int i=0; i <= 300; i++){ // 5 Minuten Waten
delay(1000);
}
// Alle_Aus();
delay(1000);
}
Paddybilt