Introduce constants for parity.
authorMalte S. Stretz <mss@apache.org>
Thu, 27 Aug 2009 13:12:28 +0000 (15:12 +0200)
committerMalte S. Stretz <mss@apache.org>
Thu, 27 Aug 2009 13:12:28 +0000 (15:12 +0200)
bos2k9.vhd
bos2k9_globals.vhd
bos2k9_pump.vhd

index 1c75791..ac58024 100644 (file)
@@ -133,7 +133,8 @@ architecture board of bos2k9 is
   component bos2k9_pump is
     generic(
       clock_divider  : positive  := ser_clock_div_c;
-      parity_enabled : std_logic := '1');
+      parity_enabled : std_logic := ser_parity_enabled_c;
+      parity_type    : std_logic := ser_even_parity_c);
     port(
       clock : in  std_logic;
       reset : in  std_logic;
index 710dfdc..89ace0b 100644 (file)
@@ -34,6 +34,12 @@ package bos2k9_globals is
   constant ser_115200_c : positive := 434;
   -- Choose one.
   constant ser_clock_div_c : positive := ser_9600_c;
+
+  constant ser_odd_parity_c  : std_logic := '0';
+  constant ser_even_parity_c : std_logic := '1';
+
+  constant ser_parity_enabled_c : std_logic := '1';
+  constant ser_parity_type_c    : std_logic := ser_even_parity_c;
   
   type ser_bus_t is record
     rx : std_logic;
index 7551c85..eb9bfaf 100644 (file)
@@ -18,7 +18,8 @@ use work.bos2k9_globals.all;
 entity bos2k9_pump is
   generic(
     clock_divider  : positive;
-    parity_enabled : std_logic := '1');
+    parity_enabled : std_logic := '1';
+    parity_type    : std_logic := '0');
   port(
     clock : in  std_logic;
     reset : in  std_logic;
@@ -32,10 +33,11 @@ end bos2k9_pump;
 -----------------------------------------------------------------------
 
 architecture rtl of bos2k9_pump is
-     component rs232_send is
+    component rs232_send is
     generic(
       clock_divider  : positive  := clock_divider;
-      parity_enabled : std_logic := parity_enabled);
+      parity_enabled : std_logic := parity_enabled;
+      parity_type    : std_logic := parity_type);
     port(
       clk : in  std_logic;
       rst : in  std_logic;
@@ -82,6 +84,7 @@ begin
   txb <= busy_s or txn;
   
   -- Just to be sure, wait until the second byte was read.
+  --otrg_s <= txn;
   otrg_s <= iadr_s(1);
   
   strg_s <= '1' when state_s = send_state_c