In a message dated 98-03-05 12:29:58 EST, you write: << I am designing a PIC 16c84 circiut to which is a system of clocks in a whole building. All these PIC circuits are controlled and updated form a central location (a pc). for now I am passing data via the rs232. Later on I will pass data super imposed on the mains. But unfortunately I still have bugs when reading the data serially. For some strange reason, the PIC seems to stop after the first bit. I tried simulating it with a simulus file and everything seems ok.Does anyone of you have implemented an rs232 successfully (form pc to pic)? By the way I am using RB0 as a receive pin. Initailly my idea was to generate an interrupt when the start bit is detected but for some strange reason, this did not work. The data baud rate required is 110 bits per second. >> Hello Chris, I use RS232 and RS485 extensivly with the 16F84. My RS232 routines are not interupt driven though. I have threatend to re-write them but for now they are not. Have you looked at the interupt mask bits? You have to clear them in your interupt routine in order get subsequent interupts. A RETFIE instuction will only clear the global interupt mask not the change on 'B' mask. Only clear the mask at the end of your interupt service routine, otherwise you might get an interupt while you are in the interupt routine. If this happens too often you can run out of stack space and the program will go off into never never land. Also are you saving your registers at the begining of the interupt routine and restoring the registers at the end of the routine? If you were in a routine that was computing a goto (for example) based on the contents of the W reg., and you got interupted at that point, you might not return from the interupt routine with the correct contents of W causing your computed jump to go into left field. Hope this helps Dave Duley