summaryrefslogtreecommitdiff
path: root/shared-bindings/rtc
diff options
context:
space:
mode:
authorScott Shawcroft <scott@adafruit.com>2020-05-15 10:31:05 -0700
committerGitHub <noreply@github.com>2020-05-15 10:31:05 -0700
commit0d8bca92e208e705150097d26db6a5390dc9eb9b (patch)
tree122acb729c3e0e629642bc39f7f2ee9db3fc084a /shared-bindings/rtc
parentbd78ab3c2812f7772021be7863f89a9650589d80 (diff)
parent8ac3e7977f87219454dbab50264a723e797b877a (diff)
Merge pull request #2810 from dherrada/master
Pyi integration
Diffstat (limited to 'shared-bindings/rtc')
-rw-r--r--shared-bindings/rtc/RTC.c44
-rw-r--r--shared-bindings/rtc/__init__.c42
2 files changed, 35 insertions, 51 deletions
diff --git a/shared-bindings/rtc/RTC.c b/shared-bindings/rtc/RTC.c
index 07d170ee6..58fe308f5 100644
--- a/shared-bindings/rtc/RTC.c
+++ b/shared-bindings/rtc/RTC.c
@@ -38,14 +38,12 @@
const rtc_rtc_obj_t rtc_rtc_obj = {{&rtc_rtc_type}};
-//| .. currentmodule:: rtc
+//| class RTC:
+//| """Real Time Clock"""
//|
-//| :class:`RTC` --- Real Time Clock
-//| --------------------------------
-//|
-//| .. class:: RTC()
-//|
-//| This class represents the onboard Real Time Clock. It is a singleton and will always return the same instance.
+//| def __init__(self, ):
+//| """This class represents the onboard Real Time Clock. It is a singleton and will always return the same instance."""
+//| ...
//|
STATIC mp_obj_t rtc_rtc_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
// No arguments
@@ -55,25 +53,24 @@ STATIC mp_obj_t rtc_rtc_make_new(const mp_obj_type_t *type, size_t n_args, const
return (mp_obj_t)&rtc_rtc_obj;
}
-//| .. attribute:: datetime
+//| datetime: time.struct_time = ...
+//| """The current date and time of the RTC as a `time.struct_time`.
//|
-//| The current date and time of the RTC as a `time.struct_time`.
+//| This must be set to the current date and time whenever the board loses power::
//|
-//| This must be set to the current date and time whenever the board loses power::
+//| import rtc
+//| import time
//|
-//| import rtc
-//| import time
+//| r = rtc.RTC()
+//| r.datetime = time.struct_time((2019, 5, 29, 15, 14, 15, 0, -1, -1))
//|
-//| r = rtc.RTC()
-//| r.datetime = time.struct_time((2019, 5, 29, 15, 14, 15, 0, -1, -1))
//|
+//| Once set, the RTC will automatically update this value as time passes. You can read this
+//| property to get a snapshot of the current time::
//|
-//| Once set, the RTC will automatically update this value as time passes. You can read this
-//| property to get a snapshot of the current time::
-//|
-//| current_time = r.datetime
-//| print(current_time)
-//| # struct_time(tm_year=2019, tm_month=5, ...)
+//| current_time = r.datetime
+//| print(current_time)
+//| # struct_time(tm_year=2019, tm_month=5, ...)"""
//|
STATIC mp_obj_t rtc_rtc_obj_get_datetime(mp_obj_t self_in) {
timeutils_struct_time_t tm;
@@ -97,12 +94,11 @@ const mp_obj_property_t rtc_rtc_datetime_obj = {
(mp_obj_t)&mp_const_none_obj},
};
-//| .. attribute:: calibration
-//|
-//| The RTC calibration value as an `int`.
+//| calibration: int = ...
+//| """The RTC calibration value as an `int`.
//|
//| A positive value speeds up the clock and a negative value slows it down.
-//| Range and value is hardware specific, but one step is often approximately 1 ppm.
+//| Range and value is hardware specific, but one step is often approximately 1 ppm."""
//|
STATIC mp_obj_t rtc_rtc_obj_get_calibration(mp_obj_t self_in) {
int calibration = common_hal_rtc_get_calibration();
diff --git a/shared-bindings/rtc/__init__.c b/shared-bindings/rtc/__init__.c
index 22eda9b66..b204d511c 100644
--- a/shared-bindings/rtc/__init__.c
+++ b/shared-bindings/rtc/__init__.c
@@ -31,23 +31,11 @@
#include "shared-bindings/rtc/RTC.h"
#include "shared-bindings/time/__init__.h"
-//| :mod:`rtc` --- Real Time Clock
-//| ========================================================
-//|
-//| .. module:: rtc
-//| :synopsis: Real Time Clock
-//| :platform: SAMD21, SAMD51, nRF52
+//| """Real Time Clock
//|
//| The `rtc` module provides support for a Real Time Clock. You can access and manage the
//| RTC using :class:`rtc.RTC`. It also backs the :func:`time.time` and :func:`time.localtime`
-//| functions using the onboard RTC if present.
-//|
-//| Classes
-//|
-//| .. toctree::
-//| :maxdepth: 3
-//|
-//| RTC
+//| functions using the onboard RTC if present."""
//|
void rtc_reset(void) {
@@ -62,22 +50,22 @@ mp_obj_t rtc_get_time_source_time(void) {
return struct_time_from_tm(&tm);
}
-//| .. function:: set_time_source(rtc)
-//|
-//| Sets the RTC time source used by :func:`time.localtime`.
-//| The default is :class:`rtc.RTC`, but it's useful to use this to override the
-//| time source for testing purposes. For example::
+//| def set_time_source(rtc: Any) -> Any:
+//| """Sets the RTC time source used by :func:`time.localtime`.
+//| The default is :class:`rtc.RTC`, but it's useful to use this to override the
+//| time source for testing purposes. For example::
//|
-//| import rtc
-//| import time
+//| import rtc
+//| import time
//|
-//| class RTC(object):
-//| @property
-//| def datetime(self):
-//| return time.struct_time((2018, 3, 17, 21, 1, 47, 0, 0, 0))
+//| class RTC(object):
+//| @property
+//| def datetime(self):
+//| return time.struct_time((2018, 3, 17, 21, 1, 47, 0, 0, 0))
//|
-//| r = RTC()
-//| rtc.set_time_source(r)
+//| r = RTC()
+//| rtc.set_time_source(r)"""
+//| ...
//|
STATIC mp_obj_t rtc_set_time_source(mp_obj_t time_source) {
MP_STATE_VM(rtc_time_source) = time_source;