Pour être précis, le nom complet de ce concept est "Master Writer/Slave Receiver".
Pour être précis, le nom complet de ce concept est "Master Writer/Slave Receiver".
−
== Le protocol ==
+
== Le protocole ==
Encore un petit point supplémentaire à mentionner.
Encore un petit point supplémentaire à mentionner.
−
+
Plus haut dans cet article, nous avons mentionné une communication entre maître et esclave pour le lecture la température.
+
+
Cela se présentait sous la forme:
+
+
''le maître envoi un ordre du genre: "Hep, Numéro 3, lecture de température!" et le numéro 3 répond docilement en renvoyant la température mesurée.''
+
+
Il va de soit que "''lecture de température!''" n'est pas le message envoyé tel quel sur le bus I2C et que l'esclave ne répond pas "17.5°C" sous cette forme.
+
+
Les messages et informations sont encodées en binaire (des 1 et des 0 ) envoyés sur le BUS dans un ordre précis afin qu'ils puissent être interprétés correctement par le senseur adressé. Chacun de ces 1 et 0 ayant un signification précise. C'est le protocole d'échange d'information qui est généralement détaillé dans la fiche technique du composant/senseur.
+
+
'''La bonne nouvelle, c'est qu'il existe des librairies pour Arduino''' permettant de faire abstraction de cette complexité en permettant de faire appel à des appels de fonctions de haut niveau similaire à '''degres = MonSenseurTemp.readTemperature();'''
+
+
Les breakout et senseurs I2C proposés par AdaFruit disposent généralement (''toujours'') de librairie Arduino... mais aussi Raspberry Pi.