Modifications

Sauter à la navigation Sauter à la recherche
3 350 octets supprimés ,  10 mars 2013 à 15:56
Ligne 60 : Ligne 60 :     
Si vous n'avez qu'une seule alimentation pour vos deux Arduinos, vous pouvez connecter la sortie 5V de l'Arduino Maître sur la broche VIN de l'Arduino esclave.  
 
Si vous n'avez qu'une seule alimentation pour vos deux Arduinos, vous pouvez connecter la sortie 5V de l'Arduino Maître sur la broche VIN de l'Arduino esclave.  
  −
== Programme "Master Reader" ==
  −
  −
Comme précisé plus avant dans la documentaiton en "Master Reader", le Maître interroge un esclave et attend une réponse de la part de ce dernier.
  −
  −
=== Programme du Maître ===
  −
Voici le programme issu de l'article [http://arduino.cc/en/Tutorial/MasterReader "Arduino - MasterReader" sur Arduino.cc].
  −
  −
<nowiki>// Librairie Wire - Master Reader (Maitre Lit)
  −
// *** Programme pour le Maître - Le maître Lit ***
  −
//
  −
// par Nicholas Zambetti <http://www.zambetti.com>
  −
// Traduction par MCHobby.be <http://www.mchobby.be>
  −
//
  −
// Démontre l'usage de la librairie Wire.
  −
// Lectures de données depuis un périphérique I2C/TWI esclave.
  −
//
  −
// A utiliser avec le programme esclave de cet exemple.
  −
//
  −
// Crée le 29 mars 2006
  −
// Traduit le 9 mars 2013 (MCHobby)
  −
//
  −
// This example code is in the public domain.
  −
// Ce code d'exemple fait partie du domaine public.
  −
  −
#include <Wire.h>
  −
  −
void setup()
  −
{
  −
  Wire.begin();        // joindre le bus i2c (adresse est optionnelle pour un maître)
  −
  Serial.begin(9600);  // démarré une communication série
  −
}
  −
  −
void loop()
  −
{
  −
  Wire.requestFrom(2, 6);    // lecture de 6 octets (bytes) depuis l'esclave #2
  −
  −
  while(Wire.available())    // l'esclave pourrait envoyer moins de données qu'attendu
  −
  {
  −
    char c = Wire.read();    // Reception de l'octet (byte) comme caractère
  −
    Serial.print(c);        // Affichage du caractère.
  −
  }
  −
  −
  delay(500); // Attendre une demi seconde.
  −
}</nowiki>
  −
  −
=== Programme de l'esclave ===
  −
Voici le programme issu de l'article [http://arduino.cc/en/Tutorial/MasterReader "Arduino - MasterReader" sur Arduino.cc].
  −
  −
<nowiki>// Librairie Wire - Master Reader (Maitre Lit)
  −
// *** Programme pour l' Esclave - L'esclave écrit ***
  −
//
  −
// par Nicholas Zambetti <http://www.zambetti.com>
  −
// Traduction par MCHobby.be <http://www.mchobby.be>
  −
//
  −
// Démontre l'usage de la librairie Wire.
  −
// Envoi des données sur le bus i2c en tant qu'esclave.
  −
//
  −
// A utiliser avec le programme Maître de cet exemple.
  −
//
  −
// Crée le 29 mars 2006
  −
// Traduit le 9 mars 2013 (MCHobby)
  −
//
  −
// This example code is in the public domain.
  −
// Ce code d'exemple fait partie du domaine public.
  −
  −
  −
#include <Wire.h>
  −
  −
void setup()
  −
{
  −
  Wire.begin(2);                // Joindre le bus i2c avec l'adresse #2
  −
  Wire.onRequest(requestEvent); // enregistrer l'événement (lorsqu'une demande arrive)
  −
}
  −
  −
void loop()
  −
{
  −
  delay(100); // Attendre 100ms
  −
}
  −
  −
// Fonction qui est exécutée lorsque des données sont demandées par le Maître.
  −
// Cette fonction est enregistrée comme une événement ("event" en anglais), voir la fonction setup()
  −
void requestEvent()
  −
{
  −
  Wire.write("hello "); // Répondre avec un message de 6 octets (bytes)
  −
                        // comme attendu par le maître.
  −
}</nowiki>
  −
  −
=== En savoir plus ===
  −
L'article [http://arduino.cc/en/Tutorial/MasterReader "Arduino - MasterReader" sur Arduino.cc] vous propose plus d'informations.
  −
Vous y trouverez en autre la description des fonctions:
  −
* [http://arduino.cc/en/Reference/WireBegin Wire.begin()]
  −
* [http://arduino.cc/en/Reference/WireRequestFrom Wire.RequestFrom()]
  −
* [http://arduino.cc/en/Reference/WireReceive Wire.receive()] '''maintenant nommée write()'''
  −
* [http://arduino.cc/en/Reference/WireSend Wire.send()] '''maintenant nommée read()'''
  −
* [http://arduino.cc/en/Reference/WireOnRequest Wire.onRequest()]
         
{{Arduino-I2C-Intro-TRAILER}}
 
{{Arduino-I2C-Intro-TRAILER}}
29 836

modifications

Menu de navigation