Postat: 11 mars 2007, 22:24:46
Under ett anfall av total uttråkning läste jag igenom lite av din kod 
Jag fann ett vanligt nybörjarfel som jag kallar "vad ligger *igentligen* i W-registret?"-felet.
Om du noga kontrollerar koden under din "step_1"-del av programmet sätter du w-registret till 1 INNAN du hoppar till kod "portb5_in" vilken också proppar in massa grejor i w-registret. När koden sedan hoppar tillbaka till "step_2" tror du i godan ro att du via "addwf time,f" adderar 1 till variabeln "time" i varje iteration när du igentligen adderar... ja, vad är det du adderar... ?
Edit: Såg just att sodjan tipsade om samma sak, man är sen som vanligt...
/Kaggen

Jag fann ett vanligt nybörjarfel som jag kallar "vad ligger *igentligen* i W-registret?"-felet.
Kod: Markera allt
step_1
bsf sens1 ;ladda upp kondensatorn
call delay
bcf sens1
movlw 0h ;nollställ "time"
movwf time
movlw 1h ;lägg 1hex i W registret
goto portb5_in ;ändra sens1 (portb5) till ingång
step_2
addwf time,f
...
Edit: Såg just att sodjan tipsade om samma sak, man är sen som vanligt...
/Kaggen