PWM Anfängerproblem

Gast #442980
Lesenswert?
• ▲
▼
Hallo zusammen,

ich experimentiere gerade mit der PWM meines ATMega16. Leider habe ich 
die PWM noch aktiviert bekommen.

Mein Versuch beschränkt sich momentan darauf, die Helligkeit einer LED 
mittels PWM zu variieren.

Ich sende mal den C-Codeausschnitt fürs PWM:

  TCCR1A = (1<<WGM10)|(1<<COM1A1); // PWM, phase correct, 8 bit.
  TCCR1B =  (1<<CS11) |(1<<CS10); // set clock/prescaler 1/64 -> enable 
counter


  OCR1A=128; // LED 50%

Mehr stelle ich an den Countern/Timern nicht ein. Vielleicht ist das das 
Problem. ;-)

Ich habe schon von mehreren Webseite verschieden Codeausschnitte 
probiert, alle ohne Erfolg.

Was vergesse ich, oder was mache ich falsch? Es wäre evtl. auch 
hilfreich, wenn mir jemand ein ähnlich einfaches Codebeispiel sendet.

Vielen Dank
Marcel
#443028
Lesenswert?
• ▲
▼
Hallo nochmal,

ich habe noch weiter experimentiert und einen Tippfehler in meinem 
Quellcode gefunden. Nun scheint das Grundprinzip zu funktionieren. Nur 
gibt es noch ein weiteres Problem: Nach dem Starten des Programmes hat 
die LED eine festgelegte Helligkeit (Startwert). Wenn ich nun während 
der Laufzeit den Wert von OCR1A ändere, ändert sich die Helligekit der 
LED nicht. Lege ich einen anderen Startwert fest und übertrage das 
Programm neu, dann hat die LED eine andere Helligekeit. Hast du eine 
Idee?

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.