Einzelnen Beitrag anzeigen
Alt 11.02.2016, 20:24   #2
RKLsammler

Silber-Mitglied
 
Benutzerbild von RKLsammler
 
Name: Matthias
Registriert seit: 25.02.2013
Beiträge: 1.236
Standard

Coole Sache!

Hab ein bisschen an deinem Code herumgebastelt und eine Memory-Funktion eingebunden, d.h. das zuletzt eingestellte Blitzmuster bleibt nach Abschalten erhalten.

Nötige Änderungen im Code:

Code:
//Fahrrad-Blaulicht by Doc112
//Blitzmuster von Hella K-LED FO und RTK7

#include < EEPROM.h > //LEERZEICHEN zwischen den Klammern ENTFERNEN!

const int buttonPin = 2;

int rate= 1;
int reset= 100;
int timer = 0;
int buttonState = 0;
int counter = 0;
int buttonStateHIGH = 0;
int blau = 13; //PWN
int sensorPin = A7;
int sensorValue = 0;

int addr = 0;

void setup() {
    Serial.begin(9600);
    pinMode(buttonPin, INPUT_PULLUP);   
    pinMode(blau, OUTPUT);
    counter = EEPROM.read(addr);  
}

void loop(){
  timer++; //timer erhöhen
  delay(rate); //Geschwindigkeit timer
  if (timer == reset) //Reset
  timer = 0;
 
//  sensorValue = analogRead(sensorPin); //Poti auslesen
//  rate = map(sensorValue, 0, 1023, 0, 100); //Bereich Sensor u Rate festlegen
//  analogWrite(gelb, rate); //Ausgabe zur Kontrolle

  
  buttonState = digitalRead(buttonPin); //Modiwahl durch Taster
  if (buttonState == HIGH) 
  {     
    buttonStateHIGH = 1;
  } 
  if (buttonState == LOW && buttonStateHIGH == 1)
  {
    counter++; //Modi hochzählen
    EEPROM.write(addr, counter);
    buttonStateHIGH = 0;
  }
  if (counter == 12) //Modi zurücksetzen (letzter Modi + 1)
  {
    counter = 0; 
  }
Der Rest ab hier bleibt gleich.

Hoffentlich hat das Forum alles übernommen, denn interessanterweise kann ich "#include < EEPROM.h >" ohne die Leerzeichen zwischen den eckigen Klammern nicht schreiben, es verschwindet warum auch immer...
RKLsammler ist offline   Privat Nachricht senden Mit Zitat antworten