class RTC – realtidsklocka

RTC:n är en oberoende klocka som håller reda på datum och tid.

Exempelanvändning:

rtc = pyb.RTC()
rtc.datetime((2014, 5, 1, 4, 13, 0, 0, 0))
print(rtc.datetime())

Konstruktorer

class pyb.RTC

Skapa ett RTC-objekt.

Metoder

datetime(datetimetuple: Tuple[int, int, int, int, int, int, int, int] | None = None) Tuple[int, int, int, int, int, int, int, int] | None

Hämta eller ställ in RTC:ns datum och tid.

Utan argument returnerar denna metod en 8-tupel med aktuellt datum och tid. Med 1 argument (en 8-tupel) ställer den in datum och tid (och subseconds återställs till 255).

8-tupeln har följande format:

(year, month, day, weekday, hours, minutes, seconds, subseconds)

weekday är 1-7 för måndag till söndag.

subseconds räknar ner från 255 till 0.

wakeup(timeout: int | None, callback: Callable[[RTC], None] | None = None) None

Ställ in RTC:ns väckningstimer så att den utlöses upprepade gånger var timeout:e millisekund. Denna utlösare kan väcka kortet från båda viloläges­tillstånden: pyb.stop() och pyb.standby().

Om timeout är None inaktiveras väckningstimern.

Om callback anges körs det vid varje utlösning av väckningstimern. callback måste ta exakt ett argument – den RTC-instans som utlöste väckningen.

info() int

Hämta information om uppstartstiden och återställningskällan. Det returnerade 32-bitars heltalet är ett bitpackat värde:

Bitar

Betydelse

0x0000FFFF

Antal millisekunder som RTC:n tog på sig att starta upp.

0x00010000

Satt om en power-on-återställning inträffade.

0x00020000

Satt om en extern återställning inträffade.

calibration(cal: int | None = None) int | None

Hämta eller ställ in RTC:ns värde för jämn kalibrering.

Utan argument returnerar calibration() det aktuella kalibreringsvärdet, ett heltal i intervallet [-511, 512]. Med ett argument ställs kalibreringen in.

Mekanismen för jämn kalibrering justerar RTC:ns klockfrekvens genom att lägga till eller dra ifrån det angivna antalet tick från 32768 Hz-klockan över en 32-sekundersperiod (2^20 klocktick). Varje positivt tick snabbar upp klockan med 1 del på 2^20 (≈0,954 ppm); negativa värden saktar ner klockan med samma mängd per tick. Det användbara kalibreringsintervallet är därför ungefär -487.5 ppm till +488.5 ppm.