mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Unruhiges LED dimmen - warum?


Autor: didi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich experimentiere gerade mit dem dimmen von LEDs. Leider ist das ganze 
vor allem bei kurzen High Phasen des PWM Signals sehr unruhig und 
flackert. Mir ist nur nicht klar warum, da ich das ganze über den Timer2 
realisiere, der eine höhere Prio als die Interrupts von Timer1 und 
Timer0 haben, sollte das saubere Schalten des PWM Signals höhere 
Priorität haben.

Ich hab das ganze über einen Timer2 Overflow Interrupt und einen Timer2 
Compare Match am ATMEGA 168 realisiert:
TCCR2B   |= (1<<CS22);   // Prescale Takt / 128 (ergibt Periode 11,574us)
TCCR2B  &= ~(1<<CS21);  // Ergibt 2,963ms PWM Takt
TCCR2B  |= (1<<CS20);
TIMSK2 |= (1<<OCIE2A);  // Compare Match A INTERRUPT
TIMSK2 |= (1<<TOIE2);  // Timer2 Overflow INTERRUPT

OCR2A = 128;

ISR(TIMER2_COMPA_vect)
{
if(channelJobArray[0] == 22)
{
  //Lösche LED
  PORT_OUT1 &= ~(1<<OUT1);      
}
}

ISR(TIMER2_OVF_vect)
{
PORT_OUT1 |= (1<<OUT1);      
  
TCNT2 = 0;
}

Hat jemand eine Idee wo der Fehler liegt?

Autor: Matze Niemand (hupe123)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Weil wahrscheinlich deine Aufruffrequenz zu langsam ist.
schau dir an, wie es hier gelöst wurde:
http://www.lighthugger.de/wordpress/?p=96#more-96

ich habe es bei mir zuhause mit einem Takt von 90kHz realisiert... gut, 
vielleicht etwas übertrieben, aber der ATmega8 20Mhz hat nich viel zutun 
;)

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Matze Niemand schrieb:
> ATmega8 20Mhz

Gibt´s nicht. Entweder ATMega8 mit 16Mhz oder ATMega88 mit 20Mhz. 
Übertakten mal aussen vor gelassen.

Autor: Matze Niemand (hupe123)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ohh, das stimmt. ich hab eben mal nachgeschaut: sind nur 16Mhz...

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Code ist so nicht kompilierbar.

90kHz ist aber Quatsch. 100Hz reicht meistens. 1kHz kann man machen um 
auf der sicheren Seite zu sein. Allerdings leidet bei 20MHz Takt dann 
schon die PWM Auflösung.
Das
TCNT2 = 0
 lässt du am Besten mal weg.

Autor: Matze Niemand (hupe123)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
klar sind 90kHz quatsch, keine Frage. Aber warum leckt sich ein Hund an 
den Eiern?! Weil er's kann.
Hat auch zum Schluss nur noch spaß gemacht zu gucken was geht... ;)

Autor: Basti (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja dimmt eure LEDS nur mit hächstmöglichen Frequenzen und geht allen 
Mittelwelle/Kurzwelle Hörern auf den Sack :-)

100Hz sollten ausreichen

Autor: U.R. Schmitt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Basti schrieb:
> 100Hz sollten ausreichen

100 Hz sind sch... Sind dir noch nie die blöden LED Rückleuchten 
bekannter deutscher Autobauer aufgefallen, die,wenn du den Kopf schnell 
bewegst, dir mehrfache Lichtpunkte im Auge erzeugen?
400 - 1000Hz sind hier eine deutlich bessere Wahl, mit den 100KHz geb 
ich dir aber völlig recht.

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
U.R. Schmitt schrieb:
> Basti schrieb:
>> 100Hz sollten ausreichen
>
> 100 Hz sind sch... Sind dir noch nie die blöden LED Rückleuchten
> bekannter deutscher Autobauer aufgefallen,
Ich dachte, das seien nur 70Hz.
Trotzdem sehe ich 100Hz für zu niedrig an.

Autor: ... ... (docean) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Matze Niemand (hupe123)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hmm... stimmt. das mit dem mittel / langwellenradio hab ich völlig außer 
acht gelassen. ich höre kein radio - zuviel werbung - aber ich denke bei 
dem nächsten update der lampe mal dran! versprochen!

grüße

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.