Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- char BTWert; //Werte sollen per Bluetooth empfangen werden
- #define FrontBl 2
- #define SeitenWs 3
- #define SwWeit 4
- #define SwBreit 9
- #define Polar 6
- #define FrontOg 7
- #define SeiteOg 8
- #define FrontGb 9
- #define FrontGbTakt 10
- #define HeckGb 11
- #define HeckGbTakt 12
- #define SeiteWs 13
- int LDRPin = A3;
- int LDRWert = 0;
- int TagNacht = 300; //bei welcher Helligkeit TagNacht unterschieden wird
- int TagModus = 0;
- int NachtModus = 0;
- int Standlichtwert = 2; //Wie hell ein Paar Scheinwerfer im TagModus als Tagfahrlicht mitleuchen
- int K15Pin = A0; //Hier wird K15 Zustand eingelesen
- int FernLichtPin = A1; //Hier wird aufblend Zustand eingelesen
- int Zuendung = 0;
- int FernLicht = 0;
- int Intervall = 200; //Blinkintervall im TagMode-Code
- unsigned long vorigeMillis = 0;
- unsigned long aktuellMillis = 0;
- bool PolarStatus = 0;
- //---------------------------------------------------------------------------
- void setup() {
- Serial.begin(9600); //serieller Monitor wird gestartet, Baudrate auf 9600 festgelegt
- pinMode(2, OUTPUT); //blau
- pinMode(3, OUTPUT); //SeiteWeiß
- pinMode(4, OUTPUT); //weit
- pinMode(9, OUTPUT); //breit
- pinMode(6, OUTPUT); //Polar
- pinMode(7, OUTPUT); //FrontOg
- pinMode(8, OUTPUT); //SeiteOg
- pinMode(5, OUTPUT); //FrontGb
- pinMode(10, OUTPUT); //FrontGbTakt
- pinMode(11, OUTPUT); //HeckGb
- pinMode(12, OUTPUT); //HeckGbTakt
- pinMode(A0, INPUT); //K15Pin
- pinMode(A2, INPUT); //FernLicht
- pinMode(A3, INPUT); //LDRSensor
- }
- void loop() {
- if (Serial.available()) { //wenn Daten empfangen werden...
- BTWert = Serial.read(); //...sollen diese ausgelesen werden
- }
- //-------------------------------------------------------------------------------------------------------------------------
- LDRWert = analogRead(LDRPin); //Hier wird der Wert vom LDR eingelesen und in die Variable LDRWert geschrieben
- if (LDRWert > TagNacht && Zuendung == HIGH) {
- TagModus = HIGH;
- NachtModus = LOW;
- }
- else if (LDRWert < TagNacht && Zuendung == HIGH) {
- TagModus = LOW;
- NachtModus = HIGH;
- }
- else {
- TagModus = LOW;
- NachtModus = LOW;
- }
- //Ausgabe
- Serial.println(LDRWert);
- //Bedingungen Tagfahrlicht
- Zuendung = digitalRead(K15Pin);
- FernLicht = digitalRead(FernLichtPin);
- //Tagbetrieb
- //Zündung ON setzt Tagfahrlicht ON mit Standlichtwert auf den SwBreit
- if (Zuendung == HIGH && FernLicht == LOW && TagModus == HIGH && NachtModus == LOW) {
- analogWrite(SwBreit, Standlichtwert);
- }
- /*
- aktuellMillis = millis(); // vergangene Zeit wird in aktuelle Zeit gespeichert
- if (aktuellMillis - vorigeMillis >= Intervall) { // Falls mehr als Intervall vergangen ist
- vorigeMillis = aktuellMillis; // überschreibe die vergangene Zeit mit der aktuellen Zeit
- PolarStatus = !PolarStatus; // wechsle denZustand der Polar
- }
- */
- //Nachtbetrieb
- if (Zuendung == HIGH && FernLicht == LOW && TagModus == LOW && NachtModus == HIGH)
- //Bei BTWert 1 und Fernlicht soll erstes Paar Zusatzscheinwerfer zusätzlich leuchten
- if (FernLicht == HIGH) {
- if (BTWert == '1') {
- digitalWrite(SwBreit, HIGH);
- }
- //zweites Paar Zusatzscheinwerfer
- if (BTWert == '2') {
- digitalWrite(SwBreit, HIGH);
- digitalWrite(SwWeit, HIGH);
- }
- //drittes Paar Zusatzscheinwerfer
- if (BTWert == '3') {
- digitalWrite(SwBreit, HIGH);
- digitalWrite(SwWeit, HIGH);
- digitalWrite(Polar, HIGH);
- }
- //Alle Zusatzscheinwerfer aus
- if ((BTWert == '0') or (BTWert == 4)) {
- digitalWrite(SwBreit, LOW);
- digitalWrite(SwWeit, LOW);
- digitalWrite(Polar, LOW);
- }
- else {
- digitalWrite(SwBreit, LOW);
- digitalWrite(SwWeit, LOW);
- digitalWrite(Polar, LOW);
- }
- //FrontGelb
- if (BTWert == '5') {
- digitalWrite(FrontGb, HIGH);
- }
- if (BTWert == '6' && FrontGb == HIGH) {
- digitalWrite(FrontGbTakt, HIGH);
- }
- if (BTWert == '7') {
- digitalWrite(FrontGb, LOW);
- }
- //HeckGelb
- if (BTWert == '8') {
- digitalWrite(HeckGb, HIGH);
- }
- if (BTWert == '9' && HeckGb == HIGH) {
- digitalWrite(HeckGbTakt, HIGH);
- }
- if (BTWert == 'A') {
- digitalWrite(HeckGb, LOW);
- }
- //FrontBlau
- if ((BTWert == 'B') or (LDRWert < 300)) {
- digitalWrite(FrontBl, HIGH);
- }
- if (BTWert == 'C') {
- digitalWrite(FrontBl, LOW);
- }
- //SeiteWeiß
- if (BTWert == 'D') {
- digitalWrite(SeitenWs, HIGH);
- }
- if (BTWert == 'E') {
- digitalWrite(SeitenWs, LOW);
- }
- //FrontOg
- if (BTWert == 'F') {
- digitalWrite(FrontOg, HIGH);
- }
- if (BTWert == 'G') {
- digitalWrite(FrontOg, LOW);
- }
- //SeiteOg
- if (BTWert == 'H') {
- digitalWrite(SeiteOg, HIGH);
- }
- if (BTWert == 'I') {
- digitalWrite(SeiteOg, LOW);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement