- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 5 von 5

Thema: Buck LED Treiber mit Arduino dimmen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Hey Hannes,

    danke für die Hilfe.
    Bei mir wird 0 und 100 % geschaltet, aber beim PWM 1-99% macht er irgendwie nichts.
    Stelle ich den Ausgang so richtig auf PWM um ?

    Code:
    void writePwm(float _percent)
    { 
        if (_percent == 0)
        {       
           pinMode(ledPin, OUTPUT); 
           digitalWrite(ledPin, HIGH); 
        }
        else if (_percent == 100)
        {      
           pinMode(ledPin, OUTPUT); 
           digitalWrite(ledPin, LOW); // Setzt den Digitalpin 13 auf HIGH = "Ein"
        }
        else if (_percent > 0 && _percent < 100)
        {
           //Ausgang auf PWM stellen, Vorgabewert in OCR1A schreiben (1...414)     
           pinMode(ledPin, OUTPUT);                          // Set digital pin to an output
           TCCR1A = _BV(COM1A1) | _BV(COM1A0) | _BV(WGM11);  // Enable the PWM output OC1A on digital pins and invert output
           TCCR1B = _BV(WGM13) | _BV(WGM12) | _BV(CS12);     // Set fast PWM and prescaler of 256 on timer 1
           ICR1 = 415;                                     // Set the PWM frequency to 150Hz: 16MHz/(256 * 150Hz) - 1 => (16000000/38400)-1 => 416,667 -1 => 415,667 => 415
           OCR1A = (415 / 100) * _percent;
        }
    }

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    37
    Beiträge
    5.091
    Ich würde nur mit Integer arbeiten und nicht mit Prozent und Float. Du kannst es aber so machen wie du willst.

    Was ich nicht ganz verstehe ist warum du den Pin immer auf Ausgang setzt. Eigentlich reicht einmal.

    Was du testen kannst ist einfach einmal die PWM erhöhen. Die PWM konfigurieren und mit einem Zähler erhöhst du den PWM Wert (0-Max).

    Kannst du die PWM messen?

    Die Konfiguration des Timers sollte passen.

    MfG Hannes

  3. #3
    Hi,
    ja klar du hast recht mit dem Float und ja ich brauche den Pin nur einmal auf Ausgang setzen.
    Ich habe die PWM Frequenz erhöht und nun geht alles. Musste ich ein bischen mit den Frequenzen rumspielen. Besitze leider kein Oszi.
    Danke für deine Hilfe

Ähnliche Themen

  1. Buck LED Treiber mit Arduino dimmen
    Von Lord Integer im Forum Elektronik
    Antworten: 1
    Letzter Beitrag: 26.02.2020, 19:56
  2. [ERLEDIGT] Treiber für Arduino Uno
    Von trunx im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 2
    Letzter Beitrag: 11.06.2018, 15:22
  3. Finde keinen Treiber für Arduino UNO
    Von Elu im Forum Arduino -Plattform
    Antworten: 5
    Letzter Beitrag: 08.06.2018, 22:30
  4. Verkaufe Arduino + Ramps + Treiber + Kabel
    Von SoulRaiZor im Forum Kaufen, Verkaufen, Tauschen, Suchen
    Antworten: 0
    Letzter Beitrag: 16.05.2015, 13:51
  5. [ERLEDIGT] High-Power LED mit Arduino dimmen
    Von gusi im Forum Elektronik
    Antworten: 1
    Letzter Beitrag: 13.04.2015, 06:25

Berechtigungen

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

Solar Speicher und Akkus Tests