Real Time Clock ds1302 library
ds1302.h@0:be8d71b29b37, 2010-12-03 (annotated)
- Committer:
- gcibeira
- Date:
- Fri Dec 03 18:01:36 2010 +0000
- Revision:
- 0:be8d71b29b37
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
gcibeira | 0:be8d71b29b37 | 1 | /* |
gcibeira | 0:be8d71b29b37 | 2 | Copyright (c) 2010 Cibeira Gerardo |
gcibeira | 0:be8d71b29b37 | 3 | */ |
gcibeira | 0:be8d71b29b37 | 4 | |
gcibeira | 0:be8d71b29b37 | 5 | #ifndef MBED_DS1302_H |
gcibeira | 0:be8d71b29b37 | 6 | #define MBED_DS1302_H |
gcibeira | 0:be8d71b29b37 | 7 | |
gcibeira | 0:be8d71b29b37 | 8 | #include "mbed.h" |
gcibeira | 0:be8d71b29b37 | 9 | #define BYTE unsigned char |
gcibeira | 0:be8d71b29b37 | 10 | |
gcibeira | 0:be8d71b29b37 | 11 | class ds1302 |
gcibeira | 0:be8d71b29b37 | 12 | { |
gcibeira | 0:be8d71b29b37 | 13 | public: |
gcibeira | 0:be8d71b29b37 | 14 | //constructor |
gcibeira | 0:be8d71b29b37 | 15 | ds1302(PinName pinSCLK,PinName pinIO,PinName pinRST); |
gcibeira | 0:be8d71b29b37 | 16 | |
gcibeira | 0:be8d71b29b37 | 17 | //methods |
gcibeira | 0:be8d71b29b37 | 18 | void write_byte(BYTE cmd); |
gcibeira | 0:be8d71b29b37 | 19 | void write(BYTE cmd, BYTE data); |
gcibeira | 0:be8d71b29b37 | 20 | BYTE read(BYTE cmd); |
gcibeira | 0:be8d71b29b37 | 21 | void init(); |
gcibeira | 0:be8d71b29b37 | 22 | BYTE get_bcd(BYTE data); |
gcibeira | 0:be8d71b29b37 | 23 | BYTE rm_bcd(BYTE data); |
gcibeira | 0:be8d71b29b37 | 24 | void set_datetime(BYTE day, BYTE mth, BYTE year, BYTE dow, BYTE hr, BYTE min); |
gcibeira | 0:be8d71b29b37 | 25 | void get_date(BYTE &day, BYTE &mth, BYTE &year, BYTE &dow); |
gcibeira | 0:be8d71b29b37 | 26 | void get_time(BYTE &hr, BYTE &min, BYTE &sec); |
gcibeira | 0:be8d71b29b37 | 27 | void write_nvr(BYTE address, BYTE data); |
gcibeira | 0:be8d71b29b37 | 28 | BYTE read_nvr(BYTE address); |
gcibeira | 0:be8d71b29b37 | 29 | |
gcibeira | 0:be8d71b29b37 | 30 | |
gcibeira | 0:be8d71b29b37 | 31 | private: |
gcibeira | 0:be8d71b29b37 | 32 | //data |
gcibeira | 0:be8d71b29b37 | 33 | DigitalOut SCLK; |
gcibeira | 0:be8d71b29b37 | 34 | DigitalInOut IO; |
gcibeira | 0:be8d71b29b37 | 35 | DigitalOut RST; |
gcibeira | 0:be8d71b29b37 | 36 | }; |
gcibeira | 0:be8d71b29b37 | 37 | |
gcibeira | 0:be8d71b29b37 | 38 | #endif |