Necesito hacer un circuito que genere una señal PWM para un motor. El motor tiene 2 entradas: P
y Q
. Son lo inverso de cada uno. Ahora, no se permite que ambas señales sean altas al mismo tiempo. Por eso es necesario que haya un tiempo muerto programable: el tiempo entre la señal que es alta para bajar y la señal baja para ir a alta.
Ahora sé cómo hacer fácilmente una señal PWM. Se le permite tener un ancho de señal fijo y un período fijo, porque es para fines educativos. Para generar esto, solo tengo un comparador en una entrada, un contador de 8 bits contando continuamente y una constante en la otra.
Ahora, necesito comprobar de alguna manera si la señal cambia hacia arriba o hacia abajo. Si va hacia arriba, puede pasar directamente, pero si no tiene que cargar un contador de 8 bits que se pueda cargar con cierto valor y esperar a que se desborde antes de que se genere la nueva salida alta.
Para la parte del contador cargable debería tener suficiente conocimiento, pero no sé cómo detectar los bordes (preferiblemente se deben evitar las cosas asíncronas)