0
我一直在嘗試與ntp服務器同步時間,但是,nodemcu似乎忽略了服務器參數。Sntp.sync()忽略服務器
-- sync.lua
sntp.sync("fr.pool.ntp.org", function()
tm = rtctime.epoch2cal(rtctime.get())
print(string.format("%04d/%02d/%02d %02d:%02d:%02d", tm["year"], tm["mon"], tm["day"], tm["hour"], tm["min"], tm["sec"]))
end)
執行..
> dofile('sync.lua')
> 2017/05/22 21:38:39
的時間響應是UNIX信號出現時間(https://www.epochconverter.com/)。它應該是服務器參數時間(在這種情況下,法國)?我嘗試了幾種不同的服務器(即http://www.pool.ntp.org/zone/europe),但響應仍然相同。
有什麼建議嗎?謝謝!
不,時代是UTC。您必須將時區應用於結果以獲取當地時間。我不確定您的環境中有哪些可以爲您提供的服務,但法國比UTC早2小時。 – ktb
@ktb所以...如果它始終返回UTC時間,爲什麼允許ntp服務器作爲參數? – hugalves
你確實希望你的時間修正是準確的,對吧?那麼,如果你住在法國,你需要一臺法國服務器,而不是日本服務器來告訴你時間。離你居住地比較遠一點。 – ktb