ntptime — basit NTP istemcisi

Bu modül, Network Time Protocol (NTP) için küçük bir istemci sağlar; bir internet zaman sunucusundan geçerli UTC saatini almak ve isteğe bağlı olarak yerleşik gerçek zamanlı saati ayarlamak için kullanışlıdır. Bir NTP sunucusuna tek bir UDP isteği gerçekleştirir ve döndürülen 64 bitlik zaman damgasını çözer.

Bu modül, çalışan bir ağ bağlantısına dayanır. 32 bitlik hat üzerindeki zaman damgası, 2036 NTP taşması için otomatik olarak düzeltilir; bu da uygulamanın Şubat 2160’a kadar geçerli kalmasını sağlar.

Fonksiyonlar

ntptime.time() int

Yapılandırılmış NTP sunucusunu (host) sorgular ve geçerli UTC saatini, MicroPython çağ başlangıcından (epoch) bu yana geçen saniye sayısı olarak tam sayı biçiminde döndürür.

MicroPython çağ başlangıcı (epoch), çalışma zamanında time.gmtime() kullanılarak tespit edilir. Hem 1970 (Unix) hem de 2000 çağ başlangıçları desteklenir; başka herhangi bir çağ başlangıcı Exception yükseltir.

Ağ hataları çağırana iletilir; alttaki soket, dönmeden önce her zaman kapatılır.

ntptime.settime() None

time() kullanarak geçerli saati alır ve yerleşik RTC’yi machine.RTC aracılığıyla buna göre ayarlar.

MicroPython’ın saat dilimi desteği olmadığını unutmayın: RTC her zaman UTC olarak ayarlanır.

Sabitler

ntptime.host: str

Sorgulanacak NTP sunucusunun ana bilgisayar adı. Varsayılan olarak "pool.ntp.org" değerine sahiptir. Geçersiz kılmak için çalışma zamanında yeniden atayın, örn. ntptime.host = "time.google.com".

ntptime.timeout: int

NTP UDP isteğine uygulanan soket zaman aşımı (saniye cinsinden). Varsayılan olarak 1 değerine sahiptir. Yavaş veya yüksek gecikmeli ağlarda artırın.