Yep. There is a problem in the OWOUT library routine that causes a continuous loop if the
defined OSC > 8.
Open your pbppic14.lib. Scroll down to the OWOUT library routine.
Change this;
Code:
iorwf INDF, F ; Set to input then wait ~10us for recovery
decfsz R1 + 1, F ; Do next bit, if any
if (OSC > 8)
movlw 9 ; Delay 9us
call PAUSEUS
endif
goto owoutloop
To this;
Code:
iorwf INDF, F ; Set to input then wait ~10us for recovery
if (OSC > 8)
movlw 9 ; Delay 9us
call PAUSEUS
endif
decfsz R1 + 1, F ; Do next bit, if any
goto owoutloop
decfsz R1 + 1, F needs to be after if (OSC > 8) and just before goto owoutloop or you're stuck
in a nasty continuous loop whenver OSC > 8.
Bookmarks