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:
1entity io_7SegmentMux_BCD is
2 generic (
3 CLOCK_FREQ : FREQ := 100 MHz;
4 REFRESH_RATE : FREQ := 1 kHz;
5 DIGITS : positive := 4
6 );
7 port (
8 Clock : in std_logic;
9
10 BCDDigits : in T_BCD_VECTOR(DIGITS - 1 downto 0);
11 BCDDots : in std_logic_vector(DIGITS - 1 downto 0);
12
13 SegmentControl : out std_logic_vector(7 downto 0);
14 DigitControl : out std_logic_vector(DIGITS - 1 downto 0)
15 );