#include "i2c.h" #define DS 0b1101000 #define SEC 0 #define MIN 1 #define HOUR 2 #define DAY 3 #define DATE 4 #define MONTH 5 #define YEAR 6 char dateTime[7]; void GetDateTime(){ SendI2C(DS, 0); GetDataI2C(DS, dateTime, 7); } void SetTimeDate(){ for(char i=0; i<7; i++){ CmdI2C(DS, i, dateTime[i]); } CmdI2C(DS, 7, 0x10); //output 1Hz } char BCDincrement(char c){ c++; if((c & 0x0F) == 10) c += 6; //繰り上がり(-10 + 16) return c; } char BCDtoBIN(char bcd){ char bin = ((bcd >> 4) & 0x0F) * 10 + (bcd & 0x0F); return bin; } char BINtoBCD(char bin){ char bcd = ((bin / 10) << 4 ) | (bin % 10); return bcd; }