Объект rtc.

Значок объекта rtc.

Объект rtc. даёт доступ к счётчику реального времени (RTC) вашего устройства. RTC - независимый аппаратный счётчик со своим входом питания. Если установлена резервная батарея, RTC продолжает работать, даже когда остальное устройство обесточено. RTC отсчитывает прошедшие дни, минуты и секунды, а не фактические дату и время. Поэтому он называется «счётчиком», а не «часами». Большинство платформ включает набор удобных системных функций (syscall) для преобразования даты и времени, которые переводят данные RTC в текущие дату и время и обратно (см. year, month, date, weekday, daycount, hours, minutes и mincount).

Значение счётчика читают и задают два метода объекта RTC - rtc.getdata и rtc.setdata.

Допустим, в проекте есть переменные curr_year, curr_month, curr_date, curr_hours, curr_minutes и curr_seconds. Вот как задать и получить время:

dim curr_year, curr_month, curr_date, curr_hours, curr_minutes, curr_seconds as byte
dim x,y as word
...
...
'set RTC now (data is supposed to be prepared in curr_ variables)
rtc.set(daycount(curr_year,curr_month,curr_date),mincount(curr_hours,curr_minutes),curr_seconds)
...
...
'get RTC now- first get the daycount and mincout into x and y
rtc.getdata(x,y,curr_seconds)
'now convert daycount and mincount into date and time
curr_year=year(x)
curr_month=month(x)
curr_date=date(x)
curr_hours=hours(y)
curr_minutes=minutes(y)
 

Есть также свойство rtc.running (только чтение), которое показывает, работает ли RTC.

Внимание

Обратите внимание: после включения питания устройства, если резервное питание присутствовало не всё время, RTC может оказаться в неопределённом состоянии и не работать правильно, пока хотя бы раз не будет выполнен метод rtc.setdata. Неправильная работа может проявляться как отсутствие счёта или счёт с аномальной скоростью. Свойство rtc.running (только чтение) в такой ситуации нельзя использовать для надёжной проверки состояния RTC.

Если резервное питание присутствовало всё время, пока устройство было выключено, использовать rtc.setdata не нужно.

Исходный материал Tibbo обновлён 5 августа 2022Оригинал на docs.tibbo.com · Сообщить об ошибке