Advertisement
mitbal

LCD Entity

May 30th, 2011
267
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VHDL 1.76 KB | None | 0 0
  1. library IEEE;
  2. use IEEE.STD_LOGIC_1164.ALL;
  3. use ieee.std_logic_unsigned.all;
  4.  
  5. entity LCD is
  6.     Port ( Clock : in  STD_LOGIC;
  7.            Nex : in  STD_LOGIC;
  8.            Prev : in  STD_LOGIC;
  9.               LED : out std_logic_vector (7 downto 0);
  10.            LCD_DB : inout  STD_LOGIC_VECTOR (7 downto 0);
  11.            LCD_E : out  STD_LOGIC;
  12.            LCD_RS : out  STD_LOGIC;
  13.            LCD_RW : out  STD_LOGIC);
  14. end LCD;
  15.  
  16. architecture Behavioral of LCD is
  17. component LCD_Driver is
  18.     Port ( Clock : in  STD_LOGIC;
  19.            New_Line : in  STD_LOGIC;
  20.            Reset : in  STD_LOGIC;
  21.            Home_Line : in  STD_LOGIC;
  22.            Write_Now : in  STD_LOGIC;
  23.            Data : in  STD_LOGIC_VECTOR (7 downto 0);
  24.               Busy : out std_logic;
  25.            LCD_DB : out  STD_LOGIC_VECTOR (7 downto 0);
  26.            LCD_E : out  STD_LOGIC;
  27.            LCD_RS : out  STD_LOGIC;
  28.            LCD_RW : out  STD_LOGIC);
  29. end component;
  30.  
  31. signal New_Line : std_logic;
  32. signal Reset : std_logic;
  33. signal Home_Line : std_logic;
  34. signal Write_Now : std_logic;
  35. signal Data : std_logic_vector(7 downto 0);
  36. signal Busy : std_logic;
  37.  
  38. type Vectors is array (1 downto 0) of std_logic_vector(7 downto 0);
  39. signal abc : Vectors := (0 => "00001111", 1 => "11110000");
  40. signal temp : std_logic_vector (7 downto 0) := abc(0);
  41.  
  42. type State_type is (Init, Print, Printb, Idle, Finish);
  43. signal State : State_type := Init;
  44.  
  45. signal counter : integer range 0 to 50000000;
  46. signal pointer : std_logic_vector(7 downto 0) := x"00";
  47. begin
  48.  
  49.     drv : LCD_Driver port map(Clock => Clock, New_Line => New_Line, Reset => Reset, Busy => Busy,
  50.                                         Home_Line => Home_Line, Write_Now => Write_Now, Data => Data, LCD_DB => LCD_DB,
  51.                                         LCD_E => LCD_E, LCD_RS => LCD_RS, LCD_RW => LCD_RW);
  52.  
  53. end Behavioral;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement