třída RTC – hodiny reálného času¶
RTC jsou nezávislé hodiny, které sledují datum a čas.
Příklad použití:
rtc = pyb.RTC()
rtc.datetime((2014, 5, 1, 4, 13, 0, 0, 0))
print(rtc.datetime())
Konstruktory¶
- class pyb.RTC¶
Vytvoří objekt RTC.
Metody¶
- datetime(datetimetuple: Tuple[int, int, int, int, int, int, int, int] | None = None) Tuple[int, int, int, int, int, int, int, int] | None¶
Získá nebo nastaví datum a čas RTC.
Bez argumentů tato metoda vrátí 8-tici s aktuálním datem a časem. S 1 argumentem (kterým je 8-tice) nastaví datum a čas (a
subsecondsse resetuje na 255).8-tice má následující formát:
(rok, měsíc, den, den v týdnu, hodiny, minuty, sekundy, podsekundy)
weekdayje 1-7 pro pondělí až neděli.subsecondsodpočítává od 255 do 0.
- wakeup(timeout: int | None, callback: Callable[[RTC], None] | None = None) None¶
Nastaví probouzecí časovač RTC tak, aby se opakovaně spouštěl každých
timeoutmilisekund. Tento spouštěč může probudit desku z obou stavů spánku:pyb.stop()apyb.standby().Pokud je
timeoutNone, je probouzecí časovač vypnut.Pokud je zadán
callback, je proveden při každém spuštění probouzecího časovače.callbackmusí přijímat přesně jeden argument – instanciRTC, která spustila probuzení.
- info() int¶
Získá informace o čase spuštění a zdroji resetu. Vrácené 32bitové celé číslo je bitově zabalená hodnota:
Bity
Význam
0x0000FFFFPočet milisekund, které RTC potřebovaly ke spuštění.
0x00010000Nastaveno, pokud došlo k resetu při zapnutí napájení.
0x00020000Nastaveno, pokud došlo k externímu resetu.
- calibration(cal: int | None = None) int | None¶
Získá nebo nastaví hodnotu plynulé kalibrace RTC.
Bez argumentů vrátí
calibration()aktuální kalibrační hodnotu, celé číslo v rozsahu[-511, 512]. S jedním argumentem nastaví kalibraci.Mechanismus plynulé kalibrace upravuje frekvenci hodin RTC přidáváním nebo odebíráním zadaného počtu tiků z hodin 32768 Hz po dobu 32 sekund (2^20 tiků hodin). Každý kladný tik zrychlí hodiny o 1 díl z 2^20 (≈0,954 ppm); záporné hodnoty hodiny zpomalí o stejnou hodnotu na tik. Použitelný kalibrační rozsah je tedy přibližně
-487.5 ppmaž+488.5 ppm.