ds1307.h 554 B
#pragma once
#define DS1307_I2C_ADDRESS 0xD0
#define DS1307_REG_DATE 0x00
#define DS1307_REG_CONTROL 0x07
struct date_t{
uint8_t second;
uint8_t minute;
uint8_t hour;
uint8_t weekday;
uint8_t day;
uint8_t month;
uint8_t year;
} typedef date_t;
struct time_t{
uint8_t second;
uint8_t minute;
uint8_t hour;
} typedef time_t;
void ds1307_init(void);
uint8_t ds1307_get_date(date_t* date);
uint8_t ds1307_set_date(date_t* date);
uint8_t ds1307_set_time(time_t* time);
void ds1307_write_date(date_t* date);
void ds1307_write_current_date(void);