Mbed clock is set using NTP and UTC displayed on Nokia LCD. Seehttp://mbed.org/users/4180_1/notebook/internet-nokia-lcd-clock/
Dependencies: EthernetNetIf NTPClient_NetServices mbed
Internet_LCD_Clock.cpp
- Committer:
- 4180_1
- Date:
- 2012-05-25
- Revision:
- 0:da7f4b6d2b7c
File content as of revision 0:da7f4b6d2b7c:
#include "mbed.h" #include "EthernetNetIf.h" #include "NTPClient.h" #include "NokiaLCD.h" // Internet of Things clock example: LCD time is set via internet NTP time server EthernetNetIf eth; NTPClient ntp; NokiaLCD lcd(p5, p7, p8, p9, NokiaLCD::LCD6610); // mosi, sclk, cs, rst, type int main() { //system time structure time_t ctTime; char *time_str; //clear LCD lcd.cls(); lcd.locate(0,2); // lcd.printf prints to LCD display; lcd.printf("Get IP addr..."); EthernetErr ethErr = eth.setup(); //Get an Internet IP address using DHCP if (ethErr) { //error or timeout getting an IP address lcd.cls(); lcd.locate(0,2); lcd.printf("Net Error %d",ethErr); return -1; } lcd.locate(0,3); lcd.printf("Reading Time..."); //specify time server URL Host server(IpAddr(), 123, "0.uk.pool.ntp.org"); //Read time from server ntp.setTime(server); lcd.locate(0,4); lcd.printf("Time set"); //Delay for human time to read LCD display wait(1); while (1) { // loop and periodically update the LCD's time display lcd.cls(); ctTime = time(NULL); lcd.locate(0,1); lcd.printf("UTC:"); lcd.locate(0,3); time_str = ctime(&ctTime); time_str[strlen(time_str)-1] = 0; lcd.printf("%s", time_str); wait(1); } }