(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);
等等,或您想要的任何索引,以便将数组中的值分配给显示器。
我正在尝试将数组中的数据输出到我的 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);
等等,或您想要的任何索引,以便将数组中的值分配给显示器。