VHDL-连接开关和LED

VHDL-连接开关和LED,vhdl,fpga,led,xilinx-ise,spartan,Vhdl,Fpga,Led,Xilinx Ise,Spartan,我有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_Led

我有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;
我的问题是:为什么led总是亮着,但如果我点击按钮它就会熄灭


我解释:我编程我的fpga-led亮起,我按下开关按钮-led熄灭,我松开按钮-led亮起

反转可能发生在两个地方:

  • 在按钮上
  • 在LED中
这完全取决于它们之间的联系方式。我画了一张图表:

(必须绘制它,因为我们这里没有EE站点上的原理图编辑器)

如果您查看图表:按钮可以通过两种方式连接。它们既可以在按下时生成高值,也可以生成低值

发光二极管也可以通过两种方式连接:当输出高时发光,或者当输出低时发光


这就提供了四种组合,其中两种组合在按下按钮时发光二极管亮起,两种组合在按下按钮时发光二极管熄灭。

如果您能指出哪些部分电路处于高激活模式或低激活模式,那就太好了。@Paebels完成了,我希望我们同意“激活”这一模糊的术语。
NET "switch_0" LOC = C3;

NET "LED_0" LOC = P4;