Hi, I am trying to transmit and recieve block of few bytes through USART. I am using PIC18F452 and PIC18F252 at two kits. I am programming in assembly language. Tranmission is @1200 baud and Procesoor clock @4Mhz. My problem is, I cant recieve byte unless insert a delay at transmitter. But it slows the communication. What could be the solution ? concerned code is copied here. How to speedup the communication eliminating <> between consecutive bytes. TRANS bsf RCSTA,SPEN ;Enable serial port bsf RCSTA,CREN ;cont recieve mode bsf RCSTA,RX9 ;9'th bit recieve enable movlw 0x33 ;for 1200 baud movwf SPBRG bcf TXSTA,BRGH ;Lo spped baud select bsf TXSTA,TXEN ;Transmit enable TXEN-1 bsf TXSTA,TX9 ;9'th bit transmit enable movff CMD_T,TXREG ;byte to transmit return ;----------------------------- TRAX TX_L bcf TXSTA,TX9D ;CLR bit 9 movff PWM_D,CMD_T call TRANS call Delay1 TX_H bsf TXSTA,TX9D ;set bit 9 movff PWM_V,CMD_T call TRANS return ... Delay1 movlw H'FF' movwf Dx L2 movwf Dy clrwdt L1 decfsz Dy goto L1 decfsz Dx goto L2 return ;;;; recieve iterrupt service routine is ..... ISR_RX btfss RCSTA,RX9D goto LB goto HB HB movff RCREG,FDBK_H goto OVER_RCV LB movff RCREG,FDBK_L OVER_RCV retfie ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;