kelas RTC -- jam waktu nyata

RTC adalah jam independen yang melacak tanggal dan waktu.

Contoh penggunaan:

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

Konstruktor

class pyb.RTC

Membuat objek 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

Mendapatkan atau menetapkan tanggal dan waktu RTC.

Tanpa argumen, metode ini mengembalikan tuple 8 elemen dengan tanggal dan waktu saat ini. Dengan 1 argumen (berupa tuple 8 elemen) ini menetapkan tanggal dan waktu (dan subseconds direset ke 255).

Tuple 8 elemen memiliki format berikut:

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

weekday adalah 1-7 untuk Senin hingga Minggu.

subseconds menghitung mundur dari 255 ke 0.

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

Menetapkan timer wakeup RTC untuk memicu berulang setiap timeout milidetik. Pemicu ini dapat membangunkan board dari kedua status tidur: pyb.stop() dan pyb.standby().

Jika timeout adalah None maka timer wakeup dinonaktifkan.

Jika callback diberikan maka itu akan dieksekusi pada setiap pemicu timer wakeup. callback harus menerima tepat satu argumen -- instansi RTC yang memicu wakeup.

info() int

Mendapatkan informasi tentang waktu startup dan sumber reset. Integer 32-bit yang dikembalikan adalah nilai yang dikemas dalam bit:

Bit

Makna

0x0000FFFF

Jumlah milidetik yang dibutuhkan RTC untuk memulai.

0x00010000

Ditetapkan jika reset power-on terjadi.

0x00020000

Ditetapkan jika reset eksternal terjadi.

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

Mendapatkan atau menetapkan nilai kalibrasi smooth RTC.

Tanpa argumen, calibration() mengembalikan nilai kalibrasi saat ini, sebuah integer dalam rentang [-511, 512]. Dengan satu argumen, ini menetapkan kalibrasi.

Mekanisme kalibrasi smooth menyesuaikan laju jam RTC dengan menambahkan atau mengurangi jumlah tick yang diberikan dari jam 32768 Hz selama periode 32 detik (2^20 tick jam). Setiap tick positif mempercepat jam sebesar 1 bagian dalam 2^20 (≈0.954 ppm); nilai negatif memperlambat jam dengan jumlah yang sama per tick. Rentang kalibrasi yang dapat digunakan oleh karena itu kira-kira -487.5 ppm hingga +488.5 ppm.