Forum Discussion
Altera_Forum
Honored Contributor
9 years agoAlright, before I waste my time guessing on what to do, would I assign all the pins to hexout or would I instead somehow fill the array (hexout) with HEX0 to HEX5 (which already have the pins assigned to them)? Here is the code I have come up with so far. I tried to assign the HEX0-HEX5 to the hexout, but error showed up saying I had to change them to a buffer type.
LIBRARY ieee;USE ieee.std_logic_1164.all;
USE work.my_types_pkg.all;
ENTITY hexscroll IS
PORT(
CLOCK_50 : IN STD_LOGIC;
hexout : OUT hexout_array_t;
HEX0 : BUFFER STD_LOGIC_VECTOR(6 downto 0);
HEX1 : BUFFER STD_LOGIC_VECTOR(6 downto 0);
HEX2 : BUFFER STD_LOGIC_VECTOR(6 downto 0);
HEX3 : BUFFER STD_LOGIC_VECTOR(6 downto 0);
HEX4 : BUFFER STD_LOGIC_VECTOR(6 downto 0);
HEX5 : BUFFER STD_LOGIC_VECTOR(6 downto 0));
END hexscroll;
ARCHITECTURE blinkled OF hexscroll IS
SIGNAL pulse : STD_LOGIC_VECTOR (6 downto 0) := B"010_0100";--variable to hold value of LED
SIGNAL count : INTEGER RANGE 0 TO 49999999 := 0; --counter variable
BEGIN
counter:PROCESS (CLOCK_50)
BEGIN
hexout <= (HEX0, HEX1, HEX2, HEX3, HEX4, HEX5);
IF CLOCK_50'EVENT AND CLOCK_50 = '1' THEN
IF count = 49999999 THEN
count <= 0;
pulse <= NOT pulse;
ELSE
count <= count + 1;
END IF;
END IF;
END PROCESS counter;
--hexout <= ???
END blinkled; LIBRARY IEEE;USE ieee.std_logic_1164.all;
PACKAGE my_types_pkg IS
TYPE hexout_array_t IS ARRAY(0 to 5) OF STD_LOGIC_VECTOR(6 downto 0);
END PACKAGE;