TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: StarkXLII en 22 de Diciembre de 2023, 10:26:08
-
Hola buenas tardes, Soy José les escribo desde Valencia.
Estoy presentando problemas a la hora de configurar la comunicación i2c con el PIC18F46K22, utilizo MPLABX con Xc8, he seguido el datasheet y algún foro para configurar el bus i2c pero no consigo hacer que funcione. Para hacer pruebas le he conectado el famoso PCF8574 para encender y apagar un led. También he intentado simularlo con proteus pero no obtengo ni siquiera el bit de start.
Me justaría por favor que alguien pudiese echarle un vistazo. No tengo a nadie en mi entorno que sepa.
Les adjunto los archivo.
Gracias , un saludo y Feliz Navidad.
-
...También he intentado simularlo con proteus pero no obtengo ni siquiera el bit de start.
Al SCL le pusiste una resistencia de pullup?
-
Hola, gracias por responder.
Si, si que les puse las resistencias a ambos pines.
-
Podrias mostrar parte de tu codigo, en su momento tambien batalle para realizar la comunicacion utilizando I2C entre PIC-PIC y PIC-Arduino utilizando el mismo microcontrolador
-
Hola, gracias por responder.
Si, si que les puse las resistencias a ambos pines.
Con las resistencias de pullup, lo simulo en Proteus y funciona perfectamente.
-
Ostras pues yo ni en físico ni simulado. No se que estaré haciendo algo mal
Adjunto una imagen de proteus,
Gracias
-
I2C_Send(0x40);
Estás llamando al dispositivo 0 --> A0 A1 y A2 deben ir a masa.
- Tienes que ingresar para ver archivos adjuntos -
-
Gracias Eduardo, si lo probé en ambas configuraciones, justo subí esa configuración. He probado el montaje tal cual tu lo has echo y funciona de maravilla el que me esta dando problemas es el i2c debugger, si lo pongo, la comunicación no funciona, no se si es porque es así o un fallo de proteus.
Voy a probarlo con el pic físico a ver si funciona.
Gracias de nuevo por la ayuda