Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: Detektor_Pokreta Dino_Martic_Programski
RtcCls.h@4:d2cc690aaac7, 2013-06-23 (annotated)
- Committer:
- leihen
- Date:
- Sun Jun 23 16:29:35 2013 +0000
- Revision:
- 4:d2cc690aaac7
- Child:
- 5:30531f2121a2
Added a RTC wrapper class.
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| leihen | 4:d2cc690aaac7 | 1 | #ifndef __RTC_H__ |
| leihen | 4:d2cc690aaac7 | 2 | #define __RTC_H__ |
| leihen | 4:d2cc690aaac7 | 3 | |
| leihen | 4:d2cc690aaac7 | 4 | #include "Rtc_Ds1307.h" |
| leihen | 4:d2cc690aaac7 | 5 | #include "mbed.h" |
| leihen | 4:d2cc690aaac7 | 6 | |
| leihen | 4:d2cc690aaac7 | 7 | typedef void (*callback_t)(void); |
| leihen | 4:d2cc690aaac7 | 8 | |
| leihen | 4:d2cc690aaac7 | 9 | class RtcCls : public Rtc_Ds1307 |
| leihen | 4:d2cc690aaac7 | 10 | { |
| leihen | 4:d2cc690aaac7 | 11 | protected: |
| leihen | 4:d2cc690aaac7 | 12 | InterruptIn m_sqw; |
| leihen | 4:d2cc690aaac7 | 13 | bool m_bUseSqw; |
| leihen | 4:d2cc690aaac7 | 14 | time_t m_time; // Only used in case of SQW use |
| leihen | 4:d2cc690aaac7 | 15 | |
| leihen | 4:d2cc690aaac7 | 16 | bool m_bAlarmEnabled; |
| leihen | 4:d2cc690aaac7 | 17 | callback_t m_alarmfunc; |
| leihen | 4:d2cc690aaac7 | 18 | time_t m_alarmTime; |
| leihen | 4:d2cc690aaac7 | 19 | |
| leihen | 4:d2cc690aaac7 | 20 | public: |
| leihen | 4:d2cc690aaac7 | 21 | RtcCls(PinName sda, PinName scl, PinName sqw, bool bUseSqw); |
| leihen | 4:d2cc690aaac7 | 22 | |
| leihen | 4:d2cc690aaac7 | 23 | protected: |
| leihen | 4:d2cc690aaac7 | 24 | static void _callback(void); |
| leihen | 4:d2cc690aaac7 | 25 | |
| leihen | 4:d2cc690aaac7 | 26 | public: |
| leihen | 4:d2cc690aaac7 | 27 | time_t getTime(); |
| leihen | 4:d2cc690aaac7 | 28 | void setTime(time_t t); |
| leihen | 4:d2cc690aaac7 | 29 | public: |
| leihen | 4:d2cc690aaac7 | 30 | void setAlarm(int nSeconds, callback_t alarmfunc) |
| leihen | 4:d2cc690aaac7 | 31 | { |
| leihen | 4:d2cc690aaac7 | 32 | m_alarmfunc = alarmfunc; |
| leihen | 4:d2cc690aaac7 | 33 | m_alarmTime = m_time + nSeconds; |
| leihen | 4:d2cc690aaac7 | 34 | m_bAlarmEnabled = (alarmfunc == NULL) ? false : true; |
| leihen | 4:d2cc690aaac7 | 35 | } |
| leihen | 4:d2cc690aaac7 | 36 | }; |
| leihen | 4:d2cc690aaac7 | 37 | |
| leihen | 4:d2cc690aaac7 | 38 | #endif // __RTC_H__ |