Цитата(jcxz @ Sep 28 2017, 17:13)

. . .
Забить на эти регистры, разрешить секундные прерывания и по ним инкрементировать счётчик в памяти.
++++ (!) ++++
Нормальные узлы RTC имеют 2 режима - обычный календарный (человеческий) и UTC счетчик.
Еси есть такая возможность - переведите узел в режим 32-разрядного счетчика UTC
и пользуйтесь удобным и стандартым методом работы в временем localtime(), gmtime(), strftime() etc.
Заодно "автоматически" решается гемор с переходом или "непереходом" зима-лето, если ОНО требуется и таймозонами.
---
Если аппаратного UTC нет -
Цитата(jcxz @ Sep 28 2017, 17:13)

. . .
Забить на эти регистры, разрешить секундные прерывания и по ним инкрементировать счётчик в памяти.

И будет Вам счастье ....
Проверка "прохода" через час:
Код
if( (UTC_Counter % 3600) == 0 ) . . . . .
Проверка "прохода" через 5 минут:
Код
if( (UTC_Counter % 300) == 0 ) . . . . .
Печать часы-минуты-секунды в массив ms
Код
strftime( ms, 20, "%H-%M-%S", &ttm_LOC );