I would recommend clearing out the register any time a byte arrives and store it. This can be done by monitoring the receive flag RCIF. There will be 1ms of time to do other processing if necessary. If you take more than that, you are in trouble. Maybe you can be interrupted by RCIF and handle it then. What are you using to write code, assembly, PBP, etc.? -----Original Message----- From: pic microcontroller discussion list [mailto:PICLIST@MITVMA.MIT.EDU]On Behalf Of martin_claudio@FULLZERO.COM.AR Sent: Wednesday, June 09, 2004 3:02 PM To: PICLIST@MITVMA.MIT.EDU Subject: [PIC]: USART overrun problem Hi all, i4m trying to comunicate a PC with a PIC16f874(clock 4 MHZ) , using the USART asynchronous mode at 9600 bps. The length of each message is 8 bytes (8bits,Non Parity,1Stop bit). This PIC has a FIFO buffer(Register RCREG) of two bytes, so the idea is to clean the buffer before the third byte reach the buffer, i4ve been triying to improve the code in the PIC to clean the buffer as fast as possible, but i 4m still having this problem. Is there any good code to avoid it? Can it be done adding hardware? Thanks a lot __________________________________________________ Internet gratis. Siempre. http://www.fullzero.com.ar -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu