Tengo un motor paso a paso en TIM2 CH1. Cuando se presiona un botón, el motor funciona. ¿Cómo contar los pasos (pulsos) que generó el PWM mientras se presionaba el botón?
Tengo un motor paso a paso en TIM2 CH1. Cuando se presiona un botón, el motor funciona. ¿Cómo contar los pasos (pulsos) que generó el PWM mientras se presionaba el botón?
Utiliza otro temporizador como esclavo para contar TIM2
reloads.
SMCR
en el Manual de referencia para ver si se puede esclavizar a TIM2
. TIM5
sería una buena opción ya que tiene un contador de 32 bits. TIM2
como maestro, active la salida en la actualización ( MMS
bits en CR2
). Generará una salida de activación cuando se vuelva a cargar el contador de PWM. TIM5
como esclavo. Primero, verifique la tabla al final de la descripción del registro SMCR
. Busque TIM2_TRGO
(el maestro) en la fila correspondiente a TIM5
(el esclavo). Tenga en cuenta la configuración de TS=xxx
en el encabezado de la columna, este valor entra en los bits de TS
de SMCR
. El Modo esclavo ( SMS
) debe ser Modo de reloj externo ( 111
= 0x07
). Ahora, TIM5
contará las recargas de TIM2
, efectivamente los ciclos PWM. TIM5
), luego el maestro ( TIM2
). Lea otras preguntas en las etiquetas microcontroller pwm timer stm32 stm32f4