STM32G474 удвоитель тактовой частоты таймеров

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
Держит паяльник хвостом
Аватара пользователя
Сообщения: 954
Зарегистрирован: Вс дек 02, 2012 16:58:33
Откуда: от туда

Сообщение GARMIN »

Работаю над домашним проектом, взял отладочную плату 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, ни в таймерах. Может кто видел, где и как управляется этот множитель?
Контактная информация:
Реклама
Поставщик валерьянки для Кота
Сообщения: 1916
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария

Сообщение veso74 »

стр 281:
7.2.13 Timer clock
The timer clock frequencies (tim_ker_ck) are automatically defined by hardware. If the APB prescaler equals 1, the timer clock frequencies are set to the same frequency of the APB domain, otherwise, they are set to twice (×2) the frequency of the APB domain.
Контактная информация:
Реклама
Держит паяльник хвостом
Аватара пользователя
Сообщения: 954
Зарегистрирован: Вс дек 02, 2012 16:58:33
Откуда: от туда

Сообщение GARMIN »

Большое спасибо! Сам не нашёл.
Контактная информация:
Ответить

Вернуться в «ARM»