VHDL - подключить выключатель и светодиод - PullRequest
0 голосов
/ 09 июня 2018

У меня есть Xilinx Spartan6 и следующий код VHDL:

library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;

entity Switches_Leds is
    Port (switch_0: in STD_LOGIC;
          LED_0 : out STD_LOGIC);
end Switches_Leds;

architecture Behavioral of Switches_Leds is
begin
   LED_0 <= switch_0;
end;

Вот мой файл ограничений пользователя:

NET "switch_0" LOC = C3;

NET "LED_0" LOC = P4;

Мой вопрос: почему светодиод всегда включен, но он уходит, если я нажму на кнопку?

Объясняю: я программирую свою fpga - светодиод включен, нажимаю кнопку переключателя - светодиод выключен, отжимаю кнопку - светодиод горит.

1 Ответ

0 голосов
/ 09 июня 2018

Инверсия может происходить в двух местах:

  • В кнопке.
  • В светодиоде.

Все зависит от того, как онисвязано.Я сделал диаграмму:

enter image description here

(пришлось нарисовать ее, поскольку у нас нет редактора схем здесь, как на сайте EE)

Если вы посмотрите на диаграмму: кнопки можно подключить двумя способами.Они могут генерировать максимум при толчке или минимум.

Светодиоды также могут быть подключены двумя способами: они могут загораться при высоком уровне выходного сигнала или могут загораться при низком уровне выходного сигнала.

Это дает вам четыре комбинации, из которых два даютсветодиодный индикатор загорается при нажатии кнопки, а два светодиода загораются при нажатии кнопки.

...