lcd controller - how to realize it?

Apr 11, 2005 6 Replies

Hi,



I want to write an interface in vhdl for a HD44780 LCD Controller. What is the best methodology to do that? Moore-Automat? How should I realize the neccessary wait operations? Especially the initialization of the LCD requires about 7 steps to be performed in order with some waits in between....



regards, Benjamin


I made an interface with PicoBlaze (made the interface in assembler). It was for a project at school.

"Benjamin Menküc" skrev i meddelandet news:d3e6ri$okp$05$ snipped-for-privacy@news.t-online.com...

Hi Elektro,

In my design I dont have no processor, therefore I am not sure if it is worth is setting up a processor just for the lcd...

A good thing would be a little place in the ram, where I write my two lcd lines and a seperate process that writes the lines to the lcd each time something in the lcd-ram-area changes.

Maybe a moore state machine would be the right solution....

regards, Benjamin

Look here:

formatting link

This gave me some ideas to implement an interface to a circuit that required some steps to initialize and then a loop to get some values from.

I made a state machine that executed instructions from a ROM. Maybe you could do it like that? "Benjamin Menküc" skrev i meddelandet news:d3eb55$72q$04$ snipped-for-privacy@news.t-online.com...

Hi,

I have now my first layout of my lcd state machine ready. Any comments and hints are welcome.

regards, Benjamin

entity lcd is port ( clk : in STD_LOGIC; Rst : in STD_LOGIC; LCD_da : out STD_LOGIC_vector(7 downto 0); LCD_en: out STD_LOGIC; LCD_re: out STD_LOGIC ); end lcd;

architecture Behavioral of lcd is signal x: std_logic; signal arg : std_logic; type Zustaende is (init1,init2,init3); signal akt_zustand,naechster_zustand:Zustaende; signal sending,go_send:std_logic;

--signal count: integer; begin

NZ:process(akt_zustand,arg) begin case akt_zustand is when init1 =>

naechster_zustand naechster_zustand naechster_zustand

Why don't you get it at :

formatting link

Free, works very nicely, and does a lot of the ugly and slow sequency required by these old drivers.

Bert Cuzeau

Benjam> Hi,

Hi,

very nice, that is exactly what I am looking for.

Thank You!

regards, Benjamin

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required