I have 3 micro controllers 1 master and two for the slaves. I have to = control for the slaves to acquire data. I use the USART of PIC16F877. = The routine of my program goes like this... For the master... The master transmit when the switch in RB6 is switch to set. The master broadcast transmit a Preamble, Acquire, for both slaves to = acquire ADC The master transmits again to acquire the value from one slave, lets say = slave A, format of packet is preamble, acquire, address for slave A '0F' The master receives the value from slave A beginning from preamble, = acquire, address, and data. The master transmits again to acquire the value from slave A, same = format of packet is preamble, acquire, address for slave B 'F0' The master receives the value from slave A beginning from preamble, = acquire, address, and data. The master displays both value on the data, clock, strobe of CD4094, = which is a serial in parallel out driver. Then I type a goto command before the command end. For the slaves only differs the address. The slaves receives the data being transmitted by the master and after = receiving performs ADC. format of packet preamble, acquire The slave receives the data again coming from the master and compare the = the address. format of packet preamble, acquire, address If it is address to the slave, it transmits back. If its not for it, it = just ignore what it receives. format of packet premble, acquire, = address, data Then I loop back before the END commands to the portion where after my = initialization of ports and USART is written The problem... The slave does not receive back again after transmitting Question...=20 what must be my problem? Hint: I use preamble because I run the program with a power line modem. I hope you can help me.... -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu