PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mega128 hardware Timer zum LED Displaybeleuchtung dimmen



Accenter
07.04.2008, 18:37
Ich möchte die LED Hintergrundbeleuchtung an meinem 240x128 GLCD Display dimmbar machen. Zeitgesteuert soll so in der Nacht die Helligkeit runtergeregelt werden. Eine Transistorschaltung habe ich aufgebaut (ein und aus funktioniert schon über Port B.7).

Ich hab noch nie mit PWM gearbeitet, für mich ist das Neuland. Hat jemand einige Zeilen Code für mich aus einem ähnlichen Projekt damit ich das verstehe und für meine Bedürfnisse modifizieren kann.

Ich arbeite mit einem Mega128 und würde gerne Port B.7 verwenden. Welchen Timer verwende ich da am besten? Die Auflösung muß denke ich nicht sehr hoch sein.

Würde mich über einige Zeilen Code freuen um das verstehen zu können.

Vitis
07.04.2008, 23:23
portb.7 ist entweder timer1 oc1C ... oder timer2 ... timer 2 denk ich ist sinnvoller für den zweck

Accenter
08.04.2008, 20:21
Ich hab das jetzt mal nach einem Beispielcode probiert den ich im Netz gefunden habe. (teilweise modifiziert auf Timer2). Jedoch klappt das noch nicht wirklich. ich möchte das auf einem Mega128 mit 16Mhz Quarz zum laufen bringen. Zum Test soll mal eine Led ein udn aus gedimmt werden.

Wo ist der Fehler?

Config Timer2 = Pwm , Compare A Pwm = Clear Down , Prescale = 8

Config Portb.7 = Output

Dim A As Byte


Do
For A = 0 To 255 Step 1
Pwm2a = A
Waitms 10
Next

For A = 255 To 0 Step -1
Pwm2a = A
Waitms 10
Next
Loop
End