クラス RTC -- リアルタイムクロック
RTCは、日時の経過を追う自律クロックです。
使用例:
rtc = machine.RTC()
rtc.datetime((2020, 1, 21, 2, 10, 32, 36, 0))
print(rtc.datetime())
コンストラクタ
- class machine.RTC(id=0, ...)
RTC オブジェクトを作成します。初期化パラメータについてはinitを参照してください。
メソッド
- RTC.datetime([datetimetuple])
RTC の日付と時刻を取得または設定します。
引数がない場合、このメソッドは現在の日時を含む8項目のタプルを返します。1つの引数(8項目のタプル)を指定した場合は日時を設定します。
8項目のタプルの形式は次のとおりです:
(year, month, day, weekday, hours, minutes, seconds, subseconds)
subsecondsの意味はハードウェアに依存します。
- RTC.init(datetime)
RTC を初期化します。datetime は次の形式のタプルです。
(year, month, day, hour, minute, second, microsecond, tzinfo)すべての8つの引数を指定する必要があります。現在のところ
microsecondとtzinfoの値は無視されますが、将来的に使用される可能性があります。対応ポート: CC3200, ESP32, MIMXRT, SAMD。stm32 および renesas-ra ポートの rtc.init() メソッドは、RTC を(再)起動するだけであり、引数を受け付けません。
- RTC.now()
現在の日時タプルを取得します。
対応ポート: WiPy
- RTC.deinit()
RTC を2015年1月1日の時刻にリセットして、実行を再開します。
- RTC.alarm(id, time, *, repeat=False)
RTC アラームを設定します。time にはアラームをプログラムする、現在時刻からの経過ミリ秒数、あるいは日時タプルのどちらかを指定します。time の指定がミリ秒の場合、repeat に True を設定すると、アラームを定期的に行うようになります。
- RTC.alarm_left(alarm_id=0)
アラームが期限切れになるまでの残りミリ秒数を取得します。
- RTC.alarm_cancel(alarm_id=0)
作動中のアラームをキャンセルします。
mimxrt ポートでは、この機能が RTC.cancel(alarm_id=0) としても提供されていますが、これは MicroPython 2.0 で削除される予定です。
- RTC.irq(*, trigger, handler=None, wake=machine.IDLE)
リアルタイムクロックのアラームによってトリガーされる irq オブジェクトを作成します。
triggerはRTC.ALARM0でなければなりませんhandlerはコールバックがトリガーされたときに呼び出される関数です。wakeは、この割り込みがシステムを起床できるスリープモードを指定します。
- RTC.memory([data])
RTC.memory(data)は data を RTC メモリに書き出します。ここで data はバッファプロトコルをサポートする任意のオブジェクトです(bytes,bytearray,memoryview,array.arrayなど)。RTC.memory()は RTC メモリを読み込み、bytesオブジェクトを返します。RTC ユーザーメモリに書き出したデータは ソフトリセット や
machine.deepsleep()などで再起動したときも保持されます。RTC ユーザーメモリの最大長は、esp32 ではデフォルトで 2048 バイト、esp8266 では 492 バイトです。
対応ポート: esp32、esp8266 ポート。
定数
- RTC.ALARM0
irq トリガーソース