NTP client as a simple clock using PIC18F27J53 and W5200

<< Introduction in Japanese >>

有線でのネットワーク実験に一区切りを付ける為に、WIZ820io (W5200) でインターネット接続する実験ボードを用いて、2017年7月14日の稿で記した現在時刻の取得実験を行った。接続する NTP server は同じく、情報通信研究機構の ntp.nict.jp を利用した。

The Ethernet board was previously reported in my page on Sep. 1, 2017.

<< Sample code of the NTP client with W5200 >>

(Compiled by the C18 under the large code model on the MPLAB X IDE)

In TCPIPConfig.h, the default network configuration must be adjusted to your local network (MAC address, IP address and so on).

In addition, STACK_USE_DNS, STACK_USE_BERKELEY_API and STACK_USE_TCP are defined so that the Ethernet board can work as a NTP client using the Berkeley Socket.

<< Operation of the NTP client >>

Initialization:    If the Ethernet board is connected to the Internet for the first time, the current time can be automatically obtained from the NTP server.

Adjustment of the time:    Every time the RB3 pin (BUTTON 0) is pulled down, the current time will be gotten from the NTP server.

使用方法: TCPIPConfig.h ファイルにローカル・ネットワークの情報を設定。インターネットに接続すると、初回の時刻設定は自動的に NTP サーバーに接続されて時間を刻み始める。2回目以降の時刻補正には、インターネット接続された状態でスイッチ (RB3) を押すと NTP サーバーに接続されて現在時刻に更新される。

<< Summary in Japanese >>

WIZ820io (W5200) を ENC28J60 の代わりに用いての実験を終える。LAN として DHCP、NBNS の、WAN として SMTP、NTP の各サービスの実働を確認する事が出来た。組み込みシステムがインターネットの世界と簡単に繋がる事が、本当にすばらしい時代と言える事を祈念して稿を終える。