Регистры RTC STM32L1
Регистры RTC STM32L1: время и дата в BCD, будильники A и B, таймер пробуждения, грубая и точная калибровка, подсекунды и сдвиг, метка времени, входы тампера и резервные регистры.
Содержание
- Регистры блока
- Конструктор
- RTC_TR
- RTC_DR
- RTC_CR
- RTC_ISR
- RTC_PRER
- RTC_WUTR
- RTC_CALIBR
- RTC_ALRMAR
- RTC_ALRMBR
- RTC_WPR
- RTC_SSR
- RTC_SHIFTR
- RTC_TSTR
- RTC_TSDR
- RTC_TSSSR
- RTC_CALR
- RTC_TAFCR
- RTC_ALRMASSR
- RTC_ALRMBSSR
- RTC_BKP0R
- RTC_BKP1R
- RTC_BKP2R
- RTC_BKP3R
- RTC_BKP4R
- RTC_BKP5R
- RTC_BKP6R
- RTC_BKP7R
- RTC_BKP8R
- RTC_BKP9R
- RTC_BKP10R
- RTC_BKP11R
- RTC_BKP12R
- RTC_BKP13R
- RTC_BKP14R
- RTC_BKP15R
- RTC_BKP16R
- RTC_BKP17R
- RTC_BKP18R
- RTC_BKP19R
- RTC_BKP20R
- RTC_BKP21R
- RTC_BKP22R
- RTC_BKP23R
- RTC_BKP24R
- RTC_BKP25R
- RTC_BKP26R
- RTC_BKP27R
- RTC_BKP28R
- RTC_BKP29R
- RTC_BKP30R
- RTC_BKP31R
RTC STM32L1 устроен как у STM32F4: перед настройкой запишите в RTC_WPR 0xCA и 0x53, для изменения времени войдите в режим инициализации битом INIT. Регистры сбрасываются только при включении питания или сбросом RTCRST; системный сброс их не меняет (RM0038, раздел 20.6).
Резервных регистров 5 у устройств value line, 20 у категорий 1 и 2 и 32 у категорий 3–6; событие тампера их стирает. Подсекунды (RTC_SSR) и точная калибровка (RTC_CALR) есть у всех устройств, кроме STM32L1xxxB.
| Экземпляр | Базовый адрес | Есть у |
|---|---|---|
| RTC | 0x4000 2800 | всех |
Регистры блока
| Регистр | Смещение | Назначение | После сброса |
|---|---|---|---|
| RTC_TR | 0x00 | Время | 0x0000 0000 (при включении питания; системный сброс даёт 0x0000 0000 при BYPSHAD = 0 и не меняет регистр при BYPSHAD = 1) |
| RTC_DR | 0x04 | Дата | 0x0000 2101 (при включении питания; системный сброс даёт 0x0000 2101 при BYPSHAD = 0 и не меняет регистр при BYPSHAD = 1) |
| RTC_CR | 0x08 | Управление: будильники, пробуждение, выходы | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_ISR | 0x0C | Инициализация и флаги | 0x0000 0007 (при включении питания; системный сброс обнуляет только INIT, INITF и RSF) |
| RTC_PRER | 0x10 | Делители частоты календаря | 0x007F 00FF (при включении питания; системный сброс регистр не меняет) |
| RTC_WUTR | 0x14 | Период таймера пробуждения | 0x0000 FFFF (при включении питания; системный сброс регистр не меняет) |
| RTC_CALIBR | 0x18 | Грубая цифровая калибровка | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_ALRMAR | 0x1C | Будильник A | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_ALRMBR | 0x20 | Будильник B | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_WPR | 0x24 | Защита записи | 0x0000 0000 |
| RTC_SSR | 0x28 | Подсекунды | 0x0000 0000 (при включении питания; системный сброс даёт 0x0000 0000 при BYPSHAD = 0 и не меняет регистр при BYPSHAD = 1) |
| RTC_SHIFTR | 0x2C | Сдвиг на доли секунды | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_TSTR | 0x30 | Время метки | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_TSDR | 0x34 | Дата метки | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_TSSSR | 0x38 | Подсекунды метки | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_CALR | 0x3C | Точная калибровка | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_TAFCR | 0x40 | Входы TAMPER, метка времени и выход RTC_ALARM | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_ALRMASSR | 0x44 | Подсекунды будильника A | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_ALRMBSSR | 0x48 | Подсекунды будильника B | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP0R | 0x50 | Резервный регистр данных 0 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP1R | 0x54 | Резервный регистр данных 1 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP2R | 0x58 | Резервный регистр данных 2 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP3R | 0x5C | Резервный регистр данных 3 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP4R | 0x60 | Резервный регистр данных 4 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP5R | 0x64 | Резервный регистр данных 5 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP6R | 0x68 | Резервный регистр данных 6 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP7R | 0x6C | Резервный регистр данных 7 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP8R | 0x70 | Резервный регистр данных 8 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP9R | 0x74 | Резервный регистр данных 9 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP10R | 0x78 | Резервный регистр данных 10 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP11R | 0x7C | Резервный регистр данных 11 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP12R | 0x80 | Резервный регистр данных 12 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP13R | 0x84 | Резервный регистр данных 13 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP14R | 0x88 | Резервный регистр данных 14 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP15R | 0x8C | Резервный регистр данных 15 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP16R | 0x90 | Резервный регистр данных 16 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP17R | 0x94 | Резервный регистр данных 17 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP18R | 0x98 | Резервный регистр данных 18 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP19R | 0x9C | Резервный регистр данных 19 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP20R | 0xA0 | Резервный регистр данных 20 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP21R | 0xA4 | Резервный регистр данных 21 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP22R | 0xA8 | Резервный регистр данных 22 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP23R | 0xAC | Резервный регистр данных 23 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP24R | 0xB0 | Резервный регистр данных 24 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP25R | 0xB4 | Резервный регистр данных 25 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP26R | 0xB8 | Резервный регистр данных 26 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP27R | 0xBC | Резервный регистр данных 27 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP28R | 0xC0 | Резервный регистр данных 28 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP29R | 0xC4 | Резервный регистр данных 29 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP30R | 0xC8 | Резервный регистр данных 30 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
| RTC_BKP31R | 0xCC | Резервный регистр данных 31 | 0x0000 0000 (при включении питания; системный сброс регистр не меняет) |
Конструктор значения
Выберите регистр и значения полей — конструктор покажет 32-битное значение и строку на C с макросами CMSIS. Поля, которые вы не меняете, берутся из значения после сброса.
Значение: 0x00000000
0000 0000 0000 0000 0000 0000 0000 0000
RTC->TR = 0x00000000;RTC_TR — время
Смещение 0x00, адрес 0x4000 2800, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс даёт 0x0000 0000 при BYPSHAD = 0 и не меняет регистр при BYPSHAD = 1). В коде: RTC->TR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | PM | HT | HU | ||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | MNT | MNU | — | ST | SU | ||||||||||
- PM (бит 22) — AM/PM: 0 — AM или 24-часовой формат, 1 — PM.
PM Значение 0 AM или 24-часовой формат 1 PM - HT (биты 21:20) — Десятки часов (BCD).
- HU (биты 19:16) — Единицы часов (BCD).
- MNT (биты 14:12) — Десятки минут (BCD).
- MNU (биты 11:8) — Единицы минут (BCD).
- ST (биты 6:4) — Десятки секунд (BCD).
- SU (биты 3:0) — Единицы секунд (BCD).
RTC_DR — дата
Смещение 0x04, адрес 0x4000 2804, 32 бит, после сброса 0x0000 2101 (при включении питания; системный сброс даёт 0x0000 2101 при BYPSHAD = 0 и не меняет регистр при BYPSHAD = 1). В коде: RTC->DR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | YT | YU | |||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| WDU | MT | MU | — | DT | DU | ||||||||||
- YT (биты 23:20) — Десятки лет (BCD).
- YU (биты 19:16) — Единицы лет (BCD).
- WDU (биты 15:13) — День недели: 1 — понедельник … 7 — воскресенье.
WDU Значение 000 Запрещено 001 Понедельник 010 Вторник 011 Среда 100 Четверг 101 Пятница 110 Суббота 111 Воскресенье - MT (бит 12) — Десятки месяца (BCD).
- MU (биты 11:8) — Единицы месяца (BCD).
- DT (биты 5:4) — Десятки числа (BCD).
- DU (биты 3:0) — Единицы числа (BCD).
RTC_CR — управление: будильники, пробуждение, выходы
Смещение 0x08, адрес 0x4000 2808, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->CR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | COE | OSEL | POL | COSEL | BKP | SUB1H | ADD1H | ||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| TSIE | WUTIE | ALRBIE | ALRAIE | TSE | WUTE | ALRBE | ALRAE | DCE | FMT | BYPSHAD | REFCKON | TSEDGE | WUCKSEL | ||
- COE (бит 23) — Выход калибровки RTC_CALIB.
- OSEL (биты 22:21) — Сигнал на выходе RTC_ALARM.
OSEL Значение 00 Выход выключен 01 Будильник A 10 Будильник B 11 Таймер пробуждения - POL (бит 20) — Полярность выхода RTC_ALARM.
POL Значение 0 Высокий уровень при срабатывании 1 Низкий уровень при срабатывании - COSEL (бит 19) — Частота выхода калибровки (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
COSEL Значение 0 512 Гц 1 1 Гц - BKP (бит 18) — Бит пользователя: отметка, что переход на летнее время уже сделан.
- SUB1H (бит 17) — Вычесть час — переход на зимнее время.
- ADD1H (бит 16) — Прибавить час — переход на летнее время.
- TSIE (бит 15) — Прерывание по метке времени.
- WUTIE (бит 14) — Прерывание таймера пробуждения.
- ALRBIE (бит 13) — Прерывание будильника B.
- ALRAIE (бит 12) — Прерывание будильника A.
- TSE (бит 11) — Метка времени по событию на входе TIMESTAMP.
- WUTE (бит 10) — Включение таймера пробуждения.
- ALRBE (бит 9) — Включение будильника B.
- ALRAE (бит 8) — Включение будильника A.
- DCE (бит 7) — Грубая цифровая калибровка по RTC_CALIBR.
- FMT (бит 6) — Формат часов.
FMT Значение 0 24 часа 1 AM/PM - BYPSHAD (бит 5) — Чтение календаря напрямую, минуя теневые регистры (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
- REFCKON (бит 4) — Подстройка по опорной частоте сети 50 или 60 Гц.
- TSEDGE (бит 3) — Фронт события метки времени.
TSEDGE Значение 0 Нарастающий фронт 1 Спадающий фронт - WUCKSEL (биты 2:0) — Тактирование таймера пробуждения.
WUCKSEL Значение 000 RTCCLK / 16 001 RTCCLK / 8 010 RTCCLK / 4 011 RTCCLK / 2 100 ck_spre (обычно 1 Гц) 101 ck_spre (обычно 1 Гц) 110 ck_spre, к WUT добавляется 2^16 111 ck_spre, к WUT добавляется 2^16
RTC_ISR — инициализация и флаги
Смещение 0x0C, адрес 0x4000 280C, 32 бит, после сброса 0x0000 0007 (при включении питания; системный сброс обнуляет только INIT, INITF и RSF). В коде: RTC->ISR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | RECALPF | ||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| TAMP3F | TAMP2F | TAMP1F | TSOVF | TSF | WUTF | ALRBF | ALRAF | INIT | INITF | RSF | INITS | SHPF | WUTWF | ALRBWF | ALRAWF |
- RECALPF (бит 16) — Новая калибровка CALR ещё не применена (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
- TAMP3F (бит 15) — Сработал вход TAMPER3; сбрасывается записью 0 (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
- TAMP2F (бит 14) — Сработал вход TAMPER2; сбрасывается записью 0 (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
- TAMP1F (бит 13) — Сработал вход TAMPER1; сбрасывается записью 0.
- TSOVF (бит 12) — Переполнение: новая метка при несброшенном TSF; сбрасывается записью 0.
- TSF (бит 11) — Метка времени сохранена; сбрасывается записью 0.
- WUTF (бит 10) — Сработал таймер пробуждения; сбрасывается записью 0.
- ALRBF (бит 9) — Сработал будильник B; сбрасывается записью 0.
- ALRAF (бит 8) — Сработал будильник A; сбрасывается записью 0.
- INIT (бит 7) — Режим инициализации: счёт остановлен.
- INITF (бит 6) — Можно записывать время, дату и делители.
- RSF (бит 5) — Регистры синхронизированы; сбрасывается программно перед чтением.
- INITS (бит 4) — Календарь уже настроен: год не равен 0.
- SHPF (бит 3) — Идёт сдвиг, заданный в SHIFTR (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
- WUTWF (бит 2) — Можно менять настройки таймера пробуждения.
- ALRBWF (бит 1) — Можно менять будильник B.
- ALRAWF (бит 0) — Можно менять будильник A.
RTC_PRER — делители частоты календаря
Смещение 0x10, адрес 0x4000 2810, 32 бит, после сброса 0x007F 00FF (при включении питания; системный сброс регистр не меняет). В коде: RTC->PRER.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | PREDIV_A | ||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | PREDIV_S | ||||||||||||||
- PREDIV_A (биты 22:16) — Асинхронный делитель: ck_apre = RTCCLK / (PREDIV_A + 1).
- PREDIV_S (биты 14:0) — Синхронный делитель: ck_spre = ck_apre / (PREDIV_S + 1) (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
- PREDIV_S (биты 12:0) — Синхронный делитель: ck_spre = ck_apre / (PREDIV_S + 1) (только у STM32L100xB, STM32L151xB, STM32L152xB).
RTC_WUTR — период таймера пробуждения
Смещение 0x14, адрес 0x4000 2814, 32 бит, после сброса 0x0000 FFFF (при включении питания; системный сброс регистр не меняет). В коде: RTC->WUTR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| WUT | |||||||||||||||
- WUT (биты 15:0) — Период таймера пробуждения: WUT + 1 тактов выбранной частоты.
RTC_CALIBR — грубая цифровая калибровка
Смещение 0x18, адрес 0x4000 2818, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->CALIBR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | DCS | — | DC | ||||||||||||
- DCS (бит 7) — Знак грубой калибровки.
DCS Значение 0 Положительная: календарь ускоряется 1 Отрицательная: календарь замедляется - DC (биты 4:0) — Грубая калибровка: шаг около +4 ppm или −2 ppm.
RTC_ALRMAR — будильник A
Смещение 0x1C, адрес 0x4000 281C, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->ALRMAR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| MSK4 | WDSEL | DT | DU | MSK3 | PM | HT | HU | ||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| MSK2 | MNT | MNU | MSK1 | ST | SU | ||||||||||
- MSK4 (бит 31) — Маска даты: 1 — число и день недели не сравниваются.
MSK4 Значение 0 Сравнивается 1 Не сравнивается - WDSEL (бит 30) — В поле DU — число месяца или день недели.
WDSEL Значение 0 Число месяца 1 День недели - DT (биты 29:28) — Десятки числа (BCD).
- DU (биты 27:24) — Единицы числа или день недели при WDSEL = 1 (BCD).
- MSK3 (бит 23) — Маска часов.
MSK3 Значение 0 Сравнивается 1 Не сравнивается - PM (бит 22) — AM/PM: 0 — AM или 24-часовой формат, 1 — PM.
PM Значение 0 AM или 24-часовой формат 1 PM - HT (биты 21:20) — Десятки часов (BCD).
- HU (биты 19:16) — Единицы часов (BCD).
- MSK2 (бит 15) — Маска минут.
MSK2 Значение 0 Сравнивается 1 Не сравнивается - MNT (биты 14:12) — Десятки минут (BCD).
- MNU (биты 11:8) — Единицы минут (BCD).
- MSK1 (бит 7) — Маска секунд.
MSK1 Значение 0 Сравнивается 1 Не сравнивается - ST (биты 6:4) — Десятки секунд (BCD).
- SU (биты 3:0) — Единицы секунд (BCD).
RTC_ALRMBR — будильник B
Смещение 0x20, адрес 0x4000 2820, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->ALRMBR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| MSK4 | WDSEL | DT | DU | MSK3 | PM | HT | HU | ||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| MSK2 | MNT | MNU | MSK1 | ST | SU | ||||||||||
- MSK4 (бит 31) — Маска даты: 1 — число и день недели не сравниваются.
MSK4 Значение 0 Сравнивается 1 Не сравнивается - WDSEL (бит 30) — В поле DU — число месяца или день недели.
WDSEL Значение 0 Число месяца 1 День недели - DT (биты 29:28) — Десятки числа (BCD).
- DU (биты 27:24) — Единицы числа или день недели при WDSEL = 1 (BCD).
- MSK3 (бит 23) — Маска часов.
MSK3 Значение 0 Сравнивается 1 Не сравнивается - PM (бит 22) — AM/PM: 0 — AM или 24-часовой формат, 1 — PM.
PM Значение 0 AM или 24-часовой формат 1 PM - HT (биты 21:20) — Десятки часов (BCD).
- HU (биты 19:16) — Единицы часов (BCD).
- MSK2 (бит 15) — Маска минут.
MSK2 Значение 0 Сравнивается 1 Не сравнивается - MNT (биты 14:12) — Десятки минут (BCD).
- MNU (биты 11:8) — Единицы минут (BCD).
- MSK1 (бит 7) — Маска секунд.
MSK1 Значение 0 Сравнивается 1 Не сравнивается - ST (биты 6:4) — Десятки секунд (BCD).
- SU (биты 3:0) — Единицы секунд (BCD).
RTC_WPR — защита записи
Смещение 0x24, адрес 0x4000 2824, 32 бит, после сброса 0x0000 0000. В коде: RTC->WPR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | KEY | ||||||||||||||
- KEY (биты 7:0) — Ключ защиты записи: 0xCA, затем 0x53.
RTC_SSR — подсекунды
Смещение 0x28, адрес 0x4000 2828, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс даёт 0x0000 0000 при BYPSHAD = 0 и не меняет регистр при BYPSHAD = 1); регистр есть только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->SSR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| SS | |||||||||||||||
- SS (биты 15:0) — Подсекунды: текущее значение синхронного делителя.
RTC_SHIFTR — сдвиг на доли секунды
Смещение 0x2C, адрес 0x4000 282C, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->SHIFTR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| ADD1S | — | ||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | SUBFS | ||||||||||||||
- ADD1S (бит 31) — Прибавить секунду.
- SUBFS (биты 14:0) — Отнять долю секунды: SUBFS / (PREDIV_S + 1).
RTC_TSTR — время метки
Смещение 0x30, адрес 0x4000 2830, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->TSTR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | PM | HT | HU | ||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | MNT | MNU | — | ST | SU | ||||||||||
- PM (бит 22) — AM/PM: 0 — AM или 24-часовой формат, 1 — PM.
PM Значение 0 AM или 24-часовой формат 1 PM - HT (биты 21:20) — Десятки часов (BCD).
- HU (биты 19:16) — Единицы часов (BCD).
- MNT (биты 14:12) — Десятки минут (BCD).
- MNU (биты 11:8) — Единицы минут (BCD).
- ST (биты 6:4) — Десятки секунд (BCD).
- SU (биты 3:0) — Единицы секунд (BCD).
RTC_TSDR — дата метки
Смещение 0x34, адрес 0x4000 2834, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->TSDR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| WDU | MT | MU | — | DT | DU | ||||||||||
- WDU (биты 15:13) — День недели: 1 — понедельник … 7 — воскресенье.
WDU Значение 000 Запрещено 001 Понедельник 010 Вторник 011 Среда 100 Четверг 101 Пятница 110 Суббота 111 Воскресенье - MT (бит 12) — Десятки месяца (BCD).
- MU (биты 11:8) — Единицы месяца (BCD).
- DT (биты 5:4) — Десятки числа (BCD).
- DU (биты 3:0) — Единицы числа (BCD).
RTC_TSSSR — подсекунды метки
Смещение 0x38, адрес 0x4000 2838, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->TSSSR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| SS | |||||||||||||||
- SS (биты 15:0) — Подсекунды метки времени.
RTC_CALR — точная калибровка
Смещение 0x3C, адрес 0x4000 283C, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->CALR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | |||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| CALP | CALW8 | CALW16 | — | CALM | |||||||||||
- CALP (бит 15) — Ускорение календаря на 488,5 ppm.
- CALW8 (бит 14) — Период калибровки 8 секунд.
- CALW16 (бит 13) — Период калибровки 16 секунд.
- CALM (биты 8:0) — Точная калибровка: импульсы, пропускаемые за 32 секунды, шаг 0,95 ppm.
RTC_TAFCR — входы TAMPER, метка времени и выход RTC_ALARM
Смещение 0x40, адрес 0x4000 2840, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->TAFCR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | ALARMOUTTYPE | — | |||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| TAMPPUDIS | TAMPPRCH | TAMPFLT | TAMPFREQ | TAMPTS | TAMP3TRG | TAMP3E | TAMP2TRG | TAMP2E | TAMPIE | TAMP1TRG | TAMP1E | ||||
- ALARMOUTTYPE (бит 18) — Тип выхода RTC_ALARM.
ALARMOUTTYPE Значение 0 Открытый сток 1 Двухтактный - TAMPPUDIS (бит 15) — Отключение подтяжки входов TAMPER перед выборкой (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
- TAMPPRCH (биты 14:13) — Длительность подтяжки перед выборкой (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
TAMPPRCH Значение 00 1 такт RTCCLK 01 2 такта RTCCLK 10 4 такта RTCCLK 11 8 тактов RTCCLK - TAMPFLT (биты 12:11) — Фильтр TAMPER: число одинаковых выборок (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
TAMPFLT Значение 00 По фронту, без подтяжки 01 2 выборки подряд 10 4 выборки подряд 11 8 выборок подряд - TAMPFREQ (биты 10:8) — Частота опроса входов TAMPER (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
TAMPFREQ Значение 000 RTCCLK / 32768 (1 Гц при 32 768 Гц) 001 RTCCLK / 16384 (2 Гц при 32 768 Гц) 010 RTCCLK / 8192 (4 Гц при 32 768 Гц) 011 RTCCLK / 4096 (8 Гц при 32 768 Гц) 100 RTCCLK / 2048 (16 Гц при 32 768 Гц) 101 RTCCLK / 1024 (32 Гц при 32 768 Гц) 110 RTCCLK / 512 (64 Гц при 32 768 Гц) 111 RTCCLK / 256 (128 Гц при 32 768 Гц) - TAMPTS (бит 7) — Метка времени по событию TAMPER (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
- TAMP3TRG (бит 6) — Активный уровень или фронт входа TAMPER3 (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
TAMP3TRG Значение 0 С фильтром — низкий уровень, без фильтра — нарастающий фронт 1 С фильтром — высокий уровень, без фильтра — спадающий фронт - TAMP3E (бит 5) — Включение входа TAMPER3 (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
- TAMP2TRG (бит 4) — Активный уровень или фронт входа TAMPER2 (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
TAMP2TRG Значение 0 С фильтром — низкий уровень, без фильтра — нарастающий фронт 1 С фильтром — высокий уровень, без фильтра — спадающий фронт - TAMP2E (бит 3) — Включение входа TAMPER2 (только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162).
- TAMPIE (бит 2) — Прерывание по событию TAMPER.
- TAMP1TRG (бит 1) — Активный уровень или фронт входа TAMPER1.
TAMP1TRG Значение 0 С фильтром — низкий уровень, без фильтра — нарастающий фронт 1 С фильтром — высокий уровень, без фильтра — спадающий фронт - TAMP1E (бит 0) — Включение входа TAMPER1.
RTC_ALRMASSR — подсекунды будильника A
Смещение 0x44, адрес 0x4000 2844, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->ALRMASSR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | MASKSS | — | |||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | SS | ||||||||||||||
- MASKSS (биты 27:24) — Сколько младших битов подсекунд сравнивать: 0 — не сравнивать.
- SS (биты 14:0) — Подсекунды для сравнения с будильником.
RTC_ALRMBSSR — подсекунды будильника B
Смещение 0x48, адрес 0x4000 2848, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L100xBA/xC, STM32L151xBA/xC/xCA/xD/xDX/xE, STM32L152xBA/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->ALRMBSSR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | MASKSS | — | |||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | SS | ||||||||||||||
- MASKSS (биты 27:24) — Сколько младших битов подсекунд сравнивать: 0 — не сравнивать.
- SS (биты 14:0) — Подсекунды для сравнения с будильником.
RTC_BKP0R — резервный регистр данных 0
Смещение 0x50, адрес 0x4000 2850, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->BKP0R.
Регистр данных: значение занимает его целиком.
RTC_BKP1R — резервный регистр данных 1
Смещение 0x54, адрес 0x4000 2854, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->BKP1R.
Регистр данных: значение занимает его целиком.
RTC_BKP2R — резервный регистр данных 2
Смещение 0x58, адрес 0x4000 2858, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->BKP2R.
Регистр данных: значение занимает его целиком.
RTC_BKP3R — резервный регистр данных 3
Смещение 0x5C, адрес 0x4000 285C, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->BKP3R.
Регистр данных: значение занимает его целиком.
RTC_BKP4R — резервный регистр данных 4
Смещение 0x60, адрес 0x4000 2860, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет). В коде: RTC->BKP4R.
Регистр данных: значение занимает его целиком.
RTC_BKP5R — резервный регистр данных 5
Смещение 0x64, адрес 0x4000 2864, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP5R.
Регистр данных: значение занимает его целиком.
RTC_BKP6R — резервный регистр данных 6
Смещение 0x68, адрес 0x4000 2868, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP6R.
Регистр данных: значение занимает его целиком.
RTC_BKP7R — резервный регистр данных 7
Смещение 0x6C, адрес 0x4000 286C, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP7R.
Регистр данных: значение занимает его целиком.
RTC_BKP8R — резервный регистр данных 8
Смещение 0x70, адрес 0x4000 2870, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP8R.
Регистр данных: значение занимает его целиком.
RTC_BKP9R — резервный регистр данных 9
Смещение 0x74, адрес 0x4000 2874, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP9R.
Регистр данных: значение занимает его целиком.
RTC_BKP10R — резервный регистр данных 10
Смещение 0x78, адрес 0x4000 2878, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP10R.
Регистр данных: значение занимает его целиком.
RTC_BKP11R — резервный регистр данных 11
Смещение 0x7C, адрес 0x4000 287C, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP11R.
Регистр данных: значение занимает его целиком.
RTC_BKP12R — резервный регистр данных 12
Смещение 0x80, адрес 0x4000 2880, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP12R.
Регистр данных: значение занимает его целиком.
RTC_BKP13R — резервный регистр данных 13
Смещение 0x84, адрес 0x4000 2884, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP13R.
Регистр данных: значение занимает его целиком.
RTC_BKP14R — резервный регистр данных 14
Смещение 0x88, адрес 0x4000 2888, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP14R.
Регистр данных: значение занимает его целиком.
RTC_BKP15R — резервный регистр данных 15
Смещение 0x8C, адрес 0x4000 288C, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP15R.
Регистр данных: значение занимает его целиком.
RTC_BKP16R — резервный регистр данных 16
Смещение 0x90, адрес 0x4000 2890, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP16R.
Регистр данных: значение занимает его целиком.
RTC_BKP17R — резервный регистр данных 17
Смещение 0x94, адрес 0x4000 2894, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP17R.
Регистр данных: значение занимает его целиком.
RTC_BKP18R — резервный регистр данных 18
Смещение 0x98, адрес 0x4000 2898, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP18R.
Регистр данных: значение занимает его целиком.
RTC_BKP19R — резервный регистр данных 19
Смещение 0x9C, адрес 0x4000 289C, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151, STM32L152xB/xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP19R.
Регистр данных: значение занимает его целиком.
RTC_BKP20R — резервный регистр данных 20
Смещение 0xA0, адрес 0x4000 28A0, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP20R.
Регистр данных: значение занимает его целиком.
RTC_BKP21R — резервный регистр данных 21
Смещение 0xA4, адрес 0x4000 28A4, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP21R.
Регистр данных: значение занимает его целиком.
RTC_BKP22R — резервный регистр данных 22
Смещение 0xA8, адрес 0x4000 28A8, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP22R.
Регистр данных: значение занимает его целиком.
RTC_BKP23R — резервный регистр данных 23
Смещение 0xAC, адрес 0x4000 28AC, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP23R.
Регистр данных: значение занимает его целиком.
RTC_BKP24R — резервный регистр данных 24
Смещение 0xB0, адрес 0x4000 28B0, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP24R.
Регистр данных: значение занимает его целиком.
RTC_BKP25R — резервный регистр данных 25
Смещение 0xB4, адрес 0x4000 28B4, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP25R.
Регистр данных: значение занимает его целиком.
RTC_BKP26R — резервный регистр данных 26
Смещение 0xB8, адрес 0x4000 28B8, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP26R.
Регистр данных: значение занимает его целиком.
RTC_BKP27R — резервный регистр данных 27
Смещение 0xBC, адрес 0x4000 28BC, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP27R.
Регистр данных: значение занимает его целиком.
RTC_BKP28R — резервный регистр данных 28
Смещение 0xC0, адрес 0x4000 28C0, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP28R.
Регистр данных: значение занимает его целиком.
RTC_BKP29R — резервный регистр данных 29
Смещение 0xC4, адрес 0x4000 28C4, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP29R.
Регистр данных: значение занимает его целиком.
RTC_BKP30R — резервный регистр данных 30
Смещение 0xC8, адрес 0x4000 28C8, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP30R.
Регистр данных: значение занимает его целиком.
RTC_BKP31R — резервный регистр данных 31
Смещение 0xCC, адрес 0x4000 28CC, 32 бит, после сброса 0x0000 0000 (при включении питания; системный сброс регистр не меняет); регистр есть только у STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162. В коде: RTC->BKP31R.
Регистр данных: значение занимает его целиком.
Частые вопросы
Почему время RTC STM32L1 не обновляется при чтении?
После выхода из Stop или Standby теневые регистры TR и DR обновляются не сразу: сбросьте флаг RSF в RTC_ISR и дождитесь его установки, прежде чем читать время.
Источники
- STMicroelectronics. RM0038: Reference manual (Rev 18) — раздел 20.6: описание регистров, назначение полей и значения после сброса
- STMicroelectronics. cmsis-device-l1 v2.3.4: заголовки CMSIS stm32l100xb.h, stm32l100xba.h, stm32l100xc.h, stm32l151xb.h, stm32l151xba.h, stm32l151xc.h, stm32l151xca.h, stm32l151xd.h, stm32l151xdx.h, stm32l151xe.h, stm32l152xb.h, stm32l152xba.h, stm32l152xc.h, stm32l152xca.h, stm32l152xd.h, stm32l152xdx.h, stm32l152xe.h, stm32l162xc.h, stm32l162xca.h, stm32l162xd.h, stm32l162xdx.h, stm32l162xe.h — структуры периферии, смещения, адреса экземпляров и макросы полей; лицензия Apache-2.0
Нашли ошибку в регистрах? ·
Другие регистры STM32L1
- Все регистры STM32L1Блоки периферии и заголовки CMSIS
- RCC — тактирование и сбросRCC_CR, RCC_ICSCR, RCC_CFGR, RCC_CIR, RCC_AHBRSTR, RCC_APB2RSTR
- GPIO — порты ввода-выводаGPIOx_MODER, GPIOx_OTYPER, GPIOx_OSPEEDR, GPIOx_PUPDR, GPIOx_IDR, GPIOx_ODR
- SYSCFG — системная конфигурацияSYSCFG_MEMRMP, SYSCFG_PMC, SYSCFG_EXTICR1, SYSCFG_EXTICR2, SYSCFG_EXTICR3, SYSCFG_EXTICR4
- EXTI — контроллер внешних прерываний и событийEXTI_IMR, EXTI_EMR, EXTI_RTSR, EXTI_FTSR, EXTI_SWIER, EXTI_PR
- USART — последовательные порты USART и UARTUSART_SR, USART_DR, USART_BRR, USART_CR1, USART_CR2, USART_CR3
- SPI — интерфейсы SPI и I2SSPI_CR1, SPI_CR2, SPI_SR, SPI_DR, SPI_CRCPR, SPI_RXCRCR
- I2C — интерфейс I2CI2C_CR1, I2C_CR2, I2C_OAR1, I2C_OAR2, I2C_DR, I2C_SR1
- TIM — таймеры общего назначения и базовыеTIMx_CR1, TIMx_CR2, TIMx_SMCR, TIMx_DIER, TIMx_SR, TIMx_EGR
- DMA — контроллеры прямого доступа к памятиDMA_ISR, DMA_IFCR, DMA_CCR, DMA_CNDTR, DMA_CPAR, DMA_CMAR
- АЦП — аналого-цифровой преобразовательADC_SR, ADC_CR1, ADC_CR2, ADC_SMPR1, ADC_SMPR2, ADC_SMPR3
- IWDG — независимый сторожевой таймерIWDG_KR, IWDG_PR, IWDG_RLR, IWDG_SR
- WWDG — оконный сторожевой таймерWWDG_CR, WWDG_CFR, WWDG_SR
- CRC — блок вычисления CRCCRC_DR, CRC_IDR, CRC_CR
- DBGMCU — поддержка отладкиDBGMCU_IDCODE, DBGMCU_CR, DBGMCU_APB1_FZ, DBGMCU_APB2_FZ
- PWR — управление питаниемPWR_CR, PWR_CSR
- FLASH — интерфейс флеш-памяти и EEPROMFLASH_ACR, FLASH_PECR, FLASH_PDKEYR, FLASH_PEKEYR, FLASH_PRGKEYR, FLASH_OPTKEYR
- ЦАП — цифро-аналоговый преобразовательDAC_CR, DAC_SWTRIGR, DAC_DHR12R1, DAC_DHR12L1, DAC_DHR8R1, DAC_DHR12R2