From 9b5a205ec5282a531aad963ec548a4e6ccc78f57 Mon Sep 17 00:00:00 2001 From: Bernhard Urban Date: Tue, 11 Jan 2011 12:38:38 +0100 Subject: [PATCH] uart: stopbit fehlt? --- cpu/src/extension_uart_pkg.vhd | 4 ++-- cpu/src/rs232_tx_arc.vhd | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/cpu/src/extension_uart_pkg.vhd b/cpu/src/extension_uart_pkg.vhd index fdb7893..a7f14d9 100644 --- a/cpu/src/extension_uart_pkg.vhd +++ b/cpu/src/extension_uart_pkg.vhd @@ -22,8 +22,8 @@ subtype baud_rate_l is std_logic_vector(BAUD_RATE_WIDTH-1 downto 0); --constant CLK_FREQ_MHZ : real := 33.33; --constant BAUD_RATE : integer := 115200; --constant CLK_PER_BAUD : integer := integer((CLK_FREQ_MHZ * 1000000.0) / real(BAUD_RATE) - 0.5); -constant CLK_PER_BAUD : integer := 434; --- constant CLK_PER_BAUD : integer := 2083; -- @uni, bei 20MHz und 9600 Baud +-- constant CLK_PER_BAUD : integer := 434; +constant CLK_PER_BAUD : integer := 2083; -- @uni, bei 20MHz und 9600 Baud -- constant CLK_PER_BAUD : integer := 50; -- @modelsim component extension_uart is diff --git a/cpu/src/rs232_tx_arc.vhd b/cpu/src/rs232_tx_arc.vhd index ec9f4c5..ac431d8 100755 --- a/cpu/src/rs232_tx_arc.vhd +++ b/cpu/src/rs232_tx_arc.vhd @@ -83,12 +83,14 @@ begin when IDLE => -- tx-Signale im idle Zustand halten tx_rdy <= '1'; - cnt_nxt <= 0; - baud_cnt_next <= to_integer(unsigned(bd_rate)); + cnt_next <= 0; + -- TODO: wtf, typproblem + -- baud_cnt_next <= to_integer(unsigned(bd_rate)); + baud_cnt_next <= CLK_PER_BAUD; when SEND => -- Signalisiert dass gerade ein Byte versendet wird tx_rdy <= '0'; - if baud_cnt = unsigned(bd_rate) then + if baud_cnt = bd_rate then -- wenn die Bitdauer erreicht ist, Counter reseten baud_cnt_next <= 0; -- Counter um die einzelen Bits zu versenden -- 2.25.1