Saludos a todos los del foro,
Les cuento mi problema:
Inicie con el pic18F4510 y el Ds1307 y todo normal con pull up´s de 4.7K (trabajando como se debe trabajar), pero al agregar al Bus el MCP4728 (DAC de 12 bits, E2PROM interna,etc) tengo el problema de que el voltaje en SDA y SCL sin trasmitir datos es inferior a Vcc(5V) y crei que el problema tal vez serían los pull up´s, realice varias pruebas y finalmente cambiando las de 4.7K por 1K ya me resulto que tengo casi Vcc en SDA y SCL y pense problema resuelto, me lleve la sorpresa que en el primer intento de comunicacion con el MCP4728 funcionó correctamente, despues de unas cuantas lecturas y escrituras con el DS1307 y MCP4728 me llevo la inesperada sorpresa que se "traba" el micro, aparentemente muerto, mido voltaje en SDA y SCL y oscila por debajo de 2volt y me quedo sin saber que pasa(uso hyperterminal para depurar), al paso de menos de un minuto veo que me llega la respuesta que esperaba al haber enviado el comando de escritura y las lineas(SDA y SCL) regresan a Vcc y nuevamente envio comando y pasa lo mismo.
Puntos de interes sobre lo que estoy haciendo:
-Programando en CCS
-El MCP4728 es MSOP de 10 pins, por lo que elabore una tarjeta con pines para soldarlo y luego ponerlo en un protoboard, si hay continuidad entre las patitas del integrado y los pines(header) que inserto en el protoboard y no hay corto circuito entre ellas.
-Ya use dos circuitos integrados MCP4728 y es el mismo problema.
-Fisicamente conecto una resistencia de 1K a SDA y otra a SCL y obtengo voltaje muy cercano a Vcc, pero tengo la sospecha de que por alguna razon SDA y SCL del integrado MCP4728 estan haciendo contacto a masa mediante una resistencia no fisica(menciono esto porque si cambio pull up a 10K el voltaje en la linea SDA o SCL cae entre mas aumente Rpull-up).
-Si desconecto el MCP4728 el DS1307 opera correctamente.
-Agregue codigo para depurar y me lleve la sorpresa que cuando escribo en el Bus I2C obtengo NOACK por parte del esclavo y el PIC se queda parado sin hacer nada aparentemente(si envio por el puerto serie datos el PIC responde ya que estoy usando Interrupcion rda) hasta despues de varios segundos sigue ejecutando el codigo correspondiente.
Si alguien tiene informacion sobre este problema favor de ayudarme.
Saludos a todos!!!!
Saludos a todos.