¿Qué hace ClockDivision, a diferencia del Prescaler para los temporizadores STM32?

Estoy usando una placa STM32 (serie F7) y estoy revisando la documentación de la API HAL. Cuando inicializo un temporizador, veo dos valores Prescalery ClockDivision. Ahora entiendo que Prescalerse usa para dividir la frecuencia del reloj. Sin embargo, ¿qué se ClockDivisionsupone que debe hacer? Veo que tiene tres valores posibles, DIV1, DIV2y DIV4.

Mi código generado automáticamente dice lo siguiente.

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

Encontré un preescalador y un PLL maestro en la guía del usuario de STM32, pero no se menciona un divisor, que puede ser externo a la MPU. Necesitamos el gráfico o la imagen de HAL para saber de qué se trata.
Se agregó una captura de pantalla del código con la extensión ClockDivision. Traté de convertir el código en un bloque de código en lugar de pegar una imagen, pero parece que no tiene el formato correcto...

Respuestas (1)

Con la gran suposición de que todo lo siguiente es cierto o al menos similar a la descripción de la serie F7. ¡Podría estar completamente equivocado! ¡Revisa otra vez, por favor!

De acuerdo con la descripción del registro de la hoja de datos de la familia stm32 F4 , "ClockDivision" significa

CKD: este campo de bits indica la relación de división entre la frecuencia del reloj del temporizador (CK_INT) y el tiempo muerto y el reloj de muestreo (tDTS) que utilizan los generadores de tiempo muerto y los filtros digitales (ETR, TIx),

00: tDTS=tCK_INT

01: tDTS=2*tCK_INT

10: tDTS=4*tCK_INT

11: Reservado, no programar este valor

No pude encontrar ninguna documentación específica relacionada con la serie F7 y no estoy muy al tanto del uso de generadores de tiempo muerto, pero ETR significa "Entrada de activación externa".

Cuidado, TIM1 es un temporizador especial, la misma descripción no es válida para otros temporizadores de propósito general (p. ej., TIM2, etc.)

Además, la documentación de la API HAL no es particularmente útil, ya que es solo una acumulación de todos los comentarios de la biblioteca HAL sin ninguna descripción. Si todavía estás interesado, esto podría ser útil para ti.

Es la misma descripción para el TIM1/TIM8 del F7. Ver manual de referencia STM32F7 capítulos 22.4.1. Para los otros temporizadores, es casi la misma descripción, pero mencionando solo los filtros digitales, no el generador de tiempos muertos (ver capítulos 23.4.1, 24.4.1, 24.5.1).
Pregunta y discusión similar, vinculada para la posteridad: community.st.com/s/question/0D50X0000B42Wh5/…