(VHDL) 我在尝试从数组输出时收到错误

(VHDL) I'm Receiving an Error When Trying to Output from an Array

我正在尝试将数组中的数据输出到我的 DE1-SoC 板上的 7 段显示器。

这是我的变量:

display : out std_logic_vector (6 downto 0);

type bigDisplay is array (0 to 4, 0 to 6) of bit;

signal displayArray : bigDisplay;

代码如下:

display <= displayArray (0, 6-0);

这是我收到的错误:

Error (10381): VHDL Type Mismatch error at Final_Project.vhd(326): indexed name returns a value whose type does not match "std_logic_vector", the type of the target expression

那么,我猜我需要转换我的位数组以输出到 std_logic_vector?我应该怎么做?

使用bit有什么特别的原因吗?您可以轻松创建 std_logic_vector:

的数组
type bigDisplay is array(0 to 4) of std_logic_vector(6 downto 0);
signal displayArray : bigDisplay;

然后简单地(当然是在用值初始化 displayArray 之后):

display <= displayArray(0);

等等,或您想要的任何索引,以便将数组中的值分配给显示器。