一般情况下我们都会使用RTC模块来读取时间,但是对于有WiFi功能的单片机来说,我们可以直接使用NTP协议从网上读取国际标准时间,更是精准和方便,下面就用瑞昱的RTL8722来演示一下
材料准备
范例说明这个范例里,我们使用Ameba连上无线网络,经由UDP发送NTP (Network Time Protocol, RFC 1305)请求到NTP Server,NTP Server会回应并且发送当下的UTC(Coordinated Universal Time)封包,我们将当下的时分秒解析并且显示在Serial Monitor上。 首先打开 WiFi Web Server的范例, “File” -> “Examples” -> “AmebaWiFi” -> “WiFiUdpNtpClient”
将无线网络连线至AP的相关讯息进行修改,包括 ssid, pass, keyIndex,并且修改连线的方式。
上传程式码之后,按下Ameba的Reset按钮,WiFi连线成功后,会传送NTP请求的封包至NTP Server “129, 6, 15, 28”,並且解析封包內容,將當下的時分秒顯示在Serial Monitor上:
|