DS1307 [RESOLU]

Lorsque je rentre ce code:

#include <Wire.h> // Inclusion de la librairie Wire pour 
		  //la gestion de l'I2C qui nous permettra de communiquer avec le DS1307
#include "structure.h" // Inclusion de notre fichier de structure qui définit le type "Date"
#include <avr/pgmspace.h> // Inclusion de la librairie PGMSPACE qui permet l'utilisation de PROGMEM
	 
#define PSTR2(s) (__extension__({static unsigned char __c[] PROGMEM = (s); &__c[0];})) // Macro permettant de stocker facilement du texte en PROGMEM
#define DS1307_ADDRESS 0x68 // Adresse I2C du module DS1307
	 	 
// Fonction de convertion bcd -> décimal
byte bcd2dec(byte bcd) 
{
 return ((bcd / 16 * 10) + (bcd % 16));
}
	 
// Fonction de convertion decimal -> bcd
byte dec2bcd(byte dec) 
{
 return ((dec / 10 * 16) + (dec % 10));
}
 
// Fonction configurant le DS1307 avec la date/heure fourni
void ecrire(Date *date) 
{
 Wire.beginTransmission(DS1307_ADDRESS); // Début de transaction I2C
 Wire.send(0); // Arrête l'oscillateur du DS1307
 Wire.send(dec2bcd(date->secondes)); // Envoi des données
 Wire.send(dec2bcd(date->minutes));
 Wire.send(dec2bcd(date->heures));
 Wire.send(dec2bcd(date->jourDeLaSemaine));
 Wire.send(dec2bcd(date->jour));
 Wire.send(dec2bcd(date->mois));
 Wire.send(dec2bcd(date->annee));
 Wire.send(0); // Redémarre l'oscillateur du DS1307
 Wire.endTransmission(); // Fin de transaction I2C
}
 
// Fonction récupérant l'heure et la date courante à partir du DS1307
void lire(Date *date) 
{
 Wire.beginTransmission(DS1307_ADDRESS); // Début de transaction I2C
 Wire.send(0); // Demande les info à partir de l'adresse 0 (soit toutes les info)
 Wire.endTransmission(); // Fin de transaction I2C

 Wire.requestFrom(DS1307_ADDRESS, 7); // Récupère les info (7 octets = 7 valeurs 
                                      // correspondant à l'heure et à la date courante)

 date->secondes = bcd2dec(Wire.receive()); // stockage et conversion des données reçu
 date->minutes = bcd2dec(Wire.receive());
 date->heures = bcd2dec(Wire.receive() & 0b111111);
 date->jourDeLaSemaine = bcd2dec(Wire.receive());
 date->jour = bcd2dec(Wire.receive());
 date->mois = bcd2dec(Wire.receive());
 date->annee = bcd2dec(Wire.receive());
}
	 
// Fonction vérifiant la présence d'une demande de synchronisation en provenance du pc et récupérant les données de synchronisation ou à défaut récupérant la date et l'heure courante
void synchronisation(Date *date) 
{
 Serial.print("SYNC"); // Envoi de la commande de synchronisation
 int i;
 for(i = 0 ; (Serial.available() < 3) && (i < 6) ; i++) // Attente de 3s max
 delay(500);
 if(i != 6)  // Il n'y as pas eu de timeout
  {
   if(Serial.read() == 'A')
    if(Serial.read() == 'C')
     if(Serial.read() == 'K') // Si le pc à répondu par une commande 
      {			     //ACK c'est que la synchronisation peut commencer
       while(Serial.available() < 7); // Attente des 7 octets de configuration
 	   date->secondes = Serial.read(); // Réception et conversion des données reçu
	   date->minutes = Serial.read();
	   date->heures = Serial.read();
           date->jourDeLaSemaine = Serial.read();
	   date->jour = Serial.read();
	   date->mois = Serial.read();
	   date->annee = Serial.read();
	   ecrire(date); // Stockage dans le DS1307 des donnes reçu
      }
  }
	
  else lire(date); // Si le pc n'as pas répondu à la demande de synchronisation 
                  //la fonction ce content de lire les données courante du DS1307
}



	 // Setup()
void setup() {
Serial.begin(9600); // Initialisation du port série
Wire.begin(); // Initialisation du bus I2C
synchronisation(&date); // Tentative de synchronisation avec le pc
}
	 
// loop()
void loop() 
{
 Serial.print(lire(&date);
 delay(1000); // Rafraichissement de 1Hz
	}

Il me ressort ces erreurs là:

sketch_feb09a.ino: In function ‘void ecrire(Date*)’:
sketch_feb09a:25: error: ‘class TwoWire’ has no member named ‘send’
sketch_feb09a:26: error: ‘class TwoWire’ has no member named ‘send’
sketch_feb09a:27: error: ‘class TwoWire’ has no member named ‘send’
sketch_feb09a:28: error: ‘class TwoWire’ has no member named ‘send’
sketch_feb09a:29: error: ‘class TwoWire’ has no member named ‘send’
sketch_feb09a:30: error: ‘class TwoWire’ has no member named ‘send’
sketch_feb09a:31: error: ‘class TwoWire’ has no member named ‘send’
sketch_feb09a:32: error: ‘class TwoWire’ has no member named ‘send’
sketch_feb09a:33: error: ‘class TwoWire’ has no member named ‘send’
sketch_feb09a.ino: In function ‘void lire(Date*)’:
sketch_feb09a:41: error: ‘class TwoWire’ has no member named ‘send’
sketch_feb09a:47: error: ‘class TwoWire’ has no member named ‘receive’
sketch_feb09a:48: error: ‘class TwoWire’ has no member named ‘receive’
sketch_feb09a:49: error: ‘class TwoWire’ has no member named ‘receive’
sketch_feb09a:50: error: ‘class TwoWire’ has no member named ‘receive’
sketch_feb09a:51: error: ‘class TwoWire’ has no member named ‘receive’
sketch_feb09a:52: error: ‘class TwoWire’ has no member named ‘receive’
sketch_feb09a:53: error: ‘class TwoWire’ has no member named ‘receive’
sketch_feb09a.ino: In function ‘void setup()’:
sketch_feb09a:91: error: ‘date’ was not declared in this scope
sketch_feb09a.ino: In function ‘void loop()’:
sketch_feb09a:97: error: ‘date’ was not declared in this scope

J'ai suivis ton tuto skywodd et j'ai bien créé un fichier nommé "structure.h" que j'ai placé au même endroit que mon sketch. Alor quesqu'y me raconte là... :cold_sweat:
Je suis passé a coté de quoi??

Esque c'est comme ça que je fait pour afficher la date dans mon moniteur avec le pointeur de la structure? Serial.print(lire(&date);