ntptime --- 簡易 NTP 用戶端

本模組提供一個用於網路時間協定(NTP)的小型用戶端,可用於從網際網路時間伺服器擷取目前的 UTC 時間,並可選擇性地設定板載即時時鐘。它會對 NTP 伺服器執行單次 UDP 請求,並解碼回傳的 64 位元時間戳記。

本模組需要可正常運作的網路連線。其 32 位元的傳輸時間戳記會自動針對 2036 年 NTP 溢位進行修正,使此實作在 2160 年 2 月之前皆能保持有效。

函式

ntptime.time() int

查詢設定的 NTP 伺服器(host),並以自 MicroPython 紀元起算的整數秒數回傳目前的 UTC 時間。

MicroPython 紀元會在執行階段使用 time.gmtime() 偵測。支援 1970(Unix)與 2000 兩種紀元;任何其他紀元都會引發 Exception

網路錯誤會傳遞給呼叫端;底層的 socket 在回傳前一律會被關閉。

ntptime.settime() None

使用 time() 擷取目前時間,並透過 machine.RTC 據此設定板載 RTC。

請注意 MicroPython 不支援時區:RTC 一律以 UTC 設定。

常數

ntptime.host: str

要查詢的 NTP 伺服器主機名稱。預設為 "pool.ntp.org"。可在執行階段重新指派以覆寫,例如 ntptime.host = "time.google.com"

ntptime.timeout: int

套用於 NTP UDP 請求的 socket 逾時秒數。預設為 1。在緩慢或高延遲的網路上可調高此值。