クラス RTC -- リアルタイムクロック

RTCは、日時の経過を追う自律クロックです。

使用例:

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

コンストラクタ

class pyb.RTC

Create an RTC object.

メソッド

RTC.datetime([datetimetuple])

RTC の日付と時刻を取得または設定します。

With no arguments, this method returns an 8-tuple with the current date and time. With 1 argument (being an 8-tuple) it sets the date and time (and subseconds is reset to 255).

8項目のタプルの形式は次のとおりです:

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

weekday is 1-7 for Monday through Sunday.

subseconds counts down from 255 to 0

RTC.wakeup(timeout, callback=None)

Set the RTC wakeup timer to trigger repeatedly at every timeout milliseconds. This trigger can wake the pyboard from both the sleep states: pyb.stop() and pyb.standby().

If timeout is None then the wakeup timer is disabled.

If callback is given then it is executed at every trigger of the wakeup timer. callback must take exactly one argument.

RTC.info()

Get information about the startup time and reset source.

  • The lower 0xffff are the number of milliseconds the RTC took to start up.
  • Bit 0x10000 is set if a power-on reset occurred.
  • Bit 0x20000 is set if an external reset occurred
RTC.calibration(cal)

Get or set RTC calibration.

With no arguments, calibration() returns the current calibration value, which is an integer in the range [-511 : 512]. With one argument it sets the RTC calibration.

The RTC Smooth Calibration mechanism adjusts the RTC clock rate by adding or subtracting the given number of ticks from the 32768 Hz clock over a 32 second period (corresponding to 2^20 clock ticks.) Each tick added will speed up the clock by 1 part in 2^20, or 0.954 ppm; likewise the RTC clock it slowed by negative values. The usable calibration range is: (-511 * 0.954) ~= -487.5 ppm up to (512 * 0.954) ~= 488.5 ppm