第1步:如何工作
NTP代表網(wǎng)絡(luò)時(shí)間協(xié)議,它是用于將計(jì)算機(jī)時(shí)鐘與協(xié)調(diào)世界時(shí)(UTC)參考同步的Internet協(xié)議。自1985年以前運(yùn)營以來,NTP最初由特拉華大學(xué)的David L. Mills設(shè)計(jì)。 NTP旨在將所有參與計(jì)算機(jī)同步到UTC的幾毫秒內(nèi)。在這個(gè)項(xiàng)目中,我們將使用NTP將我們的4Duino與UTC同步,并在4Duino屏幕上顯示。在骨架代碼中,有一個(gè)部分用于初始化ESP8266 Wi-Fi模塊。您需要做的就是取消注釋這些代碼行,并為您完成初始化。現(xiàn)在可以使用AT命令控制Wi-Fi模塊了。
步驟2:工作原理的第1部分
默認(rèn)波特率設(shè)置為115200 bps,但軟件序列實(shí)際工作的最大波特率為19200 bps。所以在代碼中它需要改變波特率,這是在骨架代碼中完成的。
步驟3:工作原理的第2部分(SSID和密碼)
ESP8266設(shè)置為站點(diǎn)模式并加入AP,AP可以是您的家庭路由器。 SSID和PASSWORD分別在代碼中定義。此外,程序?qū)⒛K設(shè)置為單連接模式。在單連接模式下,只能創(chuàng)建一個(gè)TCP或UDP通信。 (如第一張圖所示)
第4步:工作原理的第3部分(更改SSID和密碼)
只需更改SSID和PASSWORD以適合您的路由器。
步驟5:工作原理的第4部分
代碼上面用于繪制4Duino顯示屏上的時(shí)鐘面。
步驟6:函數(shù)
此處顯示的函數(shù)在本文檔稍后的流程圖。最好先提出每個(gè)功能的用途。這將使流程圖的理解更容易,顯示程序如何作為一個(gè)整體工作。
第7步:函數(shù):無符號(hào)長GetTime()
輸入:無
返回:UNIX時(shí)間(自1970年1月1日起的秒數(shù))
4Duino通過UDP啟動(dòng)與NTP網(wǎng)絡(luò)服務(wù)器的通信,并將服務(wù)綁定到端口123.
步驟8:功能:無符號(hào)長GetTime()(第1部分)
4Duino通過UDP向服務(wù)器發(fā)送NTP請(qǐng)求。
步驟9:功能:無符號(hào)長GetTime()(第2部分)
響應(yīng)中的服務(wù)器將發(fā)送數(shù)據(jù)包,其中字節(jié)40到43包含時(shí)間戳。
步驟10:功能:無符號(hào)長GetTime ()(第3部分)
提取并合并此數(shù)據(jù)以計(jì)算NTP時(shí)間(自1900年1月1日起的秒數(shù))。
步驟11:功能:無符號(hào)長GetTime()(第4部分)
這進(jìn)一步轉(zhuǎn)換為UNIX時(shí)間(自1970年1月1日起的秒數(shù))函數(shù)返回該值。
步驟12:函數(shù):字符串GMTTime(int GMT)
輸入:時(shí)差來自GMT
返回:格式為String的位置時(shí)間HH:MM:SS
此函數(shù)將UNIX時(shí)間轉(zhuǎn)換為小時(shí),分鐘和秒,并返回包含此信息的字符串,格式為(HH:MM:SS)。
此外,它接收GMT位置的時(shí)差作為輸入,允許函數(shù)考慮GMT的差異并計(jì)算特定位置的時(shí)間。
步驟13:功能:無效DrawHand(int Length,Int Angle,Int Color,Int Size)
輸入:手的長度,角度,手的顏色,實(shí)心圓的半徑手的結(jié)尾
此功能允許繪制與計(jì)算時(shí)間對(duì)應(yīng)的時(shí)鐘指針(小時(shí),分鐘,秒)。
步驟14:流程圖
步驟15:C OMPONENTS
此項(xiàng)目?jī)H使用4Duino的內(nèi)部電路。因此,您不需要此項(xiàng)目的任何組件。但是,需要微型USB電纜來編程4Duino。
步驟16:實(shí)施
1.構(gòu)建
4Duino有一個(gè)內(nèi)置的ESP8266 Wi-Fi模塊。因此,該項(xiàng)目不需要外部電路。
步驟17:實(shí)施
2。程序
Workshop 4 - 4Duino Basic Graphics環(huán)境用于編程此項(xiàng)目。 (同樣可以在最新的Arduino IDE中實(shí)現(xiàn))
這個(gè)項(xiàng)目需要安裝Arduino IDE,因?yàn)閃orkshop調(diào)用Arduino IDE來編譯Arduino草圖。但是,不需要打開或修改Arduino IDE來編程4Duino。 (如第一個(gè)圖所示。)
使用Workshop 4打開此文件。
在程序中更改SSID和PASSWORD以適合您的路由器。 (如下圖所示)
注意:在此處下載項(xiàng)目。
步驟18:實(shí)施
3。通信端口
使用μUSB電纜將4Duino連接到PC。然后導(dǎo)航到Comms選項(xiàng)卡并選擇4Duino連接的Comms端口。
步驟19:實(shí)現(xiàn)
4。編譯和上傳
最后,返回“主頁”標(biāo)簽,然后點(diǎn)擊“Comp‘nLoad”按鈕。
第20步:演示
上傳4Duino后,通過UDP與NTP服務(wù)器通信,并在4Duino屏幕上顯示同步時(shí)間。
-
時(shí)鐘
+關(guān)注
關(guān)注
11文章
1747瀏覽量
131804 -
NTP
+關(guān)注
關(guān)注
1文章
181瀏覽量
13962
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論