Bonjour les Arduiniens,
J'ai récemment acheté un TinyRTC afin de pouvoir afficher l'heure actuel lors de la prise de donné. J'ai voulu l'essayer avec un programme simple, mais rien ne fonctionne.
J'ai acheté un TinyRTC I2C DS1307:
J'ai trouvé un code sur internet, mais le résultat est toujours le même : 165/165/165 45:165:165 dans le moniteur de série
Voici le code:
//Arduino 1.0+ Only
//Arduino 1.0+ Only
#include "Wire.h"
#define DS1307_ADDRESS 0x68
void setup(){
Wire.begin();
Serial.begin(9600);
}
void loop(){
printDate();
delay(1000);
}
byte bcdToDec(byte val) {
// Convert binary coded decimal to normal decimal numbers
return ( (val/16*10) + (val%16) );
}
void printDate(){
// Reset the register pointer
Wire.beginTransmission(DS1307_ADDRESS);
byte zero = 0x00;
Wire.write(zero);
Wire.endTransmission();
Wire.requestFrom(DS1307_ADDRESS, 7);
int second = bcdToDec(Wire.read());
int minute = bcdToDec(Wire.read());
int hour = bcdToDec(Wire.read() & 0b111111); //24 hour time
int weekDay = bcdToDec(Wire.read()); //0-6 -> sunday - Saturday
int monthDay = bcdToDec(Wire.read());
int month = bcdToDec(Wire.read());
int year = bcdToDec(Wire.read());
//print the date EG 3/1/11 23:59:59
Serial.print(month);
Serial.print("/");
Serial.print(monthDay);
Serial.print("/");
Serial.print(year);
Serial.print(" ");
Serial.print(hour);
Serial.print(":");
Serial.print(minute);
Serial.print(":");
Serial.println(second);
}
Est-ce que quelqu'un pourrait m'aider à faire fonctionner le RTC. Le SCL est connecté à A5 et SDA à A4.
Merci beaucoup,