Input 将LED引脚配置为MACHxo2板上的输入

Input 将LED引脚配置为MACHxo2板上的输入,input,mach,pins,Input,Mach,Pins,我正在尝试将连接到板载LED的管脚配置为输入管脚。文档说明它们是自由i/o,但当我用示波器探测它们时,它表示它们正在输出高信号。这是在MACHXO2 7000he cpld上,但我认为答案对于任何MACH板都是一样的。 提前感谢您的帮助。您可以尝试led闪烁示例,例如: LIBRARY ieee; USE ieee.std_logic_1164.all; LIBRARY lattice; USE lattice.components.all; ENTITY blinking_led IS

我正在尝试将连接到板载LED的管脚配置为输入管脚。文档说明它们是自由i/o,但当我用示波器探测它们时,它表示它们正在输出高信号。这是在MACHXO2 7000he cpld上,但我认为答案对于任何MACH板都是一样的。 提前感谢您的帮助。

您可以尝试led闪烁示例,例如:

LIBRARY ieee;
USE ieee.std_logic_1164.all;
LIBRARY lattice;
USE lattice.components.all;

ENTITY blinking_led IS
   PORT(
      led  : BUFFER  STD_LOGIC);
END blinking_led;

ARCHITECTURE behavior OF blinking_led IS
   SIGNAL  clk  : STD_LOGIC;
   --internal oscillator
   COMPONENT OSCH
      GENERIC(
            NOM_FREQ: string := "53.20");
      PORT( 
            STDBY    : IN  STD_LOGIC;
            OSC      : OUT STD_LOGIC;
            SEDSTDBY : OUT STD_LOGIC);
   END COMPONENT;
BEGIN
   --internal oscillator
   OSCInst0: OSCH
      GENERIC MAP (NOM_FREQ  => "53.20")
      PORT MAP (STDBY => '0', OSC => clk, SEDSTDBY => OPEN);
   PROCESS(clk)
      VARIABLE count :   INTEGER RANGE 0 TO 25_000_000;
   BEGIN
      IF(clk'EVENT AND clk = '1') THEN
         IF(count < 25_000_000) THEN
            count := count + 1;
         ELSE
            count := 0;
            led <= NOT led;
         END IF;
      END IF;
   END PROCESS;
END behavior;

欲了解更多信息,请查看Lattice Diamond和MachXO2突破板

嘿,伙计们,很抱歉花了这么长时间回复。我会附上一张赛道的照片,但我目前的声誉太低,无法这样做

LED连接到3.3V的VCC。我发现,通过将LED从电路板上脱焊,我可以自由地使用它们连接的引脚作为自由I/o,因为这会在引脚和3.3V之间产生开路

引脚应该已经通过自由i/o,但LED处于低激活状态,这导致我的程序一直将其视为高信号,最终使这些引脚成为永久输出

不管怎样,这是我的答案,我希望它有意义,能帮助你们中的一位度过难关


感谢您的回复。

这是如何回答这个问题的?@RenaudBompuis简单地说,这是请求的硬件所必需的功能,您发现了什么问题?问题是如何将已连接到LED的现有输出配置为输入,而他在理解测量结果时遇到了困难。如果我看不到,我很抱歉,但是你的回答如何回答这个问题?对我来说,你粘贴了不相关的代码来闪烁LED,这并没有回答问题。@RenaudBompuis如果添加了更多细节,我可以尝试解释一下。我认为这可能会有帮助,因为配置LED闪烁与使用I/O类似。您可能需要澄清您所问的问题的实质。不清楚您是否在询问测量时为什么会收到高信号,或者配置pin时是否有问题。您是否模拟了代码以确保其在理想情况下运行正常?比如说,在模拟的测试用例中,你可以在某个输出引脚上设置1和0,并将其连接到目标输入轨迹,看它是否得到这些0和1。我不知道你的电路是什么:LED是否连接到VDD或VCC,因为如果接地,则该引脚基本上配置为输出,您是否尝试将其重新配置为输入?无论如何,你最好包括你的代码和ucf文件,至少包括LED的网络,每个人都可以得到更多的理解。我的答案被否决了,所以我会考虑删除它。