> The real question is does peolple ("programmers") use polling or > interrupts for I2C. Any help ? You can use either. I often use a separate pseudo-thread to handle a communications stream. This can use polling directly and yield the processor when the hardware is not ready. It can also be interrupt driven with the thread only run from the main event loop when a suitable interrupt is received. Take a look at my template host command processing module, QQQ_CMD.ASPIC at http://www.embedinc.com. This uses a pseudo thread to process a command stream from a host. In this case the byte stream is received from the UART, which is handled by interrupts, not polling. The UART handling code, including the UART specific interrupt routines, is in the QQQ_UART.ASPIC module. I have used this same principle in handling IIC streams. ***************************************************************** Embed Inc, embedded system specialists in Littleton Massachusetts (978) 742-9014, http://www.embedinc.com -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu