Todos los ejercicios
Difícil
Completa el hueco
5 pruebas
Comparador PWM — completa el hueco
Tienes un contador libre de 4 bits ya cableado. Se incrementa
en cada flanco de reloj y da la vuelta de 1111 a 0000
(periodo PWM de 16 pasos).
Tú añades el comparador que convierte el contador en una
señal PWM: pwm_out debe estar alto mientras
count < duty, y bajo en caso contrario.
Especificación
countesunsigned(3 downto 0).dutyesSTD_LOGIC_VECTOR(3 downto 0)— conviértelo con
unsigned(duty).- Usa una asignación condicional concurrente:
pwm_out <= '1' when count < unsigned(duty) else '0'; - Con
duty = 0la salida queda baja; conduty = 15queda
alta 15 de los 16 ticks.
Dónde escribir
Sólo la línea entre -- BEGIN_EDIT y -- END_EDIT se evalúa.
No modifiques el proceso del contador — está bloqueado.
Caso de prueba visible
Reset 25 ns y duty=8 (50%)
| Puerto | Tiempo | Valor |
|---|---|---|
reset |
0 ns | 1 |
reset |
25 ns | 0 |
duty |
0 ns | 1000 |
4 casos de prueba ocultos — resuélvelos para revelarlos.