Estoy haciendo un proyecto y necesito el microcontrolador (ATmega328) para hacer estas dos cosas:
El micro leerá sus pines de entrada constantemente porque el voltaje de CC y el período necesario pueden cambiar en cualquier momento.
Había pensado en hacer el primero con PWM y el segundo configurar manualmente un pin de salida o borrarlo, contando el período con un temporizador. Sin embargo, mi pregunta es: ¿ se pueden hacer estas dos cosas juntas?
Estoy pensando que en el código, el microcontrolador podrá seguir una rutina a la vez. Entonces, ¿cómo podría generar estas dos ondas simultáneamente (si es posible)? Si se puede hacer, ¿se podrían usar dos salidas PWM diferentes para generar dos señales diferentes en lugar de usar un temporizador y generar la segunda manualmente?
Cada pin OCnx del ATmega328 puede generar su propia forma de onda PWM independiente. Además, cada temporizador ("n") puede tener su propia frecuencia y/o fase. Además , el ATmega328 PB tiene un pin que puede generar una forma de onda que es una modulación de dos formas de onda generadas a partir de temporizadores separados.
Dado que dice "el voltaje de CC y el período necesario pueden cambiar en cualquier momento", lea la hoja de datos cuidadosamente para averiguar cuándo puede cambiar de manera segura los valores que se utilizan para generar las formas de onda. Si los valores se cambian en el momento equivocado, la forma de onda puede fallar, brindándole una señal que no tiene un 50% de CC.
tendero
Ignacio Vázquez-Abrams