MicroPython:Библиотеки/pyb/Класс RTC

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Класс RTC – часы реального времени[1]

RTC-часы (от англ. «real time clock», т.е. «часы реального времени») – это автономные часы, отслеживающие дату и время.

Пример использования:

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

Конструкторы

Методы

• RTC.datetime([datetimetuple]) – задает или считывает дату и время RTC-часов. Если не задавать в этом методе никаких аргументов, он вернет 8-элементный кортеж с текущими датой и временем. Если задать в нем один аргумент (тоже 8-элементный кортеж), он задаст дату и время (а элемент subseconds будет сброшен до «255»). У этого 8-элементного кортежа следующий формат: (year, month, day, weekday, hours, minutes, seconds, subseconds) В элементе weekday – значения с «1» до «7» (понедельник-суббота). В элементе subseconds ведется отсчет с «255» до «0». • RTC.wakeup(timeout, callback=None) – настраивает пробуждающий RTC-таймер, который будет срабатывать каждые timeout миллисекунд. Эта срабатывание будет пробуждать PyBoard из обоих режимов сна: pyb.stop() и pyb.standby(). Если в timeout задать None, то пробуждающий таймер будет отключен. В аргументе callback задается функция обратного вызова, которая будет запускаться при каждом срабатывании таймера. У этой функции должен быть только один аргумент. • RTC.info() – считывает информацию о времени запуска и источнике сброса. o Значение ниже «0xffff» – это количество миллисекунд, в течение которых выполняется запуск RTC-часов. o Если в бите «0x10000» задана единица, то это значит, что причина сброса – это включение платы. o Если в бите «0x20000» задана единица, то это значит, что произошел внешний сброс платы. • RTC.calibration(cal) – задает или считывает RTC-калибровочное значение. Без аргументов этот метод вернет текущее калибровочное значение (целое число в диапазоне между «-511» и «512»). Если задать в нем аргумент cal, он задаст калибровочное значение. Механизм плавной RTC-калибровки (RTC Smooth Calibration) настраивает тактовую частоту RTC-часов, добавляя или убавляя заданное количество тактов из частоты 32768 Гц в течение 32-секундного периода (это соответствует 220 тактам). Положительные значения увеличивают частоту, а отрицательные – уменьшают. Одна единица – это 0.954 ppm. Таким образом, диапазон калибровочных значений варьируется от (-511 * 0.954) ~= -487.5 ppm до (512 * 0.954) ~= 488.5 ppm.


<syntaxhighlight lang="python" enclose="div">

См.также

Внешние ссылки