Tengo un programa donde hablo con un dispositivo esclavo I2C, todo funciona chévere, pero hay una situación en la que el dispositivo se queda sin energía, No siendo así con el PIC (digamos que hay 2 fuentes de alimentación separadas), entonces mientras el esclavo está apagado, en el pic el contador de programa cae en las lineas de iniciar o detener el I2C
Viendo el listado en ASM, se queda en la línea:
...
5: btfss PORTC,3
goto 5
...
pregunta por la señal de reloj SCL en nivel alto, que por supuesto no existe
¿como hago para salir de ese bucle infinito?
Datos:
- pic16F877A
- compilador C CCS
- comandos I2C por software: i2c_start(), i2c_stop()