From: Bernhard Urban Date: Tue, 11 Jan 2011 11:38:38 +0000 (+0100) Subject: uart: stopbit fehlt? X-Git-Tag: bootrom_v1~11 X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=calu.git;a=commitdiff_plain;h=9b5a205ec5282a531aad963ec548a4e6ccc78f57 uart: stopbit fehlt? --- 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