Wenn du nur PortB.0-4 anschalten willst hat du nur 5 Bit also musst du 5x zählen aber nicht mit +1 sondern mit +2.
Auch das stimmt nicht ganz - denn dann würde A ja die Werte 2,4,6,8 und 10 annehmen. Und wenn diese Werte auf den PORTB ausgegeben werden, entsteht zwar ein interessantes Muster, aber kein "durchlaufendes" Bit.
Wenn ich Dich richtig verstanden habe, HM, möchtest Du so ´ne Art Lauflicht realisieren. Also die folgenden Bytes ausgeben:
00000001
00000010
00000100
00001000
00010000
Richtig? Dann mach´ doch mal den Windows-Rechner auf und wandle diese Binärzahlen in Dezimalzahlen um. Herauskommen wird 1,2,4,8 und 16. Heißt also im Klartext, dass Du mit A=1 anfängst, dann alle 200 ms den Befehl A=A*2 machst, und A wieder auf 1 setzt, nachdem es 16 gewesen ist. In Code also etwa so:
Code:
...
...
Dim A as byte
A=1
Do
PORTB = A
Waitms200
If A=16 then A=1 else A=A*2
Loop
Und das müsste auch bei > 28 Grad funktionieren
Lesezeichen