I2C multiples slave
Posté : lun. 5 févr. 2024 20:15
Bonjour, je cherche à voir s'il est possible (et d'après le web, cela l'est), la mise en place d'une communication totalement bidirectionnelle en I2C entre 2 Pi
C'est à dire, que l'un et l'autre peuvent, de leur propre initiative, envoyer une trame à son voisin et en obtenir une réponse.
Chacun ayant son adresse I2C et écoutant le port I2C pour traiter les demandes
J'ai réalisé un test en C
Pour l'un d'eux, le programme tourne, envoie des trames
Pour l'autre, dès qu'il cherche à répondre à une trame reçue, il plante.
Mais si je retire la partie du code qui le rend esclave, alors il répond normalement.
Ce n'est pas du code que je demande.
C'est juste de savoir s'il l'un de vous y est déjà parvenu ou le cas échéant, un lien vers une page web (j'en ai vu des pages sur le sujet avant de poster !)
Au niveau hardware, les 2 pi partagent la même masse
Leurs pins SDA/SCL sont reliés respectivement entre eux au travers du pull up de 4,7 K ohms
Ce montage fonctionne très bien avec une comme classique (1 maitre et 1 esclave)
C'est à dire, que l'un et l'autre peuvent, de leur propre initiative, envoyer une trame à son voisin et en obtenir une réponse.
Chacun ayant son adresse I2C et écoutant le port I2C pour traiter les demandes
J'ai réalisé un test en C
Pour l'un d'eux, le programme tourne, envoie des trames
Pour l'autre, dès qu'il cherche à répondre à une trame reçue, il plante.
Mais si je retire la partie du code qui le rend esclave, alors il répond normalement.
Ce n'est pas du code que je demande.
C'est juste de savoir s'il l'un de vous y est déjà parvenu ou le cas échéant, un lien vers une page web (j'en ai vu des pages sur le sujet avant de poster !)
Au niveau hardware, les 2 pi partagent la même masse
Leurs pins SDA/SCL sont reliés respectivement entre eux au travers du pull up de 4,7 K ohms
Ce montage fonctionne très bien avec une comme classique (1 maitre et 1 esclave)