PoC.io.7SegmentMux_BCD¶
This module is a 7 segment display controller that uses time multiplexing to control a common anode for each digit in the display. The shown characters are BCD encoded. A dot per digit is optional. A minus sign for negative numbers is supported.
Entity Declaration:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | entity io_7SegmentMux_BCD is
generic (
CLOCK_FREQ : FREQ := 100 MHz;
REFRESH_RATE : FREQ := 1 kHz;
DIGITS : positive := 4
);
port (
Clock : in std_logic;
BCDDigits : in T_BCD_VECTOR(DIGITS - 1 downto 0);
BCDDots : in std_logic_vector(DIGITS - 1 downto 0);
SegmentControl : out std_logic_vector(7 downto 0);
DigitControl : out std_logic_vector(DIGITS - 1 downto 0)
);
end entity;
|