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