RTC Driver
DS3231.h
- Committer:
- sk398
- Date:
- 2016-02-20
- Revision:
- 0:4399479f355f
File content as of revision 0:4399479f355f:
#ifndef DS3231_H #define DS3231_H #define TRUE 1 #define FALSE 0 #define SINGLE_BYTE 1 #define DS3231_ADDRESS 0x68<<1/*0xAE*/ #define SECONDS 0x00 #define MINUTES 0x01 #define HOURS 0x02 #define DAY 0x03 #define DATE 0x04 #define MONTH_CENTURY 0x05 #define YEAR 0x06 #define ALARM_1_SECONDS 0x07 #define ALARM_1_MINUTES 0x08 #define ALARM_1_HOURS 0x09 #define ALARM_1_DAY_DATE 0x0A #define ALARM_2_MINUTES 0x0B #define ALARM_2_HOURS 0x0C #define ALARM_2_DAY_DATE 0x0D #define CONTROL 0x0E #define CONTROL_STATUS 0x0F #define AGING_OFFSET 0x10 #define MSB_OF_TEMP 0x11 #define LSB_OF_TEMP 0x12 class DS3231 { public: DS3231(PinName sda, PinName scl); void readControl(); private: int readByte(uint8_t registerAddress); int *readBytes(uint8_t registerAddress,uint8_t numBytes); int writeByte(uint8_t registerAddress,uint8_t outBuffer); // int writeBytes(uint8_t registerAddress, uint8_t *outBuffer,uint8_t numBytes); protected: I2C *_DS3231; }; #endif