STM32G474 удвоитель тактовой частоты таймеров
Добавлено: Вс июн 15, 2025 14:13:34
Работаю над домашним проектом, взял отладочную плату STM NUCLEO-G474RE с процессором STM32G474 на борту (из названия было непонятно, да). С этим процессором работаю уже давно, потом был перерыв пару лет.
Мне нужно запускать измерение по таймеру с периодом 10мс, не зависящим от состояния FreeRTOS. Для этого я использовал TIM7 как самый ограниченный и бесполезный. Рассчитывал на входную тактовую частоту PCLK1 20МГц. Установил делитель тактовой частоты и значение счётчика. Разрешил прерывание. И получил период прерывания не 10, а 5мс. Я, конечно, могу установить другие коэффициенты, но всё равно полез разбираться.
RCC у меня настроен вручную, частота процессора 160МГц. SysTick работает от делителя частоты на 8: 20МГц, секунды считают корректно. Частота PCLK1 после делителя на 8 равна 20МГц. Картинку прилагаю.

У меня вопрос:
От шины PCLK1 до тактирования таймеров 2-7 стоит блок умножения частоты "x1 or x2". Сейчас он настроен на х2. Но я нигде не нашёл управление этим блоком, ни в RCC, ни в таймерах. Может кто видел, где и как управляется этот множитель?
Мне нужно запускать измерение по таймеру с периодом 10мс, не зависящим от состояния FreeRTOS. Для этого я использовал TIM7 как самый ограниченный и бесполезный. Рассчитывал на входную тактовую частоту PCLK1 20МГц. Установил делитель тактовой частоты и значение счётчика. Разрешил прерывание. И получил период прерывания не 10, а 5мс. Я, конечно, могу установить другие коэффициенты, но всё равно полез разбираться.
RCC у меня настроен вручную, частота процессора 160МГц. SysTick работает от делителя частоты на 8: 20МГц, секунды считают корректно. Частота PCLK1 после делителя на 8 равна 20МГц. Картинку прилагаю.
У меня вопрос:
От шины PCLK1 до тактирования таймеров 2-7 стоит блок умножения частоты "x1 or x2". Сейчас он настроен на х2. Но я нигде не нашёл управление этим блоком, ни в RCC, ни в таймерах. Может кто видел, где и как управляется этот множитель?