- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 10 von 23

Thema: Einschaltsignal mit externer Spannungsquelle, Zeitverzögertes Ausschalten

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Benutzer Stammmitglied Avatar von PlasmaTubeI²C
    Registriert seit
    19.03.2013
    Ort
    Nürnberg
    Alter
    28
    Beiträge
    78
    Ganz simpel würde ich das auf Anhieb so lösen:

    Code:
    void loop() {
      if(digitalRead(input) == HIGH && lastread == false){
         digitalWrite(ledpin, HIGH);
         delay(4000);
         digitalWrite(ledpin, LOW);
         lastread = true;
      }
      else if(digitalRead(input) == LOW && lastread == true){
        lastread = false;
      }   
    }
    Erklärung:

    Bei der ersten if-Bedingung wird abgefragt, ob am Eingangs-Pin eine Spannung anliegt und ob ein Wechsel stattgefunden hat. (von Low auf High)
    Trifft das zu, wird der Ausgangs-Pin auf HIGH gesetzt, eine beliebige Zeit gewartet und wieder ausgestellt.
    Die Variable "lastread" wird auf "true" gesetzt, was in dem Fall den Sinn hat, das das Programm weiß, dass beim aktuellen Status des Eingangs-Pins die Led schon an war - sprich es muss erst mal
    so lange gewartet werden bis das Signal wieder 0 ist.
    Trifft das zu (wir sind nun bei der "else if"), wird erst geprüft, ob zuletzt die Led an war, sonst würde die else-if-Bedingung bei nicht anliegendem Signal dauerhaft ausgeführt werden.
    War der Ausgangs-Pin vor dem Wechsel High -> Low an, wird die 'lastread' wieder zurückgesetzt und bei erneutem Anlegen eines Spannungspegels fängt das Ganze von vorne an.

    Anmerkung: Wie Picojetflyer schon sagte, ist ein 'delay' nicht wirklich sinnvoll, da es den kompletten Programmfluss anhält, für den Anfang reicht es aber.
    Gruß, Stefan. Rechtschreibfehler gefunden? Kannste behalten!

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    03.11.2013
    Beiträge
    11
    Super, danke werde ich gleich mal testen. Noch eine Frage dazu, ich habe am Eingang (INPUT)eine Spannung von 1,8 Volt bei der die Schaltung ausgelöst wird. Muss ich hier noch was extra programmieren da die Eingänge ja auf 5 Volt max ausgelegt sind?

    Danke

  3. #3
    Benutzer Stammmitglied Avatar von PlasmaTubeI²C
    Registriert seit
    19.03.2013
    Ort
    Nürnberg
    Alter
    28
    Beiträge
    78
    Soweit ich weiß, lösen die Pins erst ein HIGH-State aus, wenn die Spannung höher als 3V ist, genaue Werte habe ich nicht im Kopf.
    Meistens bei etwas mehr als der Hälfte der Maximalspannung des Mikrocontrollers.

    Musst wahrscheinlich nen OPV davor setzen, damits mit 1,8V klappt.
    Gruß, Stefan. Rechtschreibfehler gefunden? Kannste behalten!

Ähnliche Themen

  1. Lampen mit RN-controll an- und ausschalten
    Von cricri im Forum Sensoren / Sensorik
    Antworten: 1
    Letzter Beitrag: 18.01.2011, 10:22
  2. 5V/3,3V Spannungsquelle mit mind. 1A gesucht
    Von BlackDevil im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 10
    Letzter Beitrag: 20.03.2010, 09:47
  3. Mit dem AVR eine Hochstromleitung ein/ausschalten
    Von Basteltisch im Forum Elektronik
    Antworten: 43
    Letzter Beitrag: 09.11.2009, 18:58
  4. Led mit Taster ein- und ausschalten
    Von Nullinger im Forum Elektronik
    Antworten: 6
    Letzter Beitrag: 30.01.2009, 14:00
  5. Antworten: 18
    Letzter Beitrag: 07.12.2004, 13:52

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress