Clock control register (RCC_CR)

Регистр управления тактированием

Смещение (Address offset): 0x00

Reset value: 0x0000'XX83

3130292827262524
Reserved PLLRDY PLLON
------------------rrw
00000000
2322212019181716
Reserved CSSON HSEBYP HSERDY HSEON
------------rwrwrrw
00000000


15141312111098
HSICAL[7:0]
rrrrrrrr
xxxxxxxx
76543210
HSITRIM[4:0] Reserved HSIRDY HSION
rwrwrwrwrw---rrw
10000011


Bits 31:26
Reserved
Must be kept at reset value
Зарезервировано. Должно быть сохранено значение после сброса
Bit 25
PLLRDY
PLL clock ready flag
Флаг стабильности тактовой частоты PLLCLK блока PLL

Устанавливается аппаратно. Сигнализирует о стабильности тактовой частоты на выходе блока PLL.

 0 : тактовая частота нестабильна.

 1 : тактовая частота PLLCLK на выходе блока PLL стабильна и её можно использовать как системную тактовую частоту SYSCLK.

Bit 24
PLLON
PLL enable
Включает блок PLL

Сбрасывается аппаратно при переходе микроконтроллера в режимы Stop и Standby.

Бит не может быть сброшен, если блок PLL используется для формирования системной тактовой частоты SYSCLK.

 0 : блок PLL выключен.

 1 : блок PLL включен.

Bits 23:20
Reserved
Must be kept at reset value
Зарезервировано. Должно быть сохранено значение после сброса
Bit 19
CSSON
Clock security system enable
Включает блок CSS контроля стабильности частоты внешнего генератора HSE

 0 : контроль отключен.

 1 : контроль включен. При обнаружении ошибки частоты внешнего генератора HSE, система автоматически переключается на тактирование от встроенного генератора HSI.

Bit 18
HSEBYP
External high-speed clock bypass
Включает тактирование от внешнего источника тактовых импульсов вместо кварцевого резонатора.

Для изменения бита необходимо программно отключать внешний генератор HSE.

 0 : работа от внешнего кварцевого разонатора.

 1 : работа от внешнего источника тактовых импульсов (4...16 МГц) без использования кварцевого резонатора. При этом бит HSEON тоже должен быть установлен.

Bit 17
HSERDY
External high-speed clock ready flag
Флаг стабильности частоты внешнего генератора HSE

Устанавливается аппаратно и сигнализирует что частота внешнего генератора HSE стабильна.

 0 : HSE генератор не готов.

 1 : HSE генератор готов. Частота тактового сигнала на выходе HSE стабильна.

Bit 16
HSEON
HSE clock enable
Включает внешний генератор HSE

Сбрасывается аппаратно при переходе микроконтроллера в режимы Stop и Standby.

Бит не может быть сброшен, если HSE генератор используется прямо или косвенно для формирования системной тактовой частоты SYSCLK.

 0 : HSE генератор отключен.

 0 : HSE генератор включен.

Bits 15:8
HSICAL[7:0]
Internal high-speed clock calibration
Калибровочное значение встроенного высокоскоростного генератора HSI

Устанавливается системой автоматически после включения. Только для чтения.

Bits 7:3
HSITRIM[4:0]
Internal high-speed clock trimming
Программная подстройка частоты встроенного высокоскоростного генератора HSI

Является дополнением к аппаратно устанавливаемому калибровочному значению генератора HSI. По умолчанию имеет значение 0x10, которое складывается с HSICAL[7:0] и приближает частоту HSI к значению 8 МГц ± 1%. Шаг подстройки составляет около 40 кГц.

Bit 2
Reserved
Must be kept at reset value
Зарезервировано. Должно быть сохранено значение после сброса
Bit 1
HSIRDY
Internal high-speed clock ready flag
Флаг стабильности частоты встроенного генератора HSI

Устанавливается аппаратно и сигнализирует что частота встроенного генератора HSI 8 МГц стабильна.

 0 : HSI генератор не готов.

 1 : HSI генератор готов. Частота тактового сигнала 8 МГц на выходе HSI стабильна.

Bit 0
HSION
Internal high-speed clock enable
Включает встроенный генератор HSI

Устанавливается аппаратно и включает встроенный генератор HSI при выходе микроконтроллера из режимов Stop и Standby.

Устанавливается аппаратно и включает встроенный генератор HSI при сбое внешнего генератора HSE и срабатывании защиты CSS.

Бит не может быть сброшен, если HSI генератор используется прямо или косвенно для формирования системной тактовой частоты SYSCLK.

 0 : HSI генератор отключен.

 0 : HSI генератор включен.



/********************  Bit definition for RCC_CR register  ********************/

#define  RCC_CR_HSION            ((uint32_t)0x00000001)        /* Internal High Speed clock enable */
#define  RCC_CR_HSIRDY           ((uint32_t)0x00000002)        /* Internal High Speed clock ready flag */
#define  RCC_CR_HSITRIM          ((uint32_t)0x000000F8)        /* Internal High Speed clock trimming */
#define  RCC_CR_HSICAL           ((uint32_t)0x0000FF00)        /* Internal High Speed clock Calibration */

#define  RCC_CR_HSEON            ((uint32_t)0x00010000)        /* External High Speed clock enable */
#define  RCC_CR_HSERDY           ((uint32_t)0x00020000)        /* External High Speed clock ready flag */
#define  RCC_CR_HSEBYP           ((uint32_t)0x00040000)        /* External High Speed clock Bypass */

#define  RCC_CR_CSSON            ((uint32_t)0x00080000)        /* Clock Security System enable */

#define  RCC_CR_PLLON            ((uint32_t)0x01000000)        /* PLL enable */
#define  RCC_CR_PLLRDY           ((uint32_t)0x02000000)        /* PLL clock ready flag */

#define  RCC_CR_PLL2ON           ((uint32_t)0x04000000)        /* PLL2 enable */
#define  RCC_CR_PLL2RDY          ((uint32_t)0x08000000)        /* PLL2 clock ready flag */

#define  RCC_CR_PLL3ON           ((uint32_t)0x10000000)        /* PLL3 enable */
#define  RCC_CR_PLL3RDY          ((uint32_t)0x20000000)        /* PLL3 clock ready flag */