Problemas I2C

Mar 30, 2006 0 Replies

Buenas.. tengo un 16f876 a 20Mhz como master y un 16f88 con oscilador interno a 4Mhz como esclavo conectados en bus I2C con resistencias de



4k7, tengo problemas al realizar la comunicaci=F3n entre ellos, para que me funcione correctamente tengo que realizar un retardo en el master de unos 20us entre el env=EDo del start, direcci=F3n, dato, para el stop no es necesario, el c=F3digo me funciona correctamente al escribir en un memoria, pero no se la raz=F3n de que no funcione si no realizo el retardo, en teor=EDa el esclavo tendr=EDa que pasar SDA a nivel bajo (ACK), para indicarle al master que recibi=F3 el byte y mantener este estado mientras no pueda atender un nuevo byte del master(esto ultimo no estoy totalmente seguro?) no ser=EDa necesario realizar retardos ya que el propio protocolo es el encargado gestionar el trafico, bueno la verdad es que no se si hay algo que tengo que tener en cuenta y que puede provocar este problema, por mucho que repaso el c=F3digo no veo el problema...

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required