Prutsertje
bloep....
Ik heb een stukje programma wat bijna doet wat ik wil, alleen bijna, want ik heb een probleem.
stuk van de code waar het om gaat
delay MOVLW 0ffh
MOVWF counter2
verder GOTO pintest
pintest btfsc porta,0
goto pin1
btfsc porta,1
goto pin2
goto nopin
pin1 call pauzeloop1
pin1a btfsc porta,1
goto ab
goto pauze1
pin2 call pauzeloop2
pin2a btfsc porta,0
goto ba
goto pauze2
pauzeloop1 movlw 0ffh
movwf pauzetijd
pauze1 movlw 0ffh
movwf counter5
pauze1a decfsz counter5, 1
goto pauze1a
decfsz pauzetijd, 1
goto pin1a
goto nopin
pauzeloop2 movlw 0ffh
movwf pauzetijd
pauze2 movlw 0ffh
movwf counter5
pauze2a decfsz counter5, 1
goto pauze2a
decfsz pauzetijd, 1
goto pin2a
goto nopin
ab goto upertray
ba goto lowertray
nopin MOVLW 0FFh
MOVWF counter
opnieuw DECFSZ counter, 1
GOTO opnieuw
DECFSZ counter2, 1
GOTO verder
return
Dit stukje is een delay voor een ander stukje programma, in deze delay moeten de poorten RA2 en RA3 'gescand' worden of deze hoog zijn, en als RA2 hoog is en binnen tijd x pen RA3 ook hoog is ga naar programma ab en andersom ook. Nu werkt het wel, alleen als ik de eerste pen wat langer bekrachtig, zeg 4 sec. dan blijft hij in deze delay 'ergens?' hangen, en ik heb geen idee waar en hoe dit komt. Het zal wel heel simpel zijn, maar ik kom er nu echt niet meer uit, ben al deze hele dag bezig 
Hopenlijk ziet iemand de fout...
Thomas
Hello, I'm a signature virus. Please copy me into Hello, I'm a signature virus scanner. I succesfully deleted your signature virus.
k.p.meinesz
Een schizofreen is nooit alleen!
zet je de poorten hoog met een bsf,bcf instructie?
dit wil wel eens voor problemen zorgen
het is nl. een read modify write instructie
al eens in de animate debugger gegooid van MPLAB
dan zie je meteen waar het fout gaat
zet echter je pauze tijden dan ff korter anders ben je nog een nacht bezig ook
Prutsertje
bloep....
Op 24 april 2003 17:43:55 schreef k.p.meinesz:
1. zet je de poorten hoog met een bsf,bcf instructie?
dit wil wel eens voor problemen zorgen
het is nl. een read modify write instructie2. al eens in de animate debugger gegooid van MPLAB
dan zie je meteen waar het fout gaat
zet echter je pauze tijden dan ff korter anders ben je nog een nacht bezig ook
1. Hoe bedoel je dit precies, ben nog maar beginner met PIC....
2. Hoe kan ik in de debugger de pen zgn. hoog maken ??
k.p.meinesz
Een schizofreen is nooit alleen!
Op 24 april 2003 18:17:46 schreef Prutsertje:
[...]
1. Hoe bedoel je dit precies, ben nog maar beginner met PIC....
BSF (bit set f)gebruik je om een bit van een adres hoog te maken bv
BSF porta,1 dan word bit 1 van poort a hoog gemaakt
BSF 05,3 bit 3 van de bank switch word hoog gemaakt
bcf dan word de bit laag gemaakt
echter stel je hebt pin 1 als out en pin 2 als in en deze maak je hoog
en tegelijk word de bsf/bcf instructie gebruikt dan word de poort gelezen de bit word veranderd en het resultaat weer terug geschreven hierdoor zal pin 2 hoog blijven
2. Hoe kan ik in de debugger de pen zgn. hoog maken ??
met SIMULATOR STIMULUS
en dan asynchronous stimulus
je kruigt dan een paneeltje
met de rechter muis toets kun je dan de knop toewijzen aan een poort
en vervolgens welk signaal erop moet hoog laag ed.
Prutsertje
bloep....
kan ik die animatie ook langzamer laten lopen zodat ik zie wat er gebeurt ? ('k weet het, blijf lastig
)
Bastiaan
Bachelor of Engineering -- Microcontrollers AVR, PIC (asm, C), PC applicaties (C, C++), Webpages (HTML, CSS, PHP, SQL), Rail-infra engineer
Op 24 april 2003 19:57:09 schreef Prutsertje:
kan ik die animatie ook langzamer laten lopen zodat ik zie wat er gebeurt ? ('k weet het, blijf lastig)
Ja dmv "steppen" met F7, dat is regel voor regel simuleren.
Prutsertje
bloep....
Hehe, heeft me gisteren hoofdpijn opgeleverd
maar ben er eindelijk uit. Ik heb call pauzeloop(n) gebruikt, maar bij de return raakt het daardoor in een loop. met goto pauzeloop(n) is het opgelost. Ongelofelijk dat je op zoiets stoms een hele middag moet zoeken en het niet vindt, ik denk dat ik te lang aan het staren was. Vanmorgen was ik binnen een half uur eruit. Bedankt voor alle hulp
.