Регистры RCC STM32F7
Регистры RCC STM32F74x/F75x: генераторы HSI 16 МГц, HSE, LSE и LSI, основная PLL и дополнительные PLLI2S и PLLSAI, делители шин, выходы MCO1 и MCO2, источники тактирования USART, I2C, LPTIM, SAI, SDMMC и 48 МГц, включение и сброс периферии, причина сброса.
Содержание
- Регистры блока
- Конструктор
- RCC_CR
- RCC_PLLCFGR
- RCC_CFGR
- RCC_CIR
- RCC_AHB1RSTR
- RCC_AHB2RSTR
- RCC_AHB3RSTR
- RCC_APB1RSTR
- RCC_APB2RSTR
- RCC_AHB1ENR
- RCC_AHB2ENR
- RCC_AHB3ENR
- RCC_APB1ENR
- RCC_APB2ENR
- RCC_AHB1LPENR
- RCC_AHB2LPENR
- RCC_AHB3LPENR
- RCC_APB1LPENR
- RCC_APB2LPENR
- RCC_BDCR
- RCC_CSR
- RCC_SSCGR
- RCC_PLLI2SCFGR
- RCC_PLLSAICFGR
- RCC_DCKCFGR1
- RCC_DCKCFGR2
После сброса STM32F7 работает от HSI 16 МГц. До 216 МГц частоту поднимает основная PLL: вход ГУН = (HSI или HSE) / PLLM, его надо держать в пределах 1…2 МГц; ГУН = вход × PLLN (100…432 МГц); SYSCLK = ГУН / PLLP (2, 4, 6 или 8), а выход Q = ГУН / PLLQ даёт 48 МГц для USB, SDMMC и RNG. Шина APB2 — не больше 108 МГц, APB1 — не больше 54 МГц (RM0385, раздел 5.3).
PLLI2S и PLLSAI с общим делителем PLLM тактируют I2S, SAI, LTDC и при необходимости 48 МГц (бит CK48MSEL). Регистр RCC_DCKCFGR2 выбирает источник тактирования каждого USART, I2C, LPTIM1, HDMI-CEC и SDMMC: от HSI или LSE порты работают и при смене системной частоты. Выше 180 МГц нужен режим Over-drive в PWR_CR1.
| Экземпляр | Базовый адрес | Есть у |
|---|---|---|
| RCC | 0x4002 3800 | всех |
Регистры блока
| Регистр | Смещение | Назначение | После сброса |
|---|---|---|---|
| RCC_CR | 0x00 | Генераторы HSI и HSE, PLL, PLLI2S и PLLSAI | 0x0000 XX83 (X — не определено) |
| RCC_PLLCFGR | 0x04 | Основная PLL: источник, M, N, P и Q | 0x2400 3010 |
| RCC_CFGR | 0x08 | Источник SYSCLK, делители шин, выходы MCO и делитель RTC | 0x0000 0000 |
| RCC_CIR | 0x0C | Прерывания готовности генераторов и PLL | 0x0000 0000 |
| RCC_AHB1RSTR | 0x10 | Сброс блоков на шине AHB1 | 0x0000 0000 |
| RCC_AHB2RSTR | 0x14 | Сброс блоков на шине AHB2 | 0x0000 0000 |
| RCC_AHB3RSTR | 0x18 | Сброс блоков на шине AHB3 | 0x0000 0000 |
| RCC_APB1RSTR | 0x20 | Сброс блоков на шине APB1 | 0x0000 0000 |
| RCC_APB2RSTR | 0x24 | Сброс блоков на шине APB2 | 0x0000 0000 |
| RCC_AHB1ENR | 0x30 | Тактирование блоков на шине AHB1 | 0x0010 0000 |
| RCC_AHB2ENR | 0x34 | Тактирование блоков на шине AHB2 | 0x0000 0000 |
| RCC_AHB3ENR | 0x38 | Тактирование блоков на шине AHB3 | 0x0000 0000 |
| RCC_APB1ENR | 0x40 | Тактирование блоков на шине APB1 | 0x0000 0000 |
| RCC_APB2ENR | 0x44 | Тактирование блоков на шине APB2 | 0x0000 0000 |
| RCC_AHB1LPENR | 0x50 | Тактирование в режиме Sleep блоков на шине AHB1 | 0x7EF7 B7FF |
| RCC_AHB2LPENR | 0x54 | Тактирование в режиме Sleep блоков на шине AHB2 | 0x0000 00F1 |
| RCC_AHB3LPENR | 0x58 | Тактирование в режиме Sleep блоков на шине AHB3 | 0x0000 0003 |
| RCC_APB1LPENR | 0x60 | Тактирование в режиме Sleep блоков на шине APB1 | 0xFFFF CBFF |
| RCC_APB2LPENR | 0x64 | Тактирование в режиме Sleep блоков на шине APB2 | 0x04F7 7F33 |
| RCC_BDCR | 0x70 | Резервный домен: LSE и тактирование RTC | 0x0000 0000 (сбрасывается сбросом домена резервного питания) |
| RCC_CSR | 0x74 | LSI и флаги причины сброса | 0x0E00 0000 (сбрасывается системным сбросом, флаги сброса — только при включении питания) |
| RCC_SSCGR | 0x80 | Модуляция частоты PLL (spread spectrum) | 0x0000 0000 |
| RCC_PLLI2SCFGR | 0x84 | PLLI2S: множитель N и делители P, Q, R | 0x2400 3000 |
| RCC_PLLSAICFGR | 0x88 | PLLSAI: множитель N и делители P, Q, R | 0x2400 3000 |
| RCC_DCKCFGR1 | 0x8C | Такты SAI, LTDC и предделитель таймеров | 0x0000 0000 |
| RCC_DCKCFGR2 | 0x90 | Источники тактирования USART, I2C, LPTIM, CEC, 48 МГц и SDMMC | 0x0000 0000 |
Конструктор значения
Выберите регистр и значения полей — конструктор покажет 32-битное значение и строку на C с макросами CMSIS. Поля, которые вы не меняете, берутся из значения после сброса.
Значение: 0x00000083
0000 0000 0000 0000 0000 0000 1000 0011
RCC->CR = 0x00000083;RCC_CR — генераторы HSI и HSE, PLL, PLLI2S и PLLSAI
Смещение 0x00, адрес 0x4002 3800, 32 бит, после сброса 0x0000 XX83 (X — не определено). В коде: RCC->CR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | PLLSAIRDY | PLLSAION | PLLI2SRDY | PLLI2SON | PLLRDY | PLLON | — | CSSON | HSEBYP | HSERDY | HSEON | ||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| HSICAL | HSITRIM | — | HSIRDY | HSION | |||||||||||
- PLLSAIRDY (бит 29) — PLLSAI захватила частоту (только чтение).
- PLLSAION (бит 28) — Включение PLLSAI; сбрасывается при входе в Stop и Standby.
- PLLI2SRDY (бит 27) — PLLI2S захватила частоту (только чтение).
- PLLI2SON (бит 26) — Включение PLLI2S; сбрасывается при входе в Stop и Standby.
- PLLRDY (бит 25) — PLL захватила частоту (только чтение).
- PLLON (бит 24) — Включение PLL; сбрасывается при входе в Stop и Standby.
- CSSON (бит 19) — Система защиты тактирования HSE: при отказе — переход на HSI, NMI и аварийный сигнал таймерам.
- HSEBYP (бит 18) — Обход генератора HSE: внешний тактовый сигнал вместо кварца.
- HSERDY (бит 17) — Генератор HSE готов (только чтение).
- HSEON (бит 16) — Включение генератора HSE.
- HSICAL (биты 15:8) — Заводская калибровка HSI (только чтение).
- HSITRIM (биты 7:3) — Подстройка частоты HSI поверх заводской калибровки.
- HSIRDY (бит 1) — Генератор HSI готов (только чтение).
- HSION (бит 0) — Включение генератора HSI 16 МГц.
RCC_PLLCFGR — основная PLL: источник, M, N, P и Q
Смещение 0x04, адрес 0x4002 3804, 32 бит, после сброса 0x2400 3010. В коде: RCC->PLLCFGR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | PLLQ | — | PLLSRC | — | PLLP | ||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | PLLN | PLLM | |||||||||||||
- PLLQ (биты 27:24) — Делитель Q основной PLL для 48 МГц (USB, SDMMC, RNG): 2…15.
- PLLSRC (бит 22) — Источник PLL, PLLI2S и PLLSAI: HSI или HSE.
PLLSRC Значение Макрос CMSIS 0 HSI RCC_PLLCFGR_PLLSRC_HSI 1 HSE RCC_PLLCFGR_PLLSRC_HSE - PLLP (биты 17:16) — Делитель P основной PLL для SYSCLK: 2, 4, 6 или 8.
PLLP Значение 00 /2 01 /4 10 /6 11 /8 - PLLN (биты 14:6) — Множитель N частоты ГУН: 50…432 (ГУН 100…432 МГц).
- PLLM (биты 5:0) — Делитель M на входе PLL, PLLI2S и PLLSAI: 2…63 (вход ГУН 1…2 МГц).
RCC_CFGR — источник SYSCLK, делители шин, выходы MCO и делитель RTC
Смещение 0x08, адрес 0x4002 3808, 32 бит, после сброса 0x0000 0000. В коде: RCC->CFGR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| MCO2 | MCO2PRE | MCO1PRE | I2SSRC | MCO1 | RTCPRE | ||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| PPRE2 | PPRE1 | — | HPRE | SWS | SW | ||||||||||
- MCO2 (биты 31:30) — Источник сигнала на выходе MCO2.
MCO2 Значение 00 SYSCLK 01 PLLI2S 10 HSE 11 PLL - MCO2PRE (биты 29:27) — Делитель сигнала на выходе MCO2.
MCO2PRE Значение 000 Без деления 100 Деление на 2 101 Деление на 3 110 Деление на 4 111 Деление на 5 - MCO1PRE (биты 26:24) — Делитель сигнала на выходе MCO1.
MCO1PRE Значение 000 Без деления 100 Деление на 2 101 Деление на 3 110 Деление на 4 111 Деление на 5 - I2SSRC (бит 23) — Такт I2S: PLLI2S или внешний сигнал на выводе I2S_CKIN.
- MCO1 (биты 22:21) — Источник сигнала на выходе MCO1.
MCO1 Значение 00 HSI 01 LSE 10 HSE 11 PLL - RTCPRE (биты 20:16) — Делитель HSE для RTC: 2…31 (нужно 1 МГц).
- PPRE2 (биты 15:13) — Делитель шины APB2: PCLK2 = HCLK / 1…16, не больше 108 МГц.
PPRE2 Значение Макрос CMSIS 000 Без деления RCC_CFGR_PPRE2_DIV1 100 Деление на 2 RCC_CFGR_PPRE2_DIV2 101 Деление на 4 RCC_CFGR_PPRE2_DIV4 110 Деление на 8 RCC_CFGR_PPRE2_DIV8 111 Деление на 16 RCC_CFGR_PPRE2_DIV16 - PPRE1 (биты 12:10) — Делитель шины APB1: PCLK1 = HCLK / 1…16, не больше 54 МГц.
PPRE1 Значение Макрос CMSIS 000 Без деления RCC_CFGR_PPRE1_DIV1 100 Деление на 2 RCC_CFGR_PPRE1_DIV2 101 Деление на 4 RCC_CFGR_PPRE1_DIV4 110 Деление на 8 RCC_CFGR_PPRE1_DIV8 111 Деление на 16 RCC_CFGR_PPRE1_DIV16 - HPRE (биты 7:4) — Делитель шины AHB: HCLK = SYSCLK / 1…512.
HPRE Значение Макрос CMSIS 0000 Без деления RCC_CFGR_HPRE_DIV1 1000 Деление на 2 RCC_CFGR_HPRE_DIV2 1001 Деление на 4 RCC_CFGR_HPRE_DIV4 1010 Деление на 8 RCC_CFGR_HPRE_DIV8 1011 Деление на 16 RCC_CFGR_HPRE_DIV16 1100 Деление на 64 RCC_CFGR_HPRE_DIV64 1101 Деление на 128 RCC_CFGR_HPRE_DIV128 1110 Деление на 256 RCC_CFGR_HPRE_DIV256 1111 Деление на 512 RCC_CFGR_HPRE_DIV512 - SWS (биты 3:2) — Текущий источник системной частоты (только чтение).
SWS Значение Макрос CMSIS 00 HSI RCC_CFGR_SWS_HSI 01 HSE RCC_CFGR_SWS_HSE 10 PLL RCC_CFGR_SWS_PLL - SW (биты 1:0) — Выбор источника системной частоты.
SW Значение Макрос CMSIS 00 HSI RCC_CFGR_SW_HSI 01 HSE RCC_CFGR_SW_HSE 10 PLL RCC_CFGR_SW_PLL
RCC_CIR — прерывания готовности генераторов и PLL
Смещение 0x0C, адрес 0x4002 380C, 32 бит, после сброса 0x0000 0000. В коде: RCC->CIR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | CSSC | PLLSAIRDYC | PLLI2SRDYC | PLLRDYC | HSERDYC | HSIRDYC | LSERDYC | LSIRDYC | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | PLLSAIRDYIE | PLLI2SRDYIE | PLLRDYIE | HSERDYIE | HSIRDYIE | LSERDYIE | LSIRDYIE | CSSF | PLLSAIRDYF | PLLI2SRDYF | PLLRDYF | HSERDYF | HSIRDYF | LSERDYF | LSIRDYF |
- CSSC (бит 23) — Сброс флага отказа HSE записью 1.
- PLLSAIRDYC (бит 22) — Сброс флага готовности PLLSAI записью 1.
- PLLI2SRDYC (бит 21) — Сброс флага готовности PLLI2S записью 1.
- PLLRDYC (бит 20) — Сброс флага готовности PLL записью 1.
- HSERDYC (бит 19) — Сброс флага готовности HSE записью 1.
- HSIRDYC (бит 18) — Сброс флага готовности HSI записью 1.
- LSERDYC (бит 17) — Сброс флага готовности LSE записью 1.
- LSIRDYC (бит 16) — Сброс флага готовности LSI записью 1.
- PLLSAIRDYIE (бит 14) — Прерывание по готовности PLLSAI.
- PLLI2SRDYIE (бит 13) — Прерывание по готовности PLLI2S.
- PLLRDYIE (бит 12) — Прерывание по готовности PLL.
- HSERDYIE (бит 11) — Прерывание по готовности HSE.
- HSIRDYIE (бит 10) — Прерывание по готовности HSI.
- LSERDYIE (бит 9) — Прерывание по готовности LSE.
- LSIRDYIE (бит 8) — Прерывание по готовности LSI.
- CSSF (бит 7) — Флаг отказа HSE (система защиты тактирования).
- PLLSAIRDYF (бит 6) — Флаг прерывания по готовности PLLSAI.
- PLLI2SRDYF (бит 5) — Флаг прерывания по готовности PLLI2S.
- PLLRDYF (бит 4) — Флаг прерывания по готовности PLL.
- HSERDYF (бит 3) — Флаг прерывания по готовности HSE.
- HSIRDYF (бит 2) — Флаг прерывания по готовности HSI.
- LSERDYF (бит 1) — Флаг прерывания по готовности LSE.
- LSIRDYF (бит 0) — Флаг прерывания по готовности LSI.
RCC_AHB1RSTR — сброс блоков на шине AHB1
Смещение 0x10, адрес 0x4002 3810, 32 бит, после сброса 0x0000 0000. В коде: RCC->AHB1RSTR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | OTGHRST | — | ETHMACRST | — | DMA2DRST | DMA2RST | DMA1RST | — | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | CRCRST | — | GPIOKRST | GPIOJRST | GPIOIRST | GPIOHRST | GPIOGRST | GPIOFRST | GPIOERST | GPIODRST | GPIOCRST | GPIOBRST | GPIOARST | ||
- OTGHRST (бит 29) — Сброс OTGH.
- ETHMACRST (бит 25) — Сброс Ethernet MAC.
- DMA2DRST (бит 23) — Сброс графического ускорителя DMA2D.
- DMA2RST (бит 22) — Сброс DMA2.
- DMA1RST (бит 21) — Сброс DMA1.
- CRCRST (бит 12) — Сброс блока CRC.
- GPIOKRST (бит 10) — Сброс порта K.
- GPIOJRST (бит 9) — Сброс порта J.
- GPIOIRST (бит 8) — Сброс порта I.
- GPIOHRST (бит 7) — Сброс порта H.
- GPIOGRST (бит 6) — Сброс порта G.
- GPIOFRST (бит 5) — Сброс порта F.
- GPIOERST (бит 4) — Сброс порта E.
- GPIODRST (бит 3) — Сброс порта D.
- GPIOCRST (бит 2) — Сброс порта C.
- GPIOBRST (бит 1) — Сброс порта B.
- GPIOARST (бит 0) — Сброс порта A.
RCC_AHB2RSTR — сброс блоков на шине AHB2
Смещение 0x14, адрес 0x4002 3814, 32 бит, после сброса 0x0000 0000. В коде: RCC->AHB2RSTR.
| 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 |
| — | OTGFSRST | RNGRST | HASHRST | CRYPRST | — | DCMIRST | |||||||||
- OTGFSRST (бит 7) — Сброс USB OTG FS.
- RNGRST (бит 6) — Сброс генератора случайных чисел RNG.
- HASHRST (бит 5) — Сброс блока хеширования HASH (только у STM32F750, STM32F756).
- CRYPRST (бит 4) — Сброс блока шифрования CRYP (только у STM32F750, STM32F756).
- DCMIRST (бит 0) — Сброс интерфейса камеры DCMI.
RCC_AHB3RSTR — сброс блоков на шине AHB3
Смещение 0x18, адрес 0x4002 3818, 32 бит, после сброса 0x0000 0000. В коде: RCC->AHB3RSTR.
| 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 |
| — | QSPIRST | FMCRST | |||||||||||||
- QSPIRST (бит 1) — Сброс интерфейса Quad-SPI.
- FMCRST (бит 0) — Сброс контроллера внешней памяти FMC.
RCC_APB1RSTR — сброс блоков на шине APB1
Смещение 0x20, адрес 0x4002 3820, 32 бит, после сброса 0x0000 0000. В коде: RCC->APB1RSTR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| UART8RST | UART7RST | DACRST | PWRRST | CECRST | CAN2RST | CAN1RST | I2C4RST | I2C3RST | I2C2RST | I2C1RST | UART5RST | UART4RST | USART3RST | USART2RST | SPDIFRXRST |
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| SPI3RST | SPI2RST | — | WWDGRST | — | LPTIM1RST | TIM14RST | TIM13RST | TIM12RST | TIM7RST | TIM6RST | TIM5RST | TIM4RST | TIM3RST | TIM2RST | |
- UART8RST (бит 31) — Сброс UART8.
- UART7RST (бит 30) — Сброс UART7.
- DACRST (бит 29) — Сброс ЦАП.
- PWRRST (бит 28) — Сброс интерфейса управления питанием PWR.
- CECRST (бит 27) — Сброс HDMI-CEC.
- CAN2RST (бит 26) — Сброс bxCAN CAN2.
- CAN1RST (бит 25) — Сброс bxCAN CAN1.
- I2C4RST (бит 24) — Сброс I2C4.
- I2C3RST (бит 23) — Сброс I2C3.
- I2C2RST (бит 22) — Сброс I2C2.
- I2C1RST (бит 21) — Сброс I2C1.
- UART5RST (бит 20) — Сброс UART5.
- UART4RST (бит 19) — Сброс UART4.
- USART3RST (бит 18) — Сброс USART3.
- USART2RST (бит 17) — Сброс USART2.
- SPDIFRXRST (бит 16) — Сброс приёмника SPDIF.
- SPI3RST (бит 15) — Сброс SPI3.
- SPI2RST (бит 14) — Сброс SPI2.
- WWDGRST (бит 11) — Сброс оконного сторожевого таймера WWDG.
- LPTIM1RST (бит 9) — Сброс таймера LPTIM1.
- TIM14RST (бит 8) — Сброс таймера TIM14.
- TIM13RST (бит 7) — Сброс таймера TIM13.
- TIM12RST (бит 6) — Сброс таймера TIM12.
- TIM7RST (бит 5) — Сброс таймера TIM7.
- TIM6RST (бит 4) — Сброс таймера TIM6.
- TIM5RST (бит 3) — Сброс таймера TIM5.
- TIM4RST (бит 2) — Сброс таймера TIM4.
- TIM3RST (бит 1) — Сброс таймера TIM3.
- TIM2RST (бит 0) — Сброс таймера TIM2.
RCC_APB2RSTR — сброс блоков на шине APB2
Смещение 0x24, адрес 0x4002 3824, 32 бит, после сброса 0x0000 0000. В коде: RCC->APB2RSTR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | LTDCRST | — | SAI2RST | SAI1RST | SPI6RST | SPI5RST | — | TIM11RST | TIM10RST | TIM9RST | |||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | SYSCFGRST | SPI4RST | SPI1RST | SDMMC1RST | — | ADCRST | — | USART6RST | USART1RST | — | TIM8RST | TIM1RST | |||
- LTDCRST (бит 26) — Сброс контроллера дисплея LTDC (только у STM32F746, STM32F750, STM32F756).
- SAI2RST (бит 23) — Сброс аудиоинтерфейса SAI2.
- SAI1RST (бит 22) — Сброс аудиоинтерфейса SAI1.
- SPI6RST (бит 21) — Сброс SPI6.
- SPI5RST (бит 20) — Сброс SPI5.
- TIM11RST (бит 18) — Сброс таймера TIM11.
- TIM10RST (бит 17) — Сброс таймера TIM10.
- TIM9RST (бит 16) — Сброс таймера TIM9.
- SYSCFGRST (бит 14) — Сброс SYSCFG.
- SPI4RST (бит 13) — Сброс SPI4.
- SPI1RST (бит 12) — Сброс SPI1.
- SDMMC1RST (бит 11) — Сброс интерфейса карт SDMMC1.
- ADCRST (бит 8) — Сброс АЦП.
- USART6RST (бит 5) — Сброс USART6.
- USART1RST (бит 4) — Сброс USART1.
- TIM8RST (бит 1) — Сброс таймера TIM8.
- TIM1RST (бит 0) — Сброс таймера TIM1.
RCC_AHB1ENR — тактирование блоков на шине AHB1
Смещение 0x30, адрес 0x4002 3830, 32 бит, после сброса 0x0010 0000. В коде: RCC->AHB1ENR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | OTGHSULPIEN | OTGHSEN | ETHMACPTPEN | ETHMACRXEN | ETHMACTXEN | ETHMACEN | — | DMA2DEN | DMA2EN | DMA1EN | DTCMRAMEN | — | BKPSRAMEN | — | |
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | CRCEN | — | GPIOKEN | GPIOJEN | GPIOIEN | GPIOHEN | GPIOGEN | GPIOFEN | GPIOEEN | GPIODEN | GPIOCEN | GPIOBEN | GPIOAEN | ||
- OTGHSULPIEN (бит 30) — Тактирование интерфейса ULPI USB OTG HS.
- OTGHSEN (бит 29) — Тактирование USB OTG HS.
- ETHMACPTPEN (бит 28) — Тактирование PTP Ethernet.
- ETHMACRXEN (бит 27) — Тактирование приёмника Ethernet.
- ETHMACTXEN (бит 26) — Тактирование передатчика Ethernet.
- ETHMACEN (бит 25) — Тактирование Ethernet MAC.
- DMA2DEN (бит 23) — Тактирование графического ускорителя DMA2D.
- DMA2EN (бит 22) — Тактирование DMA2.
- DMA1EN (бит 21) — Тактирование DMA1.
- DTCMRAMEN (бит 20) — Автономный режим DTCMR: такт сохраняется, когда домен D3 работает без ядра.
- BKPSRAMEN (бит 18) — Автономный режим BKPSR: такт сохраняется, когда домен D3 работает без ядра.
- CRCEN (бит 12) — Тактирование блока CRC.
- GPIOKEN (бит 10) — Тактирование порта K.
- GPIOJEN (бит 9) — Тактирование порта J.
- GPIOIEN (бит 8) — Тактирование порта I.
- GPIOHEN (бит 7) — Тактирование порта H.
- GPIOGEN (бит 6) — Тактирование порта G.
- GPIOFEN (бит 5) — Тактирование порта F.
- GPIOEEN (бит 4) — Тактирование порта E.
- GPIODEN (бит 3) — Тактирование порта D.
- GPIOCEN (бит 2) — Тактирование порта C.
- GPIOBEN (бит 1) — Тактирование порта B.
- GPIOAEN (бит 0) — Тактирование порта A.
RCC_AHB2ENR — тактирование блоков на шине AHB2
Смещение 0x34, адрес 0x4002 3834, 32 бит, после сброса 0x0000 0000. В коде: RCC->AHB2ENR.
| 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 |
| — | OTGFSEN | RNGEN | HASHEN | CRYPEN | — | DCMIEN | |||||||||
- OTGFSEN (бит 7) — Тактирование USB OTG FS.
- RNGEN (бит 6) — Тактирование генератора случайных чисел RNG.
- HASHEN (бит 5) — Тактирование блока хеширования HASH (только у STM32F750, STM32F756).
- CRYPEN (бит 4) — Тактирование блока шифрования CRYP (только у STM32F750, STM32F756).
- DCMIEN (бит 0) — Тактирование интерфейса камеры DCMI.
RCC_AHB3ENR — тактирование блоков на шине AHB3
Смещение 0x38, адрес 0x4002 3838, 32 бит, после сброса 0x0000 0000. В коде: RCC->AHB3ENR.
| 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 |
| — | QSPIEN | FMCEN | |||||||||||||
- QSPIEN (бит 1) — Тактирование интерфейса Quad-SPI.
- FMCEN (бит 0) — Тактирование контроллера внешней памяти FMC.
RCC_APB1ENR — тактирование блоков на шине APB1
Смещение 0x40, адрес 0x4002 3840, 32 бит, после сброса 0x0000 0000. В коде: RCC->APB1ENR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| UART8EN | UART7EN | DACEN | PWREN | CECEN | CAN2EN | CAN1EN | I2C4EN | I2C3EN | I2C2EN | I2C1EN | UART5EN | UART4EN | USART3EN | USART2EN | SPDIFRXEN |
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| SPI3EN | SPI2EN | — | WWDGEN | — | LPTIM1EN | TIM14EN | TIM13EN | TIM12EN | TIM7EN | TIM6EN | TIM5EN | TIM4EN | TIM3EN | TIM2EN | |
- UART8EN (бит 31) — Тактирование UART8.
- UART7EN (бит 30) — Тактирование UART7.
- DACEN (бит 29) — Тактирование ЦАП.
- PWREN (бит 28) — Тактирование интерфейса управления питанием PWR.
- CECEN (бит 27) — Тактирование HDMI-CEC.
- CAN2EN (бит 26) — Тактирование bxCAN CAN2.
- CAN1EN (бит 25) — Тактирование bxCAN CAN1.
- I2C4EN (бит 24) — Тактирование I2C4.
- I2C3EN (бит 23) — Тактирование I2C3.
- I2C2EN (бит 22) — Тактирование I2C2.
- I2C1EN (бит 21) — Тактирование I2C1.
- UART5EN (бит 20) — Тактирование UART5.
- UART4EN (бит 19) — Тактирование UART4.
- USART3EN (бит 18) — Тактирование USART3.
- USART2EN (бит 17) — Тактирование USART2.
- SPDIFRXEN (бит 16) — Тактирование приёмника SPDIF.
- SPI3EN (бит 15) — Тактирование SPI3.
- SPI2EN (бит 14) — Тактирование SPI2.
- WWDGEN (бит 11) — Тактирование оконного сторожевого таймера WWDG.
- LPTIM1EN (бит 9) — Тактирование таймера LPTIM1.
- TIM14EN (бит 8) — Тактирование таймера TIM14.
- TIM13EN (бит 7) — Тактирование таймера TIM13.
- TIM12EN (бит 6) — Тактирование таймера TIM12.
- TIM7EN (бит 5) — Тактирование таймера TIM7.
- TIM6EN (бит 4) — Тактирование таймера TIM6.
- TIM5EN (бит 3) — Тактирование таймера TIM5.
- TIM4EN (бит 2) — Тактирование таймера TIM4.
- TIM3EN (бит 1) — Тактирование таймера TIM3.
- TIM2EN (бит 0) — Тактирование таймера TIM2.
RCC_APB2ENR — тактирование блоков на шине APB2
Смещение 0x44, адрес 0x4002 3844, 32 бит, после сброса 0x0000 0000. В коде: RCC->APB2ENR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | LTDCEN | — | SAI2EN | SAI1EN | SPI6EN | SPI5EN | — | TIM11EN | TIM10EN | TIM9EN | |||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | SYSCFGEN | SPI4EN | SPI1EN | SDMMC1EN | ADC3EN | ADC2EN | ADC1EN | — | USART6EN | USART1EN | — | TIM8EN | TIM1EN | ||
- LTDCEN (бит 26) — Тактирование контроллера дисплея LTDC (только у STM32F746, STM32F750, STM32F756).
- SAI2EN (бит 23) — Тактирование аудиоинтерфейса SAI2.
- SAI1EN (бит 22) — Тактирование аудиоинтерфейса SAI1.
- SPI6EN (бит 21) — Тактирование SPI6.
- SPI5EN (бит 20) — Тактирование SPI5.
- TIM11EN (бит 18) — Тактирование таймера TIM11.
- TIM10EN (бит 17) — Тактирование таймера TIM10.
- TIM9EN (бит 16) — Тактирование таймера TIM9.
- SYSCFGEN (бит 14) — Тактирование SYSCFG.
- SPI4EN (бит 13) — Тактирование SPI4.
- SPI1EN (бит 12) — Тактирование SPI1.
- SDMMC1EN (бит 11) — Тактирование интерфейса карт SDMMC1.
- ADC3EN (бит 10) — Тактирование АЦП ADC3.
- ADC2EN (бит 9) — Тактирование АЦП ADC2.
- ADC1EN (бит 8) — Тактирование АЦП ADC1.
- USART6EN (бит 5) — Тактирование USART6.
- USART1EN (бит 4) — Тактирование USART1.
- TIM8EN (бит 1) — Тактирование таймера TIM8.
- TIM1EN (бит 0) — Тактирование таймера TIM1.
RCC_AHB1LPENR — тактирование в режиме Sleep блоков на шине AHB1
Смещение 0x50, адрес 0x4002 3850, 32 бит, после сброса 0x7EF7 B7FF. В коде: RCC->AHB1LPENR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | OTGHSULPILPEN | OTGHSLPEN | ETHMACPTPLPEN | ETHMACRXLPEN | ETHMACTXLPEN | ETHMACLPEN | — | DMA2DLPEN | DMA2LPEN | DMA1LPEN | DTCMLPEN | — | BKPSRAMLPEN | SRAM2LPEN | SRAM1LPEN |
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| FLITFLPEN | — | AXILPEN | CRCLPEN | — | GPIOKLPEN | GPIOJLPEN | GPIOILPEN | GPIOHLPEN | GPIOGLPEN | GPIOFLPEN | GPIOELPEN | GPIODLPEN | GPIOCLPEN | GPIOBLPEN | GPIOALPEN |
- OTGHSULPILPEN (бит 30) — Тактирование интерфейса ULPI USB OTG HS в режиме Sleep.
- OTGHSLPEN (бит 29) — Тактирование USB OTG HS в режиме Sleep.
- ETHMACPTPLPEN (бит 28) — Тактирование PTP Ethernet в режиме Sleep.
- ETHMACRXLPEN (бит 27) — Тактирование приёмника Ethernet в режиме Sleep.
- ETHMACTXLPEN (бит 26) — Тактирование передатчика Ethernet в режиме Sleep.
- ETHMACLPEN (бит 25) — Тактирование Ethernet MAC в режиме Sleep.
- DMA2DLPEN (бит 23) — Тактирование графического ускорителя DMA2D в режиме Sleep.
- DMA2LPEN (бит 22) — Тактирование DMA2 в режиме Sleep.
- DMA1LPEN (бит 21) — Тактирование DMA1 в режиме Sleep.
- DTCMLPEN (бит 20) — Тактирование памяти DTCM в режиме Sleep.
- BKPSRAMLPEN (бит 18) — Тактирование резервной SRAM в режиме Sleep.
- SRAM2LPEN (бит 17) — Тактирование SRAM2 в режиме Sleep.
- SRAM1LPEN (бит 16) — Тактирование SRAM1 в режиме Sleep.
- FLITFLPEN (бит 15) — Тактирование интерфейса флеш-памяти в режиме Sleep.
- AXILPEN (бит 13) — Тактирование матрицы шин AXI в режиме Sleep.
- CRCLPEN (бит 12) — Тактирование блока CRC в режиме Sleep.
- GPIOKLPEN (бит 10) — Тактирование порта K в режиме Sleep.
- GPIOJLPEN (бит 9) — Тактирование порта J в режиме Sleep.
- GPIOILPEN (бит 8) — Тактирование порта I в режиме Sleep.
- GPIOHLPEN (бит 7) — Тактирование порта H в режиме Sleep.
- GPIOGLPEN (бит 6) — Тактирование порта G в режиме Sleep.
- GPIOFLPEN (бит 5) — Тактирование порта F в режиме Sleep.
- GPIOELPEN (бит 4) — Тактирование порта E в режиме Sleep.
- GPIODLPEN (бит 3) — Тактирование порта D в режиме Sleep.
- GPIOCLPEN (бит 2) — Тактирование порта C в режиме Sleep.
- GPIOBLPEN (бит 1) — Тактирование порта B в режиме Sleep.
- GPIOALPEN (бит 0) — Тактирование порта A в режиме Sleep.
RCC_AHB2LPENR — тактирование в режиме Sleep блоков на шине AHB2
Смещение 0x54, адрес 0x4002 3854, 32 бит, после сброса 0x0000 00F1. В коде: RCC->AHB2LPENR.
| 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 |
| — | OTGFSLPEN | RNGLPEN | HASHLPEN | CRYPLPEN | — | DCMILPEN | |||||||||
- OTGFSLPEN (бит 7) — Тактирование USB OTG FS в режиме Sleep.
- RNGLPEN (бит 6) — Тактирование генератора случайных чисел RNG в режиме Sleep.
- HASHLPEN (бит 5) — Тактирование блока хеширования HASH в режиме Sleep (только у STM32F750, STM32F756).
- CRYPLPEN (бит 4) — Тактирование блока шифрования CRYP в режиме Sleep (только у STM32F750, STM32F756).
- DCMILPEN (бит 0) — Тактирование интерфейса камеры DCMI в режиме Sleep.
RCC_AHB3LPENR — тактирование в режиме Sleep блоков на шине AHB3
Смещение 0x58, адрес 0x4002 3858, 32 бит, после сброса 0x0000 0003. В коде: RCC->AHB3LPENR.
| 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 |
| — | QSPILPEN | FMCLPEN | |||||||||||||
- QSPILPEN (бит 1) — Тактирование интерфейса Quad-SPI в режиме Sleep.
- FMCLPEN (бит 0) — Тактирование контроллера внешней памяти FMC в режиме Sleep.
RCC_APB1LPENR — тактирование в режиме Sleep блоков на шине APB1
Смещение 0x60, адрес 0x4002 3860, 32 бит, после сброса 0xFFFF CBFF. В коде: RCC->APB1LPENR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| UART8LPEN | UART7LPEN | DACLPEN | PWRLPEN | CECLPEN | CAN2LPEN | CAN1LPEN | I2C4LPEN | I2C3LPEN | I2C2LPEN | I2C1LPEN | UART5LPEN | UART4LPEN | USART3LPEN | USART2LPEN | SPDIFRXLPEN |
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| SPI3LPEN | SPI2LPEN | — | WWDGLPEN | — | LPTIM1LPEN | TIM14LPEN | TIM13LPEN | TIM12LPEN | TIM7LPEN | TIM6LPEN | TIM5LPEN | TIM4LPEN | TIM3LPEN | TIM2LPEN | |
- UART8LPEN (бит 31) — Тактирование UART8 в режиме Sleep.
- UART7LPEN (бит 30) — Тактирование UART7 в режиме Sleep.
- DACLPEN (бит 29) — Тактирование ЦАП в режиме Sleep.
- PWRLPEN (бит 28) — Тактирование интерфейса управления питанием PWR в режиме Sleep.
- CECLPEN (бит 27) — Тактирование HDMI-CEC в режиме Sleep.
- CAN2LPEN (бит 26) — Тактирование bxCAN CAN2 в режиме Sleep.
- CAN1LPEN (бит 25) — Тактирование bxCAN CAN1 в режиме Sleep.
- I2C4LPEN (бит 24) — Тактирование I2C4 в режиме Sleep.
- I2C3LPEN (бит 23) — Тактирование I2C3 в режиме Sleep.
- I2C2LPEN (бит 22) — Тактирование I2C2 в режиме Sleep.
- I2C1LPEN (бит 21) — Тактирование I2C1 в режиме Sleep.
- UART5LPEN (бит 20) — Тактирование UART5 в режиме Sleep.
- UART4LPEN (бит 19) — Тактирование UART4 в режиме Sleep.
- USART3LPEN (бит 18) — Тактирование USART3 в режиме Sleep.
- USART2LPEN (бит 17) — Тактирование USART2 в режиме Sleep.
- SPDIFRXLPEN (бит 16) — Тактирование приёмника SPDIF в режиме Sleep.
- SPI3LPEN (бит 15) — Тактирование SPI3 в режиме Sleep.
- SPI2LPEN (бит 14) — Тактирование SPI2 в режиме Sleep.
- WWDGLPEN (бит 11) — Тактирование оконного сторожевого таймера WWDG в режиме Sleep.
- LPTIM1LPEN (бит 9) — Тактирование таймера LPTIM1 в режиме Sleep.
- TIM14LPEN (бит 8) — Тактирование таймера TIM14 в режиме Sleep.
- TIM13LPEN (бит 7) — Тактирование таймера TIM13 в режиме Sleep.
- TIM12LPEN (бит 6) — Тактирование таймера TIM12 в режиме Sleep.
- TIM7LPEN (бит 5) — Тактирование таймера TIM7 в режиме Sleep.
- TIM6LPEN (бит 4) — Тактирование таймера TIM6 в режиме Sleep.
- TIM5LPEN (бит 3) — Тактирование таймера TIM5 в режиме Sleep.
- TIM4LPEN (бит 2) — Тактирование таймера TIM4 в режиме Sleep.
- TIM3LPEN (бит 1) — Тактирование таймера TIM3 в режиме Sleep.
- TIM2LPEN (бит 0) — Тактирование таймера TIM2 в режиме Sleep.
RCC_APB2LPENR — тактирование в режиме Sleep блоков на шине APB2
Смещение 0x64, адрес 0x4002 3864, 32 бит, после сброса 0x04F7 7F33. В коде: RCC->APB2LPENR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | LTDCLPEN | — | SAI2LPEN | SAI1LPEN | SPI6LPEN | SPI5LPEN | — | TIM11LPEN | TIM10LPEN | TIM9LPEN | |||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | SYSCFGLPEN | SPI4LPEN | SPI1LPEN | SDMMC1LPEN | ADC3LPEN | ADC2LPEN | ADC1LPEN | — | USART6LPEN | USART1LPEN | — | TIM8LPEN | TIM1LPEN | ||
- LTDCLPEN (бит 26) — Тактирование контроллера дисплея LTDC в режиме Sleep (только у STM32F746, STM32F750, STM32F756).
- SAI2LPEN (бит 23) — Тактирование аудиоинтерфейса SAI2 в режиме Sleep.
- SAI1LPEN (бит 22) — Тактирование аудиоинтерфейса SAI1 в режиме Sleep.
- SPI6LPEN (бит 21) — Тактирование SPI6 в режиме Sleep.
- SPI5LPEN (бит 20) — Тактирование SPI5 в режиме Sleep.
- TIM11LPEN (бит 18) — Тактирование таймера TIM11 в режиме Sleep.
- TIM10LPEN (бит 17) — Тактирование таймера TIM10 в режиме Sleep.
- TIM9LPEN (бит 16) — Тактирование таймера TIM9 в режиме Sleep.
- SYSCFGLPEN (бит 14) — Тактирование SYSCFG в режиме Sleep.
- SPI4LPEN (бит 13) — Тактирование SPI4 в режиме Sleep.
- SPI1LPEN (бит 12) — Тактирование SPI1 в режиме Sleep.
- SDMMC1LPEN (бит 11) — Тактирование интерфейса карт SDMMC1 в режиме Sleep.
- ADC3LPEN (бит 10) — Тактирование АЦП ADC3 в режиме Sleep.
- ADC2LPEN (бит 9) — Тактирование АЦП ADC2 в режиме Sleep.
- ADC1LPEN (бит 8) — Тактирование АЦП ADC1 в режиме Sleep.
- USART6LPEN (бит 5) — Тактирование USART6 в режиме Sleep.
- USART1LPEN (бит 4) — Тактирование USART1 в режиме Sleep.
- TIM8LPEN (бит 1) — Тактирование таймера TIM8 в режиме Sleep.
- TIM1LPEN (бит 0) — Тактирование таймера TIM1 в режиме Sleep.
RCC_BDCR — резервный домен: LSE и тактирование RTC
Смещение 0x70, адрес 0x4002 3870, 32 бит, после сброса 0x0000 0000 (сбрасывается сбросом домена резервного питания). В коде: RCC->BDCR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | BDRST | ||||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RTCEN | — | RTCSEL | — | LSEDRV | LSEBYP | LSERDY | LSEON | ||||||||
- BDRST (бит 16) — Программный сброс всего резервного домена.
- RTCEN (бит 15) — Тактирование RTC.
- RTCSEL (биты 9:8) — Источник тактирования RTC.
RTCSEL Значение 00 Нет тактирования 01 LSE 10 LSI 11 HSE / RTCPRE - LSEDRV (биты 4:3) — Сила возбуждения кварца LSE.
LSEDRV Значение 00 Низкая 01 Средняя высокая 10 Средняя низкая 11 Высокая - LSEBYP (бит 2) — Обход генератора LSE: внешний сигнал 32,768 кГц.
- LSERDY (бит 1) — Генератор LSE готов (только чтение).
- LSEON (бит 0) — Включение генератора LSE.
RCC_CSR — lSI и флаги причины сброса
Смещение 0x74, адрес 0x4002 3874, 32 бит, после сброса 0x0E00 0000 (сбрасывается системным сбросом, флаги сброса — только при включении питания). В коде: RCC->CSR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| LPWRRSTF | WWDGRSTF | IWDGRSTF | SFTRSTF | PORRSTF | PINRSTF | BORRSTF | RMVF | — | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | LSIRDY | LSION | |||||||||||||
- LPWRRSTF (бит 31) — Причина сброса: недопустимый вход в режим пониженного потребления.
- WWDGRSTF (бит 30) — Причина сброса: оконный сторожевой таймер WWDG.
- IWDGRSTF (бит 29) — Причина сброса: независимый сторожевой таймер IWDG.
- SFTRSTF (бит 28) — Причина сброса: программный (SYSRESETREQ).
- PORRSTF (бит 27) — Причина сброса: включение или пропадание питания (POR/PDR).
- PINRSTF (бит 26) — Причина сброса: вывод NRST.
- BORRSTF (бит 25) — Причина сброса: снижение напряжения (BOR) или включение питания.
- RMVF (бит 24) — Запись 1 сбрасывает все флаги причины сброса.
- LSIRDY (бит 1) — Генератор LSI готов (только чтение).
- LSION (бит 0) — Включение генератора LSI (около 32 кГц).
RCC_SSCGR — модуляция частоты PLL (spread spectrum)
Смещение 0x80, адрес 0x4002 3880, 32 бит, после сброса 0x0000 0000. В коде: RCC->SSCGR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| SSCGEN | SPREADSEL | — | INCSTEP | ||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| INCSTEP | MODPER | ||||||||||||||
- SSCGEN (бит 31) — Включение модуляции частоты PLL (spread spectrum).
- SPREADSEL (бит 30) — Вид модуляции: центральная или вниз.
- INCSTEP (биты 27:13) — Шаг изменения частоты модуляции.
- MODPER (биты 12:0) — Период модуляции.
RCC_PLLI2SCFGR — pLLI2S: множитель N и делители P, Q, R
Смещение 0x84, адрес 0x4002 3884, 32 бит, после сброса 0x2400 3000. В коде: RCC->PLLI2SCFGR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | PLLI2SR | PLLI2SQ | — | PLLI2SP | |||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | PLLI2SN | — | |||||||||||||
- PLLI2SR (биты 30:28) — Делитель R PLLI2S.
- PLLI2SQ (биты 27:24) — Делитель Q PLLI2S.
- PLLI2SP (биты 17:16) — Делитель P PLLI2S.
- PLLI2SN (биты 14:6) — Множитель N частоты ГУН PLLI2S: 50…432.
RCC_PLLSAICFGR — pLLSAI: множитель N и делители P, Q, R
Смещение 0x88, адрес 0x4002 3888, 32 бит, после сброса 0x2400 3000. В коде: RCC->PLLSAICFGR.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | PLLSAIR | PLLSAIQ | — | PLLSAIP | |||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | PLLSAIN | — | |||||||||||||
- PLLSAIR (биты 30:28) — Делитель R PLLSAI.
- PLLSAIQ (биты 27:24) — Делитель Q PLLSAI.
- PLLSAIP (биты 17:16) — Делитель P PLLSAI.
- PLLSAIN (биты 14:6) — Множитель N частоты ГУН PLLSAI: 50…432.
RCC_DCKCFGR1 — такты SAI, LTDC и предделитель таймеров
Смещение 0x8C, адрес 0x4002 388C, 32 бит, после сброса 0x0000 0000. В коде: RCC->DCKCFGR1.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | TIMPRE | SAI2SEL | SAI1SEL | — | PLLSAIDIVR | ||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| — | PLLSAIDIVQ | — | PLLI2SDIVQ | ||||||||||||
- TIMPRE (бит 24) — Предделитель таймеров: такт таймера = 2 или 4 × PCLK при делителе шины больше 1.
TIMPRE Значение 0 Таймеры: 2 × PCLK при делителе APB больше 1 1 Таймеры: 4 × PCLK при делителе APB 4 и больше - SAI2SEL (биты 23:22) — Источник тактирования SAI2: PLLSAI, PLLI2S или вход I2S_CKIN.
SAI2SEL Значение 00 PLLSAI Q / PLLSAIDIVQ 01 PLLI2S Q / PLLI2SDIVQ 10 Вход I2S_CKIN - SAI1SEL (биты 21:20) — Источник тактирования SAI1: PLLSAI, PLLI2S или вход I2S_CKIN.
SAI1SEL Значение 00 PLLSAI Q / PLLSAIDIVQ 01 PLLI2S Q / PLLI2SDIVQ 10 Вход I2S_CKIN - PLLSAIDIVR (биты 17:16) — Делитель выхода R PLLSAI для такта LTDC: 2, 4, 8 или 16.
PLLSAIDIVR Значение 00 /2 01 /4 10 /8 11 /16 - PLLSAIDIVQ (биты 12:8) — Делитель выхода Q PLLSAI для SAI: 1…32.
- PLLI2SDIVQ (биты 4:0) — Делитель выхода Q PLLI2S для SAI: 1…32.
RCC_DCKCFGR2 — источники тактирования USART, I2C, LPTIM, CEC, 48 МГц и SDMMC
Смещение 0x90, адрес 0x4002 3890, 32 бит, после сброса 0x0000 0000. В коде: RCC->DCKCFGR2.
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| — | SDMMC1SEL | CK48MSEL | CECSEL | LPTIM1SEL | I2C4SEL | I2C3SEL | I2C2SEL | I2C1SEL | |||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| UART8SEL | UART7SEL | USART6SEL | UART5SEL | UART4SEL | USART3SEL | USART2SEL | USART1SEL | ||||||||
- SDMMC1SEL (бит 28) — Такт SDMMC1: 48 МГц или SYSCLK.
SDMMC1SEL Значение 0 48 МГц (CK48MSEL) 1 SYSCLK - CK48MSEL (бит 27) — Источник частоты 48 МГц для USB, SDMMC и RNG: PLL Q или PLLSAI P.
CK48MSEL Значение 0 PLL Q 1 PLLSAI P - CECSEL (бит 26) — Такт HDMI-CEC: LSE или HSI / 488.
CECSEL Значение 0 LSE 1 HSI / 488 - LPTIM1SEL (биты 25:24) — Источник тактирования LPTIM1.
LPTIM1SEL Значение 00 PCLK1 01 LSI 10 HSI 11 LSE - I2C4SEL (биты 23:22) — Источник тактирования I2C4.
I2C4SEL Значение 00 PCLK1 01 SYSCLK 10 HSI - I2C3SEL (биты 21:20) — Источник тактирования I2C3.
I2C3SEL Значение 00 PCLK1 01 SYSCLK 10 HSI - I2C2SEL (биты 19:18) — Источник тактирования I2C2.
I2C2SEL Значение 00 PCLK1 01 SYSCLK 10 HSI - I2C1SEL (биты 17:16) — Источник тактирования I2C1.
I2C1SEL Значение 00 PCLK1 01 SYSCLK 10 HSI - UART8SEL (биты 15:14) — Источник тактирования UART8.
UART8SEL Значение 00 PCLK1 01 SYSCLK 10 HSI 11 LSE - UART7SEL (биты 13:12) — Источник тактирования UART7.
UART7SEL Значение 00 PCLK1 01 SYSCLK 10 HSI 11 LSE - USART6SEL (биты 11:10) — Источник тактирования USART6.
USART6SEL Значение 00 PCLK2 01 SYSCLK 10 HSI 11 LSE - UART5SEL (биты 9:8) — Источник тактирования UART5.
UART5SEL Значение 00 PCLK1 01 SYSCLK 10 HSI 11 LSE - UART4SEL (биты 7:6) — Источник тактирования UART4.
UART4SEL Значение 00 PCLK1 01 SYSCLK 10 HSI 11 LSE - USART3SEL (биты 5:4) — Источник тактирования USART3.
USART3SEL Значение 00 PCLK1 01 SYSCLK 10 HSI 11 LSE - USART2SEL (биты 3:2) — Источник тактирования USART2.
USART2SEL Значение 00 PCLK1 01 SYSCLK 10 HSI 11 LSE - USART1SEL (биты 1:0) — Источник тактирования USART1.
USART1SEL Значение 00 PCLK2 01 SYSCLK 10 HSI 11 LSE
Частые вопросы
Как получить 216 МГц на STM32F746 от кварца 25 МГц?
Включите HSE, PWR (RCC_APB1ENR.PWREN), Over-drive (PWR_CR1.ODEN, затем ODSWEN после ODRDY). PLLM = 25, PLLN = 432, PLLP = /2 (216 МГц), PLLQ = 9 (48 МГц). Установите FLASH_ACR.LATENCY = 7, PPRE1 = /4 (54 МГц) и PPRE2 = /2 (108 МГц), включите PLL и переключите SW на PLL.
Почему USB STM32F7 не работает на 216 МГц?
При PLLN = 432 и PLLQ = 9 выход Q — ровно 48 МГц, но при другой системной частоте Q может не делить ГУН до 48 МГц. Тогда возьмите 48 МГц от PLLSAI P и переключите CK48MSEL в RCC_DCKCFGR2.
Источники
- STMicroelectronics. RM0385: Reference manual (Rev 9) — раздел 5.3: описание регистров, назначение полей и значения после сброса
- STMicroelectronics. cmsis-device-f7 v1.2.10: заголовки CMSIS stm32f745xx.h, stm32f746xx.h, stm32f750xx.h, stm32f756xx.h — структуры периферии, смещения, адреса экземпляров и макросы полей; лицензия Apache-2.0
Нашли ошибку в регистрах?
Другие регистры STM32F7
- Все регистры STM32F7Блоки периферии и заголовки CMSIS
- 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_CR1, USART_CR2, USART_CR3, USART_BRR, USART_GTPR, USART_RTOR
- SPI — интерфейсы SPI и I2SSPI_CR1, SPI_CR2, SPI_SR, SPI_DR, SPI_CRCPR, SPI_RXCRCR
- I2C — интерфейс I2CI2C_CR1, I2C_CR2, I2C_OAR1, I2C_OAR2, I2C_TIMINGR, I2C_TIMEOUTR
- TIM — таймерыTIMx_CR1, TIMx_CR2, TIMx_SMCR, TIMx_DIER, TIMx_SR, TIMx_EGR
- LPTIM — малопотребляющий таймерLPTIM_ISR, LPTIM_ICR, LPTIM_IER, LPTIM_CFGR, LPTIM_CR, LPTIM_CMP
- DMA — контроллеры прямого доступа к памятиDMA_LISR, DMA_HISR, DMA_LIFCR, DMA_HIFCR, DMA_SxCR, DMA_SxNDT
- АЦП — аналого-цифровые преобразователиADC_SR, ADC_CR1, ADC_CR2, ADC_SMPR1, ADC_SMPR2, ADC_JOFR1
- IWDG — независимый сторожевой таймерIWDG_KR, IWDG_PR, IWDG_RLR, IWDG_SR, IWDG_WINR
- WWDG — оконный сторожевой таймерWWDG_CR, WWDG_CFR, WWDG_SR
- CRC — блок вычисления CRCCRC_DR, CRC_IDR, CRC_CR, CRC_INIT, CRC_POL
- DBGMCU — поддержка отладкиDBGMCU_IDCODE, DBGMCU_CR, DBGMCU_APB1_FZ, DBGMCU_APB2_FZ
- PWR — управление питаниемPWR_CR1, PWR_CSR1, PWR_CR2, PWR_CSR2
- FLASH — интерфейс флеш-памятиFLASH_ACR, FLASH_KEYR, FLASH_OPTKEYR, FLASH_SR, FLASH_CR, FLASH_OPTCR
- RTC — часы реального времениRTC_TR, RTC_DR, RTC_CR, RTC_ISR, RTC_PRER, RTC_WUTR
- ЦАП — цифро-аналоговый преобразовательDAC_CR, DAC_SWTRIGR, DAC_DHR12R1, DAC_DHR12L1, DAC_DHR8R1, DAC_DHR12R2
- CAN — контроллеры bxCANCAN_MCR, CAN_MSR, CAN_TSR, CAN_RF0R, CAN_RF1R, CAN_IER