-
-
Neuer Benutzer
Öfters hier
ähm , ich hab die Schleife 2 mal gemacht
das heisst er zählt 255 mal von 255 runter
aber trotzdem kann ich mir nicht erklären warum ein Lernbeispiel von "Sprut" abstürzt .
wie gesagt die mitgelieferten Beispiele laufen alle , sobald ich aber was verändere zb anstatt eines lauflichts nur eine LED ansteuere dann funktioniert es nicht mehr , also das Beispiel für das lauflicht ( ohne kommentare) ist hier
list p=16f627
#include <C:\P16f627.INC>
__CONFIG _PWRTE_ON & _WDT_OFF & _XT_OSC
loops Equ 0x22 ; Zahler fur Warteschleife
loops2 Equ 0x23 ; Zahler fur Warteschleife
Init
bsf STATUS, RP0 ; auf Bank 1 umschalten
movlw B'00000000' ; PortB alle output
movwf TRISB
bcf STATUS, RP0 ; auf Bank 0 zuruckschalten
clrf PORTB ; alle LEDs ausschalten
bsf PORTB,0 ; LED an RB0 einschalten
Loop
call Wait ; Wartezeit
rlf PORTB,f ; laufen zur nachsten LED
call Loop
Wait
movlw D'250' ; 250 ms Pause
movwf loops
Wai
movlw .110 ; Zeitkonstante fur 1ms
movwf loops2
Wai2 nop ;
nop
nop
nop
nop
nop
decfsz loops2, F ; 1 ms vorbei?
goto Wai2 ; nein, noch nicht
;
decfsz loops, F ; 250 ms vorbei?
goto Wai ; nein, noch nicht
retlw 0 ; das Warten hat ein Ende
end
wenn jetzt die 4-te LED angeht stürzt der PIC ab
wenn du dich damit auskennst wäre es nett wenn du mir ein kleines Programm schreiben könntest welches die LED ein und ausschaltet =)
ich sag schonmal danke
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen