Advertisement
Guest User

Untitled

a guest
Nov 21st, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.47 KB | None | 0 0
  1. library ieee;
  2. use ieee.std_logic_1164.all;
  3. use ieee.numeric_std.all;
  4. entity top_level is
  5. port(
  6. ledr : out std_logic;
  7. clk50,reset_n,rx_in, key2, key1 : in std_logic
  8. );
  9. end entity;
  10.  
  11. architecture str of top_level is
  12.  
  13. signal data_int : std_logic_vector(7 downto 0);
  14. signal valid_int : std_logic;
  15.  
  16. component serial_uart is
  17. generic(
  18. g_reset_active_state : std_logic := '0'; --changed to active low
  19. g_serial_speed_bps : natural range 9600 to 115200 := 9600;
  20. g_clk_period_ns : natural range 10 to 100 := 20; -- 50 MHz standard clock
  21. g_parity : natural range 0 to 2 := 0); -- 0 = no, 1 = odd, 2 = even
  22. port(
  23. clk : in std_logic;
  24. reset : in std_logic; -- active high reset
  25. rx : in std_logic;
  26. tx : out std_logic;
  27.  
  28. received_data : out std_logic_vector(7 downto 0); -- Received data
  29. received_valid : out std_logic; -- Set high one clock cycle when byte is received.
  30. received_error : out std_logic; -- Stop bit was not high
  31. received_parity_error : out std_logic; -- Parity error detected
  32.  
  33. transmit_ready : out std_logic;
  34. transmit_valid : in std_logic;
  35. transmit_data : in std_logic_vector(7 downto 0));
  36. end component serial_uart;
  37.  
  38. component oled_ctrl is
  39. port(
  40. clk, reset_n, onled, offled, valid : in std_logic;--clock(50), reset(key3), start led(key2), turn off led(key1), valid data input
  41. Led_rs,led_e,led_rw : out std_logic;--register select, enable, read/write
  42. data_out : out std_logic_vector(7 downto 0);--8bit bus to led
  43. r_data : in std_logic_vector(7 downto 0) --8bit bus who take charcater data from serial uart
  44. );
  45. end component oled_ctrl;
  46.  
  47. begin
  48.  
  49. s_uart : serial_uart
  50. port map(
  51. clk => clk50,
  52. reset => reset_n,
  53. rx => rx_in,
  54. received_error => ledr,
  55. received_valid => valid_int,
  56. received_data => data_int,
  57. tx => open,
  58. received_parity_error => open,
  59. transmit_ready => open,
  60. transmit_data => "00000000",
  61. transmit_valid => '0');
  62.  
  63. s_oled : oled_ctrl
  64. port map(
  65. clk => clk50,
  66. reset_n => reset_n,
  67. onled => key2,
  68. offled => key1,
  69. r_data => data_int,
  70. valid => valid_int,
  71.  
  72. data_out => open,
  73. led_rs => open,
  74. led_e => open,
  75. led_rw => open );
  76.  
  77. end architecture str;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement