00001
00002 #ifndef M41T80_H
00003 #define M41T80_H
00004
00005 #include "global.h"
00006
00007
00008 #define M41T80_I2C_BASE_ADDR 0x68
00009
00010
00011 #define M41T80_REG_DSECONDS 0x00
00012 #define M41T80_REG_SECONDS 0x01
00013 #define M41T80_REG_MINUTES 0x02
00014 #define M41T80_REG_HOURS 0x03
00015 #define M41T80_REG_DAYOFWEEK 0x04
00016 #define M41T80_REG_DAYOFMONTH 0x05
00017 #define M41T80_REG_MONTH 0x06
00018 #define M41T80_REG_YEAR 0x07
00019 #define M41T80_REG_CTRL 0x08
00020 #define M41T80_REG_WATCHDOG 0x09
00021 #define M41T80_REG_AL_MONTH 0x0A
00022 #define M41T80_REG_AL_DATE 0x0B
00023 #define M41T80_REG_AL_HOUR 0x0C
00024 #define M41T80_REG_AL_MINUTES 0x0D
00025 #define M41T80_REG_AL_SECONDS 0x0E
00026 #define M41T80_REG_FLAGS 0x0F
00027 #define M41T80_REG_SQW 0x13
00028
00029
00030
00031
00032 void m41t80Init(void);
00033
00034
00035
00036 void m41t80Reset(void);
00037
00038
00039 void m41t80WriteReg(u08 regaddr, u08 data);
00040
00041
00042 u08 m41t80ReadReg(u08 regaddr);
00043
00044
00045 void m41t80SetOutState(int state);
00046
00047
00048 void m41t80SetTime(u32 time);
00049
00050
00051 u32 m41t80GetTime(void);
00052
00053
00054 void m41t80PrintTime(u32 time);
00055
00056 #endif