Marco78
18.03.2005, 22:54
Folgender Codeteil erbringt nicht das erhoffte:
Do
For X = 800 To 0 Step -10
Pwm1b = X
Pwm1a = X
A = X / 8
Cls
Lcd A ; "%"
Lowerline
Lcd X
Waitms 150
Next X
Wait 1
Loop
X ist Word und A ist Byte. Wenigstens das sollte schonmal richtig sein.
Das ganze ist eine PWM die soweit auch funktioniert, bis auf das auf dem LCD angezeigte.
Im ersten Durchlauf fängt X mit 800 an. Aber A zeigt nur 4%
X zählt in 10er Schritten runter. A wird auch weniger. Nachdem A=0 hatte fängt A wieder mit 31 an. X zählt normal weiter. A zählt auch runter und fängt nach 0 wieder mit 31 an.
Irgendwann sind dann X und A=0.
Dann fängt X mit 6553X an. Welche Zahl genau kann ich so schnell nicht sehen. Aber ziemlich am max was Word aufnehmen kann. A zählt auch da immer nur von 31 runter.
X zählt immer un 10 runter und die Bel. wird heller. Bei max. Helligkeit fängt sie wieder bei (fast) Null an heller zu werden.
Sieht da jemand den Fehler im Programm und kann mir die Lösung nennen?
Do
For X = 800 To 0 Step -10
Pwm1b = X
Pwm1a = X
A = X / 8
Cls
Lcd A ; "%"
Lowerline
Lcd X
Waitms 150
Next X
Wait 1
Loop
X ist Word und A ist Byte. Wenigstens das sollte schonmal richtig sein.
Das ganze ist eine PWM die soweit auch funktioniert, bis auf das auf dem LCD angezeigte.
Im ersten Durchlauf fängt X mit 800 an. Aber A zeigt nur 4%
X zählt in 10er Schritten runter. A wird auch weniger. Nachdem A=0 hatte fängt A wieder mit 31 an. X zählt normal weiter. A zählt auch runter und fängt nach 0 wieder mit 31 an.
Irgendwann sind dann X und A=0.
Dann fängt X mit 6553X an. Welche Zahl genau kann ich so schnell nicht sehen. Aber ziemlich am max was Word aufnehmen kann. A zählt auch da immer nur von 31 runter.
X zählt immer un 10 runter und die Bel. wird heller. Bei max. Helligkeit fängt sie wieder bei (fast) Null an heller zu werden.
Sieht da jemand den Fehler im Programm und kann mir die Lösung nennen?