Я новичок в VHDL, пытаюсь написать код, который рассчитывает от 0000 до 0099 на моей плате (BASYS-3) в зависимости от того, на какие переключатели я нажимаю. Проблема в том, что мне нужен один переключатель для включения и выключения программы, 4 переключателя для отображения крайнего правого десятичного знака и 4 других для отображения «десятков» (например, 1 в 17). На плате больше переключателей (всего 16), но я подумал, что 4 наиболее логично из-за двоичного кодирования десятичных дробей (например, 9 = 1001 в двоичном является самым большим).
Я понятия не имею, какие ворота использовать, поэтому работа, которую я сделал, очень ограничена, извините за это.
process(bcd_display)
begin
case bcd_display is
when "0000" => LED <= "0000001";
when "0001" => LED <= "1001111";
when "0010" => LED <= "0010010";
when "0011" => LED <= "0000110";
when "0100" => LED <= "1001100";
when "0101" => LED <= "0100100";
when "0110" => LED <= "0100000";
when "0111" => LED <= "0001111";
when "1000" => LED <= "0000000";
when "1001" => LED <= "0000100";
end case;
end process;
PS: https://www.youtube.com/watch?v=H7a56D4rczU Последние 30секунд или около того показывает, что я пытаюсь сделать. Английский не мой родной язык, поэтому я добавлю его на тот случай, если мое описание будет трудно понять.