Line 39... |
Line 39... |
signal delay_read_reg : std_logic_vector(9 downto 0);
|
signal delay_read_reg : std_logic_vector(9 downto 0);
|
signal bits_read_reg : std_logic_vector(3 downto 0);
|
signal bits_read_reg : std_logic_vector(3 downto 0);
|
signal data_read_reg : std_logic_vector(7 downto 0);
|
signal data_read_reg : std_logic_vector(7 downto 0);
|
signal data_save_reg : std_logic_vector(17 downto 0);
|
signal data_save_reg : std_logic_vector(17 downto 0);
|
signal busy_write_sig : std_logic;
|
signal busy_write_sig : std_logic;
|
signal read_value_reg : std_logic_vector(7 downto 0);
|
signal read_value_reg : std_logic_vector(6 downto 0);
|
signal uart_read2 : std_logic;
|
signal uart_read2 : std_logic;
|
|
|
begin
|
begin
|
|
|
uart_proc: process(clk, reset, enable_read, enable_write, data_in,
|
uart_proc: process(clk, reset, enable_read, enable_write, data_in,
|
Line 53... |
Line 53... |
busy_write_sig, uart_read)
|
busy_write_sig, uart_read)
|
constant COUNT_VALUE : std_logic_vector(9 downto 0) :=
|
constant COUNT_VALUE : std_logic_vector(9 downto 0) :=
|
-- "0100011110"; --33MHz/2/57600Hz = 0x11e
|
-- "0100011110"; --33MHz/2/57600Hz = 0x11e
|
-- "1101100100"; --50MHz/57600Hz = 0x364
|
-- "1101100100"; --50MHz/57600Hz = 0x364
|
"0110110010"; --25MHz/57600Hz = 0x1b2 -- Plasma IF uses div2
|
"0110110010"; --25MHz/57600Hz = 0x1b2 -- Plasma IF uses div2
|
|
-- "0011011001"; --12.5MHz/57600Hz = 0xd9
|
-- "0000000100"; --for debug (shorten read_value_reg)
|
-- "0000000100"; --for debug (shorten read_value_reg)
|
begin
|
begin
|
uart_read2 <= read_value_reg(read_value_reg'length - 1);
|
uart_read2 <= read_value_reg(read_value_reg'length - 1);
|
|
|
if reset = '1' then
|
if reset = '1' then
|
data_write_reg <= ZERO(8 downto 1) & '1';
|
data_write_reg <= ZERO(8 downto 1) & '1';
|
bits_write_reg <= "0000";
|
bits_write_reg <= "0000";
|
delay_write_reg <= ZERO(9 downto 0);
|
delay_write_reg <= ZERO(9 downto 0);
|
read_value_reg <= ONES(7 downto 0);
|
read_value_reg <= ONES(read_value_reg'length-1 downto 0);
|
data_read_reg <= ZERO(7 downto 0);
|
data_read_reg <= ZERO(7 downto 0);
|
bits_read_reg <= "0000";
|
bits_read_reg <= "0000";
|
delay_read_reg <= ZERO(9 downto 0);
|
delay_read_reg <= ZERO(9 downto 0);
|
data_save_reg <= ZERO(17 downto 0);
|
data_save_reg <= ZERO(17 downto 0);
|
elsif rising_edge(clk) then
|
elsif rising_edge(clk) then
|