Mbed Clock application using an NTP connection to get internet time and a terminal interface to send commands
Dependencies: 4DGL-uLCD-SE EthernetInterface NTPClient mbed-rtos mbed SDFileSystem wavfile
Clock.h@6:23c3adb0470d, 2014-12-09 (annotated)
- Committer:
- dudanian
- Date:
- Tue Dec 09 16:28:38 2014 +0000
- Revision:
- 6:23c3adb0470d
- Parent:
- 2:c939d0501184
changed server to txt file
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dudanian | 0:4e6ae21cbd31 | 1 | #include "mbed.h" |
dudanian | 2:c939d0501184 | 2 | #include "rtos.h" |
dudanian | 0:4e6ae21cbd31 | 3 | #include "NTPClient.h" |
dudanian | 0:4e6ae21cbd31 | 4 | |
dudanian | 0:4e6ae21cbd31 | 5 | // AM/PM |
dudanian | 0:4e6ae21cbd31 | 6 | const int AM = 0; |
dudanian | 0:4e6ae21cbd31 | 7 | const int PM = 12; |
dudanian | 0:4e6ae21cbd31 | 8 | |
dudanian | 0:4e6ae21cbd31 | 9 | // Timezones |
dudanian | 0:4e6ae21cbd31 | 10 | const int PST = -8; |
dudanian | 0:4e6ae21cbd31 | 11 | const int MST = -7; |
dudanian | 0:4e6ae21cbd31 | 12 | const int CST = -6; |
dudanian | 0:4e6ae21cbd31 | 13 | const int EST = -5; |
dudanian | 0:4e6ae21cbd31 | 14 | const int UTC = 0; |
dudanian | 0:4e6ae21cbd31 | 15 | |
dudanian | 0:4e6ae21cbd31 | 16 | class Clock { |
dudanian | 0:4e6ae21cbd31 | 17 | public: |
dudanian | 0:4e6ae21cbd31 | 18 | Clock(); |
dudanian | 2:c939d0501184 | 19 | void setAlarmThread(Thread *aThread); |
dudanian | 0:4e6ae21cbd31 | 20 | |
dudanian | 0:4e6ae21cbd31 | 21 | void setTime(int hour, int minute, int period); |
dudanian | 0:4e6ae21cbd31 | 22 | void setTimezone(int timezone); |
dudanian | 0:4e6ae21cbd31 | 23 | |
dudanian | 0:4e6ae21cbd31 | 24 | int syncTime(); |
dudanian | 0:4e6ae21cbd31 | 25 | |
dudanian | 2:c939d0501184 | 26 | void setAlarm(int hour, int minute, int period); |
dudanian | 2:c939d0501184 | 27 | void setTimer(int hours, int minutes); |
dudanian | 2:c939d0501184 | 28 | void deleteAlarm(); |
dudanian | 2:c939d0501184 | 29 | bool alarmSet(); |
dudanian | 2:c939d0501184 | 30 | |
dudanian | 0:4e6ae21cbd31 | 31 | time_t getTime(); |
dudanian | 0:4e6ae21cbd31 | 32 | int getTimezone(); |
dudanian | 0:4e6ae21cbd31 | 33 | |
dudanian | 2:c939d0501184 | 34 | |
dudanian | 2:c939d0501184 | 35 | private: |
dudanian | 2:c939d0501184 | 36 | int timezone; |
dudanian | 2:c939d0501184 | 37 | bool aSet; |
dudanian | 2:c939d0501184 | 38 | Ticker alarmTicker; |
dudanian | 2:c939d0501184 | 39 | Thread *alarmThread; |
dudanian | 2:c939d0501184 | 40 | |
dudanian | 2:c939d0501184 | 41 | void signalAlarm(); |
dudanian | 0:4e6ae21cbd31 | 42 | }; |