> I don't have an ack from a SLAVE micro neither when the PC is the Master > transmitter, nor when the comunication is between micro. > where can I find the right informations about this particoular role > (I2C-SLAVE)? The full data sheet for your processor is available on the Microchip web site. There is more information in the Mid-Range MCU family Reference Manual. Mine's paper, Microchip doc. DS33023A, you need Section 15, on the SSP. > Are there code examples? Only Scanty ones in the datasheets and ref manual. > Why doesn't the PIC ack the first address byte of a I2C message?(the address > is right) > Doesn't the PIC make the ack by hardware? Yes, if it is set up correctly. So if it doesn't ACK, then it ISN'T set up right. Interrupt has nothing to do with it until the SECOND byte, if you miss the first interrupt (from reset) the hardware will still ACK. > (And so if the SSP registers are configured, the interrupt enabled, and the > proper Trisc bits set..., why no ack?) Are you sure you are setting up the registers right? Did you remember to switch RAM banks to write the SSPADD register? Can you tell us what the values are in each register? TRISC, SSPSTAT, SSPADD, SSPSTAT? Do your tools allow you to confirm the values in the registers? > By an oscilloscope I have seen right signals. The I2C master is workstation PC, I guess? And you are using 7 bit addresses? So you can see a valid Address byte to the Slave? > Where is the problem? > Is this kind of comunication really implementable? Yes. The SSP does work fine as a Slave. Its master mode that requires extensive software. > May be that I can't implement this comunication in interrupt driven mode? Yes you can, but I would start out with a non-interrupt program to test just the I2C Slave receive first. Maybe just present the byte sent to you on Port B? When you get that working, then do the same function with interrupts. The ISR for the SSP must be careful to detect and clear error conditions, or the bus may be locked up by the Slave, but you are seeing no ACK, so this is not the problem. ------------ Barry King, KA1NLH Engineering Manager NRG Systems "Measuring the Wind's Energy" Hinesburg, Vermont, USA www.nrgsystems.com