Página 30:
El STM32F40x incluye 4 temporizadores de propósito general con todas las funciones: TIM2, TIM5, TIM3 y
TIM4.Los temporizadores TIM2 y TIM5 se basan en una carga / bajada de recarga automática de 32 bits
y un prescaler de 16 bits. Los temporizadores TIM3 y TIM4 se basan en una recarga automática de 16 bits
up / downcounter y un prescaler de 16 bits. Todos ellos cuentan con 4 canales independientes para
Captura de entrada / salida de salida, PWM o salida en modo de un impulso. Esto da hasta 16.
captura / salida de entrada / PWM en los paquetes más grandes
No dice qué paquetes son, pero es probable que sean dispositivos de 144 y 176 pines, tal vez 100. Tendría que revisar esos puertos de pines y ver si están presentes, incluida la función de E / S de comparación de salida.
Según ese párrafo, cada temporizador se puede conectar a 4 salidas de comparación. La comparación de salida establece básicamente el ciclo de trabajo, y el temporizador la frecuencia. Así, al final, puede tener 4 grupos con una frecuencia establecida, pero cada uno con un ciclo de trabajo individual.
No sé qué tan crítica es la precisión de PWM, o estás tratando de obtener algún tipo de control continuo, también puedes intentar:
* Software PWM, configurando manualmente los puertos de salida. Toma un temporizador y más tiempo de procesador.
* Controladores PWM, controladores de LED básicamente utilizados como controladores PWM. PCA9634, por ejemplo, tiene una frecuencia fija (97 kHz) pero con un ciclo de trabajo individual. También hay versiones de 16 canales. TI también fabrica una tonelada de controladores LED, pero la mayoría de ellos tienen salidas de corriente constante, con lo que evito interactuar.
No vería por qué esto no es algo recomendable. Si el chip puede hacerlo, adelante. Lo que consideraría es si puede obtener la precisión del ciclo de trabajo deseado en la frecuencia establecida. Por ejemplo, si necesita una precisión de ciclo de trabajo de 10 bits (como 0-100% se configura en 0-1023) y una salida de 100kHz, básicamente necesita un reloj de referencia de 2 ^ 10 * 100k = 102.4MHz.
Entonces, en realidad, PWM no es solo PWM, para ser más específicos acerca de si el chip se adapta a sus necesidades, ¿quizás podría decirnos más sobre la velocidad y precisión requeridas?