Hi,
nach langem Suchen und Probieren hab ich mittlerweile ne 3 sekunden Pause,aber es hat nicht den gewünschten Effekt.
Eigentlich soll das Programm ablaufen und dann die Pause von 3 Sekunden einhalten.
Es gibt aber ne Pause zwischen jedem Sprung zur nächsten LED. Das ist bestimmt ein Anfängerfehler, aber ich finde den nicht. Wäre nett,wenn jemand ein TIP geben kann!
Danke.
LIST P=16f54
#include <P16f54.INC>
cblock 0x0c
d1
d2
d3
COUNT
endc
; Configuration festlegen
__CONFIG _WDT_OFF & _HS_OSC
;**************************************************************
;**************************************************************
; Port B auf Ausgabe stellen
Init
bsf STATUS, 5 ; auf Bank 1 umschalten
movlw B'00000000' ; PortB alle output
tris PORTB
bcf STATUS, 5 ; auf Bank 0 zurückschalten
clrf PORTB ; alle LEDs ausschalten
; 1. und 2. LED einschalten
bsf PORTB,0 ; LED an RB0 einschalten
bsf PORTB,1 ; LED an RB1 einschalten
; Lauflicht
Loop
call Delay3sek ; Wartezeit
rlf PORTB,f ; laufen zur nächsten LED
goto Loop
;**************************************************************
;14999997 cycles
Delay3sek movlw 0x88
movwf d1
movlw 0xB3
movwf d2
movlw 0x21
movwf d3
Delay_0
decfsz d1, f
goto $+2
decfsz d2, f
goto $+2
decfsz d3, f
goto Delay_0
;3 cycles
goto $+1
nop
retlw 0
end