This sketch set time and date using compiler macros, and then send through serial port every five seconds
Dependencies: Hotboards_rtcc mbed
Diff: main.cpp
- Revision:
- 0:18a586e130b8
- Child:
- 1:6270f452fd66
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Tue Feb 09 23:31:57 2016 +0000 @@ -0,0 +1,51 @@ +/* + Hotboards_rtcc Library - setting time and date with compiler macros + Demonstrates the use a MCP7941x clock calendar. + The Hotboards_rtcc library works with this microchip real time clock + (http://www.hotboards.org). + + This sketch set time and date using compiler macros, and then send through + serial port every five seconds + The circuit: + * VDD --> 3.3v + * GND --> GND + * SDA --> SDA + * SCL --> SCL +*/ +#include "mbed.h" +#include "Hotboards_rtcc.h" + +/* days of the week */ +const char *week[] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}; +/* months of the year */ +const char *months[] = {"JAN","FEB","MAR","APR","MAY","JUN", "JUL", "AUG","SEPT","OCT","NOV","DEC"}; + +/*serial port init*/ +Serial pc(USBTX,USBRX); +/*i2c instance delaration for use with the rtcc library*/ +I2C device(PB_9, PB_8); +/*lets declare and rtcc instance */ +Hotboards_rtcc rtcc(device); +#include "mbed.h" + + +int main() +{ + /*i2c bus clock set to 100khz*/ + device.frequency(100000); + /* init the rtcc, just enable the clock if not already enable */ + rtcc.begin(); + /* set the time when is compiled*/ + DateTime time( __DATE__, __TIME__); + rtcc.adjust(time); + + while(1) + { + /* get the actual time and date */ + time = rtcc.now( ); + /* display trough serial port */ + printf( "Time- %d:%d:%d Date- %s/ %d/ %s/ %d\n",time.hour( ),time.minute( ),time.second( ),week[time.dayOfTheWeek( )],time.day( ),months[time.month( )],time.year()); + /* wait only five second */ + wait( 5 ); + } +}