#include //adresses codées sur 7bits #define SLAVE_ADDR_DS13072 COMPLETER ////////////////////////////////////////// char readRegI2C(char I2Caddr, byte Regaddr, byte * ptr_value) /*I2Caddr, l'adresse du DS13072 sur le bus Regaddr, l'adresse du registre du DS13072 à lire ptr_value, pointeur pour renvoyer la valeur lue dans le registre retourne -1 si échec 0 sinon */ { Wire.beginTransmission(I2Caddr);//démarre la transmission avec l'adresse du pérpiphérique //A COMPLETER } ////////////////////////////////////////// char writeRegI2C(char I2Caddr, byte Regaddr, byte value) /* I2Caddr, l'adresse du DS13072 sur le bus Regaddr, l'adresse du registre du DS13072 à écrire value,la valeur à écrire dans le registre retourne -1 si échec 0 sinon */ { Wire.beginTransmission(I2Caddr);//démarre la transmission avec l'adresse du pérpiphérique //A COMPLETER } ////////////////////////////////////////// void displayTime() { byte val=0; if (0) //A COMPLETER pour lire les heures { Serial.print(val, HEX); Serial.print(" : "); } if (0) //A COMPLETER pour lire les minutes { Serial.print(val, HEX); Serial.print(" : "); } if (0) //A COMPLETER pour lire les secondes { Serial.print(val, HEX); Serial.println(" sec"); } } ////////////////////////////////////////// void dumpDS13072() { byte val,add; //A COMPLETER pour lire toutes les cases mémoire et afficher leurs adresses et contenus } ////////////////////////////////////////// void setTime(byte hour,byte minute,byte sec) { if (0) //A COMPLETER pour régler les heures Serial.println(" problème réglage heure"); if (0) //A COMPLETER pour régler les minutes Serial.println(" problème réglage minute"); if (0) //A COMPLETER pour régler les secondes Serial.println(" problème réglage sec"); } ////////////////////////////////////////// void setup() { Serial.begin(9600); // start serial port at 9600 bps: Serial.print("Bonjour"); Wire.begin(); // joindre le bus i2c en tant que maître //activation de l'oscillateur interne, remet également les secondes à 0 if (writeRegI2C(SLAVE_ADDR_DS13072, 0, 0x00)==-1) Serial.println(" problème activation oscillateur"); //activation sortie SQ à 1hz if (0) //A COMPLETER pour activation sortie SQ à 1hz Serial.println(" problème réglage SquareWave"); //réglage de l'heure //A COMPLETER pour régler l'heure à 11h59 et 30 secondes } ////////////////////////////////////////// void loop() { //A COMPLETER selon les exercices } //////////////////////////////////////////