Quote Originally Posted by Bruce View Post
What you're seeing with the 2nd version is read-modify-write. The HIGH/LOW commands
use BSF/BCF to toggle port bits. Doing this too quickly, one after another, causes the
read-modify-write problem. This is in most PIC data sheets and the midrange ref manual.

Try this. If it works as expected, then you're 100% sure the problem is read-modify-write.
The only difference here is you're allowing each port bit time to change before the next
read-modify-write operation.

loop:

HIGH PORTB.0
PAUSEUS 25
HIGH PORTB.1
PAUSEUS 25
HIGH PORTB.2
PAUSE 250
LOW PORTB.0
PAUSEUS 25
LOW PORTB.1
PAUSEUS 25
LOW PORTB.2
PAUSE 250

goto loop

END
That didnt work, quess I haft to stick with PORTB = %...

..but whats the difference between 'PAUSE' and 'PAUSEUS'?