PWM-Lauflicht

Gast #371145
Lesenswert?
• ▲
▼
Anbei mal ein Lauflicht mit PWM aufm AT89C2051
1
if( --pwm[0] == 0 )
2
  PWM0 = 0;

wird aufm 8051 compiliert in die DJNZ-Instruktion, welche nichtmal
Flags verändert.
Dadurch ist der Software-PWM Interrupt sehr schnell.

Aufm AVR ist das dann umständlicher, aber das sollte er durch mehr MIPS
wieder kompensieren können (notfalls Interrupt in Assembler).


Schwerer wirds aber, wenn daneben noch andere Sachen gemacht werden
sollen.
Aufm 8051 gibt man einfach dem PWM-Interrupt die hohe Priorität und gut
is. Dann können andere Interrupts ruhig langsamer sein, ohne die PWM zu
stören.
Aufm AVR wirds dagegen haarig (Priorität in Software nachbilden).


Peter
Angehängte Dateien:
Gast #1314217
Lesenswert?
• ▲
▼
Hallo Peter,

möcht dich nur zur Kontrolle fragen wie der genau Ablauf von deinem 
Lauflicht gedacht ist? Weil ich sichergehen möchte das ich keine Fehler 
gemacht hab...

8LEDS sind eingeschalten und es soll den Anschein haben als würde eine 
einzelne gedimmte LED von Bit0 nach Bit7 laufen, ist das korrekt?
Gast #1317133
Lesenswert?
• ▲
▼
k hat sich erledigt...bin jetzt erst draufgekommen das die leds bei dir 
wahrscheinlich gegen Vcc geschaltet sind...da das bei mir nicht der fall 
ist hab ich das ganze invertiert gesehen...nach der korrektur schauts 
schon wieder anders aus...aber wirklich schön gemacht...

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.