00001 #ifndef _RTC_H 00002 #define _RTC_H 00003 00004 typedef struct _rtc_time { 00005 uint8_t hour; 00006 uint8_t minute; 00007 uint8_t year; 00008 uint8_t month; 00009 uint8_t day; 00010 } RTC_TIME; 00011 00012 #define rtc_xseconds(x) rtc_rw(0,x); 00013 00014 #define rtc_xminute(x) rtc_rw(1,x) 00015 00016 #define rtc_xhour(x) rtc_rw(2,x) 00017 00018 #define rtc_xyear(x) rtc_rw(6,x) 00019 00020 #define rtc_xmonth(x) rtc_rw(5,x) 00021 00022 #define rtc_xday(x) rtc_rw(4,x) 00023 00024 #define rtc_xdow(x) rtc_rw(3,x) 00025 00026 void rtc_init(); 00027 void rtc_send(uint8_t b); 00028 void rtc_over(); 00029 uint16_t rtc_gettime(uint8_t); 00030 uint8_t rtc_rw(uint8_t addr, int8_t value); 00031 00032 void rtc_dump(); 00033 00034 00035 #endif