W5500EVB从网络上获取标准时间
硬件資料
硬件設計
工程下載
參考代碼
實現(xiàn)步驟
NTP是網(wǎng)絡時間協(xié)議,是用來使設備時間同步化的一種協(xié)議,在一些應用場合里,時間同步是十分重要的,特別是隨著設備運行時間云長,時間誤差就越來越大,因為設備中晶振自身會產(chǎn)生誤差。那么NTP協(xié)議就可以解決這個問題。 下面我們就結(jié)合W5500介紹一下如何使用W5500實現(xiàn)NTP協(xié)議,即從一個遠程NTP服務器獲取標準網(wǎng)絡時間,通過換算成北京時間(東八區(qū)),然后通過串口把時間打印出來。相信通過本次講解,一定會使你對NTP有更清晰的認識。主函數(shù)中初始化單片機以及進行網(wǎng)絡配置的步驟 與前面章節(jié)相同,這里就不再贅述。主函數(shù)中重要的是調(diào)用ntpclient_init()和do_ntp_client()兩個函數(shù)。前者初始化NTP報文,后者完成與NTP服務器的交互過程。由于本程序只是實現(xiàn)從服務器獲取時間,并未涉及時鐘同步的問題,所以后面的字段都不需要用到,全部初始化為0, 為了簡化程序,NTP_Message中也僅僅包含flag中的內(nèi)容。NTP服務器的IP地址在全局變量NTP_Server_IP中定義,NTP服務器的默認端口號是123。
NTP校時過程中的原理示意圖如下:(其中W5500為圖中LS_A端,NTP服務器(國家授時中心)為LS_B端。)
測試步驟
總結(jié)
以上是生活随笔為你收集整理的W5500EVB从网络上获取标准时间的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Sql Server2005分离数据库
- 下一篇: 新书介绍:CCNA基础教程