Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "WSWire.h"
- #define HT1382_ADDRESS 0x68
- byte set_second = 0;
- byte set_minute = 58;
- byte set_hour = 13;
- byte set_day = 1;
- byte set_date = 2;
- byte set_month = 12;
- byte set_year = 16;
- byte read_second;
- byte read_minute;
- byte read_hour;
- byte read_day;
- byte read_date;
- byte read_month;
- byte read_year;
- byte bcd_to_Dec(byte val){ return( (val/16*10) + (val%16) ); }
- byte dec_to_bcd(byte val){ return( (val/10*16) + (val%10) ); }
- void setup() {
- Serial.begin(9600);
- while (!Serial);
- Serial.println("Init time");
- Wire.begin();
- Wire.beginTransmission(HT1382_ADDRESS);
- Wire.write((byte)0);
- Wire.write(dec_to_bcd(set_second));
- Wire.write(dec_to_bcd(set_minute));
- Wire.write(dec_to_bcd(set_hour));
- Wire.write(dec_to_bcd(set_day));
- Wire.write(dec_to_bcd(set_date));
- Wire.write(dec_to_bcd(set_month));
- Wire.write(dec_to_bcd(set_year));
- int result = Wire.endTransmission();
- Serial.print("Done with result = ");
- Serial.println(result);
- }
- void loop() {
- Wire.beginTransmission(HT1382_ADDRESS);
- Wire.write((byte)0);
- Wire.endTransmission();
- Wire.requestFrom(HT1382_ADDRESS, 7);
- read_second = bcd_to_Dec(Wire.read());
- read_minute = bcd_to_Dec(Wire.read());
- read_hour = bcd_to_Dec(Wire.read());
- read_day = bcd_to_Dec(Wire.read());
- read_date = bcd_to_Dec(Wire.read());
- read_month = bcd_to_Dec(Wire.read());
- read_year = bcd_to_Dec(Wire.read());
- Serial.println(read_second);
- delay(1000);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement