Autor Tema: Problemas con I2C  (Leído 223 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Moradrinck

  • PIC10
  • *
  • Mensajes: 8
Problemas con I2C
« en: 03 de Enero de 2020, 12:18:20 »
Mi problema es que tengo un Maestro, un Esclavo y le mando indicaciones al esclavo desde el maestro, lo cual lo realiza sin ningún problema, el problema es cuando le solicito datos al esclavo para que conocer distintos datos de mi interés, "La solicitud de datos es continua cada 3s", bueno, comienza trabajando correctamente ambos programas en conjunto, pero al cabo de cierto tiempo, "Nunca es en el mismo minuto o acción", se traba el Bus de comunicación I2C del Maestro al solicitar datos, pero el Esclavo sigue trabajando correctamente, la única forma de que vuelva a funcionar el maestro es cortando su alimentación por completo, si lo reinicio el programa se vuelve a trabar cundo solicito datos, así que reiniciarlo no es una opción. ¿Alguien que me pueda ayudar?. Por favor.       
« Última modificación: 03 de Enero de 2020, 12:35:57 por Moradrinck »
No hace falta gente que labure más, hace falta que con menos se pueda vivir en paz.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 7514
Re:Problemas con I2C
« Respuesta #1 en: 03 de Enero de 2020, 12:22:50 »
¿Como es que el esclavo exige datos?

Es el maestro quien pregunta si tiene datos, y exige que se les envie.

Sino mejor unirlos con una UART.

Desconectado Moradrinck

  • PIC10
  • *
  • Mensajes: 8
Re:Problemas con I2C
« Respuesta #2 en: 03 de Enero de 2020, 12:34:56 »
Perdón, error mio, el Maestro le solicita datos al Esclavo. ya lo corregí.

El detalle es ya lo tengo montado todo mi circuito en placa, y hasta ahora que ya lo implemente bien el programa comenzó a fallar.
por esa razón tengo que seguir implementando el I2C.
 
« Última modificación: 03 de Enero de 2020, 12:38:27 por Moradrinck »
No hace falta gente que labure más, hace falta que con menos se pueda vivir en paz.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 7514
Re:Problemas con I2C
« Respuesta #3 en: 04 de Enero de 2020, 15:34:35 »
Sugiero primero observar si es un problema del micro. En las erratas del mismo.

Luego filtrar mejor la fuente, tambien probarlo en otro espacio, para ver si sigue haciendo lo mismo.

La otra es tratar de parar el I2C y volverlo a activar para ver si funciona asi con ese arreglo. Otra no se me ocurre.

Desconectado Robert76

  • PIC18
  • ****
  • Mensajes: 273
Re:Problemas con I2C
« Respuesta #4 en: 04 de Enero de 2020, 18:23:39 »
Hola, además de las recomendaciones de KILLER, lo más probable es que haya colisión de datos. Quizás el emisor cuándo solicita datos no genera tiempos muertos y vuelve a enviar peticiones, mientras el esclavo está enviando.

Desconectado ALFREDOSKY

  • PIC16
  • ***
  • Mensajes: 114
Re:Problemas con I2C
« Respuesta #5 en: 24 de Enero de 2020, 18:45:32 »
Moradrinck, que micros usas? 8bits, 16?, en 16 bits hay funciones preestablecidas como idle(), etc; te recomiendo respetar los tiempos y retardos que necesita el modulo I2C para cada procesamiento de datos, me parece mas un problema de software que de hardware, te adjunto un enlace que puede ser de ayuda:

https://www.robot-electronics.co.uk/i2c-tutorial

saludos.  :lol:

Desconectado Moradrinck

  • PIC10
  • *
  • Mensajes: 8
Re:Problemas con I2C
« Respuesta #6 en: 13 de Febrero de 2020, 17:20:15 »
Muchas gracias por su ayuda, pero era problema de los #fuses del maestro, y el timer del esclavo, no estaba correctamente configurado un timer y eso ocasionaba colisión entre la solicitud de datos, por eso es que se trababa.
 
No hace falta gente que labure más, hace falta que con menos se pueda vivir en paz.


 

anything