Ohtsji, Randie wrote: > > Out of 12 characters, I do properly receive the 1st, 3rd, 5th, 7th, 9th, > 11th, and 12th character. > On the scope, transmit looks okay. > > On the transmitter side I am doing a routine similar to (just off the top of > my head): > > tx_send > movlw 0x0c ;12 characters to send > movwf txcounter > movlw txbuffer ;set up pointer > movwf fsr > tx_out: > movf indf,w ;get character to send > movwf txreg > btfss pir1,txif ;check transmit buffer > goto $-1 ;wait, transmit buffer not empty yet > incf fsr ;advance pointer to next RAM > decfsz txcounter > goto tx_out > return I had the same problem until I checked TXSTA,TRMT instead of PIR1,TXIF. Transmit movwf TXREG bsf STATUS,RP0 txddn btfss TXSTA,TRMT goto txddn bcf STATUS,RP0 return