clasa RTC – ceas în timp real¶
RTC este un ceas independent care ține evidența datei și a orei.
Exemplu de utilizare:
rtc = pyb.RTC()
rtc.datetime((2014, 5, 1, 4, 13, 0, 0, 0))
print(rtc.datetime())
Constructori¶
- class pyb.RTC¶
Creează un obiect RTC.
Metode¶
- datetime(datetimetuple: Tuple[int, int, int, int, int, int, int, int] | None = None) Tuple[int, int, int, int, int, int, int, int] | None¶
Obține sau setează data și ora RTC-ului.
Fără argumente, această metodă returnează un tuplu cu 8 elemente conținând data și ora curente. Cu 1 argument (fiind un tuplu cu 8 elemente) setează data și ora (iar
subsecondseste resetat la 255).Tuplul cu 8 elemente are următorul format:
(year, month, day, weekday, hours, minutes, seconds, subseconds)
weekdayeste de la 1 la 7, de luni până duminică.subsecondsnumără invers de la 255 la 0.
- wakeup(timeout: int | None, callback: Callable[[RTC], None] | None = None) None¶
Setează temporizatorul de trezire al RTC-ului să se declanșeze repetat la fiecare
timeoutmilisecunde. Acest declanșator poate trezi placa din ambele stări de repaus:pyb.stop()șipyb.standby().Dacă
timeoutesteNone, atunci temporizatorul de trezire este dezactivat.Dacă este furnizat
callback, atunci acesta este executat la fiecare declanșare a temporizatorului de trezire.callbacktrebuie să accepte exact un argument – instanțaRTCcare a declanșat trezirea.
- info() int¶
Obține informații despre timpul de pornire și sursa de resetare. Numărul întreg pe 32 de biți returnat este o valoare împachetată pe biți:
Biți
Semnificație
0x0000FFFFNumărul de milisecunde de care a avut nevoie RTC-ul pentru a porni.
0x00010000Setat dacă a avut loc o resetare la pornirea alimentării.
0x00020000Setat dacă a avut loc o resetare externă.
- calibration(cal: int | None = None) int | None¶
Obține sau setează valoarea de calibrare fină (smooth-calibration) a RTC-ului.
Fără argumente,
calibration()returnează valoarea de calibrare curentă, un număr întreg în intervalul[-511, 512]. Cu un argument, setează calibrarea.Mecanismul de calibrare fină ajustează rata ceasului RTC adăugând sau scăzând numărul dat de tacturi din ceasul de 32768 Hz pe o perioadă de 32 de secunde (2^20 de tacturi de ceas). Fiecare tact pozitiv accelerează ceasul cu 1 parte din 2^20 (≈0,954 ppm); valorile negative încetinesc ceasul cu aceeași cantitate per tact. Intervalul de calibrare utilizabil este, prin urmare, de aproximativ
-487.5 ppmpână la+488.5 ppm.