mirror of
https://github.com/sascha-hemi/pycom-documentation.git
synced 2026-03-21 09:04:12 +01:00
2.1 KiB
2.1 KiB
title, aliases
| title | aliases | |||
|---|---|---|---|---|
| RTC |
|
The RTC is used to keep track of the date and time.
Quick Usage Example
from machine import RTC
rtc = RTC()
rtc.init((2014, 5, 1, 4, 13, 0, 0, 0))
print(rtc.now())
Constructors
class machine.RTC([id=0, ...])
Create an RTC object. See init for parameters of initialisation.
# id of the RTC may be set if multiple are connected. Defaults to id = 0.
rtc = RTC(id=0)
Methods
rtc.init(datetime=None, [source=RTC.INTERNAL_RC])
Initialise the RTC. The arguments are:
datetimewhen passed it sets the current time. It is a tuple of the form:(year, month, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]])sourceselects the oscillator that drives the RTC. The options are RTC.INTERNAL_RC and RTC.XTAL_32KHZ
For example:
# for 2nd of February 2017 at 10:30am (TZ 0)
rtc.init((2017, 2, 28, 10, 30, 0, 0, 0))
tzinfois ignored by this method. Usetime.timezoneto achieve similar results.
rtc.ntp_sync(server, [update_period=3600])
Inits the RTC and sets up up automatic fetch and update the time using NTP (SNTP).
serveris the URL of the NTP server. Can be set toNoneto disable the periodic updates.update_periodis the number of seconds between updates. Shortest period is 15 seconds.
Can be used like:
rtc.ntp_sync("pool.ntp.org") # this is an example. You can select a more specific server according to your geographical location
rtc.now()
Get get the current datetime tuple:
# returns datetime tuple
rtc.now()
rtc.synced()
Returns True if the last ntp_sync has been completed, False otherwise:
rtc.synced()
rtc.memory([data])
Reads RTC memory contents or write data in passed Buffer in to RTC memory
Example:
rtc = RTC()
rtc.memory(b'10101010') # writes data in RTC memory
rtc.memory()
Output:
b'10101010'
Constants
- Clock source:
RTC.INTERNAL_RC,RTC.XTAL_32KHZ