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.
Dependencies: NTPClient mbed-rtos mbed
Fork of Eg12_NTPclient_Time by
main.cpp@2:304943c5e111, 2018-03-22 (annotated)
- Committer:
- brdarji
- Date:
- Thu Mar 22 07:35:01 2018 +0000
- Revision:
- 2:304943c5e111
- Parent:
- 1:039c06964ad9
STM32f4 Eth example;
Who changed what in which revision?
| User | Revision | Line number | New contents of line | 
|---|---|---|---|
| dwijaybane | 1:039c06964ad9 | 1 | #include "mbed.h" // Basic Library required for onchip peripherals | 
| dwijaybane | 1:039c06964ad9 | 2 | #include "EthernetInterface.h" // Ethernet Library | 
| dwijaybane | 1:039c06964ad9 | 3 | #include "NTPClient.h" // Network Time Protocol client Library | 
| brdarji | 2:304943c5e111 | 4 | //#include "C12832_lcd.h" // Library for SPI based LCD | 
| dwijaybane | 0:0d3b3b9fd82e | 5 | |
| dwijaybane | 1:039c06964ad9 | 6 | /* Create Objects */ | 
| brdarji | 2:304943c5e111 | 7 | |
| dwijaybane | 1:039c06964ad9 | 8 | EthernetInterface eth; // Initialize Ethernet object | 
| dwijaybane | 1:039c06964ad9 | 9 | NTPClient ntp; // Initialize NTP object | 
| brdarji | 2:304943c5e111 | 10 | Serial pc(PC_6,PC_7); | 
| brdarji | 2:304943c5e111 | 11 | //Serial pc(USBTX,USBRX); | 
| dwijaybane | 1:039c06964ad9 | 12 | // For Static IP | 
| brdarji | 2:304943c5e111 | 13 | static const char* mbedIp = "192.168.1.160"; //IP | 
| dwijaybane | 0:0d3b3b9fd82e | 14 | static const char* mbedMask = "255.255.255.0"; // Mask | 
| brdarji | 2:304943c5e111 | 15 | static const char* mbedGateway = "192.168.1.1"; //Gateway | 
| dwijaybane | 0:0d3b3b9fd82e | 16 | |
| dwijaybane | 0:0d3b3b9fd82e | 17 | int main() | 
| dwijaybane | 0:0d3b3b9fd82e | 18 | { | 
| dwijaybane | 0:0d3b3b9fd82e | 19 | EthernetInterface eth; | 
| brdarji | 2:304943c5e111 | 20 | int s = eth.init(); // For DHCP uncomment this line | 
| brdarji | 2:304943c5e111 | 21 | // int s = eth.init(mbedIp,mbedMask,mbedGateway); //Use these parameters for static IP | 
| brdarji | 2:304943c5e111 | 22 | if( s != NULL ) | 
| brdarji | 2:304943c5e111 | 23 | { | 
| brdarji | 2:304943c5e111 | 24 | pc.printf( "Could not initialise. Will halt!\n\r" ); | 
| brdarji | 2:304943c5e111 | 25 | exit( 0 ); | 
| brdarji | 2:304943c5e111 | 26 | } | 
| brdarji | 2:304943c5e111 | 27 | s = eth.connect(); | 
| brdarji | 2:304943c5e111 | 28 | if( s != NULL ) | 
| brdarji | 2:304943c5e111 | 29 | { | 
| brdarji | 2:304943c5e111 | 30 | pc.printf( "Could not connect. Will halt!\n\r" ); | 
| brdarji | 2:304943c5e111 | 31 | exit( 0 ); | 
| brdarji | 2:304943c5e111 | 32 | } | 
| brdarji | 2:304943c5e111 | 33 | else | 
| brdarji | 2:304943c5e111 | 34 | { | 
| brdarji | 2:304943c5e111 | 35 | pc.printf( "IP: %s\n\r", eth.getIPAddress() ); | 
| brdarji | 2:304943c5e111 | 36 | } | 
| brdarji | 2:304943c5e111 | 37 | pc.printf("Connected! IP Address is %s\r\n", eth.getIPAddress()); | 
| brdarji | 2:304943c5e111 | 38 | pc.printf("Trying to update time...\r\n"); | 
| dwijaybane | 1:039c06964ad9 | 39 | if (ntp.setTime("0.pool.ntp.org") == 0) { // ntp server | 
| brdarji | 2:304943c5e111 | 40 | pc.printf("Set time successfully\r\n"); | 
| dwijaybane | 0:0d3b3b9fd82e | 41 | while(1) { | 
| brdarji | 2:304943c5e111 | 42 | |
| dwijaybane | 0:0d3b3b9fd82e | 43 | time_t ctTime; | 
| dwijaybane | 0:0d3b3b9fd82e | 44 | ctTime = time(NULL); | 
| brdarji | 2:304943c5e111 | 45 | pc.printf("%s\r\n", ctime(&ctTime)); | 
| brdarji | 2:304943c5e111 | 46 | pc.printf("Current Time (UTC)"); | 
| dwijaybane | 0:0d3b3b9fd82e | 47 | wait(1); | 
| dwijaybane | 0:0d3b3b9fd82e | 48 | } | 
| dwijaybane | 0:0d3b3b9fd82e | 49 | } else { | 
| brdarji | 2:304943c5e111 | 50 | pc.printf("NTP Error\r\n"); | 
| dwijaybane | 0:0d3b3b9fd82e | 51 | } | 
| dwijaybane | 0:0d3b3b9fd82e | 52 | |
| dwijaybane | 0:0d3b3b9fd82e | 53 | eth.disconnect(); | 
| dwijaybane | 0:0d3b3b9fd82e | 54 | |
| dwijaybane | 0:0d3b3b9fd82e | 55 | while(1) { | 
| dwijaybane | 0:0d3b3b9fd82e | 56 | } | 
| dwijaybane | 0:0d3b3b9fd82e | 57 | } | 
