RTC
Što primjer prikazuje
Postavlja vrijeme i datum na ugrađenom satu stvarnog vremena (RTC), zatim očitava vrijeme i prikazuje ga, pri čemu se cijeli zaslon osvježava svakih 10 sekundi. Zaslon nema djelomično osvježavanje, pa primjer prije svakog ponovnog crtanja briše bijelom bojom okvir iza vremena.
Primjer koda
"""Use the onboard RTC."""
# Include all the required libraries
from inkplate7spectra import Inkplate
import time
# Create Inkplate object
inkplate = Inkplate()
# Initialize the display, needs to be called only once
inkplate.begin()
inkplate.set_text_size(3)
# This is how to set the RTC's time
# Arguments are hour, minute, seconds
inkplate.rtc_set_time(9, 39, 10)
# And this is the date
# Arguments are weekday, day in month, month and year
inkplate.rtc_set_date(2, 9, 2, 2026)
# Box that the time text is drawn into -- must be cleared before each redraw,
# since we redraw the whole screen every tick (this board has no partial-
# refresh support)
box_x, box_y, box_w, box_h = 100, 100, 300, 60
# Infinite loop
while True:
rtc_data = inkplate.rtc_get_data()
hour = rtc_data["hour"]
minute = rtc_data["minute"]
second = rtc_data["second"]
if hour < 10:
hour = "0" + str(hour)
if minute < 10:
minute = "0" + str(minute)
if second < 10:
second = "0" + str(second)
inkplate.fill_rect(box_x, box_y, box_w, box_h, inkplate.WHITE)
inkplate.set_cursor(box_x, box_y)
current_time = str(hour) + ":" + str(minute) + ":" + str(second)
inkplate.print(current_time)
inkplate.display()
# Let's wait 10 seconds
time.sleep(10)
Korištene funkcije
Inkplate()returns InkplateStvara objekt zaslona iz modula inkplate7spectra.
ReturnsObjekt zaslona.
inkplate.begin()returns boolPostavlja pločicu, uključujući RTC, i bijeli međuspremnik okvira. Pozovite je jednom.
ReturnsTrue.
inkplate.set_text_size(s)returns NonePostavlja faktor mjerila teksta, ovdje 3.
ReturnsNišta.
inkplate.rtc_set_time(rtc_hour, rtc_minute, rtc_second)returns NoneUpisuje vrijeme u RTC.
ReturnsNišta.
inkplate.rtc_set_date(rtc_weekday, rtc_day, rtc_month, rtc_yr)returns NoneUpisuje datum u RTC i označava ga kao postavljenog. rtc_yr je puna godina, na primjer 2026.
ReturnsNišta.
inkplate.rtc_get_data()returns dictOčitava RTC.
ReturnsRječnik s ključevima second, minute, hour, day, weekday, month i year (puna godina).
inkplate.fill_rect(x, y, w, h, c)returns NoneCrta ispunjeni pravokutnik, ovdje bijeli preko starog vremena.
ReturnsNišta.
inkplate.set_cursor(x, y)returns NonePostavlja mjesto od kojeg print() započinje.
ReturnsNišta.
inkplate.print(text)returns NoneCrta tekst na položaju kursora u međuspremnik okvira.
ReturnsNišta.
inkplate.display(leave_on=False)returns NoneŠalje međuspremnik okvira na zaslon i osvježava ga.
ReturnsNišta.
Što očekivati
Vrijeme se prikazuje crnom bojom na položaju (100, 100), u trostrukoj osnovnoj veličini, u obliku HH:MM:SS, počevši od 09:39:10. Zaslon se osvježava novim vremenom svakih 10 sekundi. U shellu se ništa ne ispisuje.
🔗Otvorite cjeloviti primjer
examples/inkplate7spectra/rtc.py