OpenCores
URL https://opencores.org/ocsvn/mlite/mlite/trunk

Subversion Repositories mlite

[/] [mlite/] [trunk/] [vhdl/] [uart.vhd] - Diff between revs 279 and 334

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 279 Rev 334
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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.