Estoy usando una placa basada en STM32F405 (OpenPilot revo) para recibir señales PWM desde un receptor de joystick.
Tengo que capturar cinco señales PWM usando solo dos temporizadores, el temporizador 8 y el temporizador 12. Ya logré capturar una señal PWM y calcular el ciclo de trabajo en solo un canal para cada temporizador usando el ejemplo provisto con la biblioteca estándar (PWM INPUT ).
Pero no pude usar varios canales para cada temporizador. ¿Cómo configuro los canales? Sería genial si alguien tiene un ejemplo con más de un canal utilizado para la entrada de PWM.
En lugar de usar dos unidades de captura para capturar los flancos ascendentes y descendentes por separado, use una unidad de captura para reaccionar a ambos flancos de la(s) señal(es) y determinar el estado dentro del controlador de interrupciones. O use una interrupción externa (cambio de pin) para reaccionar a cualquier cambio de señal y use un temporizador de funcionamiento libre para capturar el valor del contador en el software. Si no hay interrupciones, puede utilizar OR (diodos) para enviar las señales a una entrada de interrupción y verificar la fuente con entradas normales (una para cada señal).
chris stratton
jms