Насколько я понимаю, источником внутреннего таймера на микроконтроллерах STM32(F4) может быть либо APB1, либо APB2. Однако я не могу найти, какие таймеры получают какие часы.
Я уже нашел ST AN4013 , который объясняет почти все о таймерах, но не их соответствующий внутренний источник часов.
Кто-нибудь знает или имеет источник, какие именно часы использует каждый таймер?
Указание по применению ST, на которое вы ссылаетесь, - это просто общее описание, а не все. Детали оборудования отличаются от каждой модели MCU. AN расскажет вам только общую идею. Поэтому вам нужно посмотреть документы, специально написанные для каждой модели MCU.
Как упоминалось в комментариях, при работе с периферийными устройствами STM32 вам в основном нужно будет просмотреть два документа (поскольку вы не указали модель MCU, я приведу пример STM32F407):
Это краткое описание оборудования. Поскольку APB1 и APB2 связаны с шиной, то, что вам нужно, описано в разделе карты памяти (он же раздел 4 Отображение памяти).
Очень подробное (1749 страниц!) описание MCU. Когда вы посмотрите на Таймеры в этом руководстве, вы поймете, что существует гораздо больше вещей, чем AN. В любом случае, этот документ также описывает карту памяти. (раздел 2.3)
Примечание. Несмотря на то, что API STM32 HAL абстрагирует детали оборудования, вам все равно необходимо знать, какие APB подключены к используемым вами таймерам. Например, все периферийные устройства используют общие часы шины APB. Это означает, что если вы измените настройку часов APB1, часы всех периферийных устройств, подключенных к APB1, включая таймеры, также будут изменены. Это может привести к неожиданным изменениям времени других неожиданных таймеров.
Например: MCU STM32F412 Документ RM0090 «Архитектура памяти и шины», стр. 64 Таблица 1. Граничные адреса регистров STM32F4xx
Маженко
Пезо
Маженко
Пезо
Маженко
Хассан789
Квесоловский
Пезо