16x2 LCD display

S

sachin

Guest
Hi,

I am going to use ML505 board on which a 16x2 LCD display is mounted
for text display.
As per my application, I wanna to display address as well as respected
data on these 2 lines, means one line will display address and 2nd
line will display the data contains of that address location.
The data interface to the LCD is connected to the FPGA to support 4-
bit mode only and my input data is 32-bits. So please anyone has
reference the same? I wanna to design a verilog code for the same.
Any help is highly appreciated.

Thx,
Sachin
 
sachin wrote:
Hi,

I am going to use ML505 board on which a 16x2 LCD display is mounted
for text display.
As per my application, I wanna to display address as well as respected
data on these 2 lines, means one line will display address and 2nd
line will display the data contains of that address location.
The data interface to the LCD is connected to the FPGA to support 4-
bit mode only and my input data is 32-bits. So please anyone has
reference the same? I wanna to design a verilog code for the same.
Any help is highly appreciated.

Thx,
Sachin
The ML505 is a Xilinx development board so use the Xilinx information at
your disposal. The PicoBlaze processor is probably already configured
to run a demo that drives the display. I expanded on the PicoBlaze code
for my Spartan-3E development board with ease. The board's User Guide
has complete information on the display operation.

Your 32-bit values are binary. Your data probably is better represented
by hexadecimal values. YOU need to do the conversion from binary to hex
and display those values in the locations you want. It shouldn't take
long for you to alter what they already have to accomplish your own goals.

I was considering getting rid of the PicoBlaze and just use the
appropriate control directly from Verilog to accomplish the same
initialization and character drive. I dropped the approach when the
complexity became more obvious (doable, just lots of detail) and the
PicoBlaze solution is already there to a large extent.

Go for the teeny processor!

- John_H
 
sachin schrieb:


I am going to use ML505 board on which a 16x2 LCD display is mounted
for text display.
As per my application, I wanna to display address as well as respected
data on these 2 lines, means one line will display address and 2nd
line will display the data contains of that address location.
The data interface to the LCD is connected to the FPGA to support 4-
bit mode only and my input data is 32-bits. So please anyone has
reference the same?
I strongly guess there is a standard display controller used. Find out
which one and get a data sheet. Don't expect the that the display
manufacturer has a usable data sheet - go for the controller.

Ralf
 
On Nov 22, 8:24 pm, John_H <newsgr...@johnhandwork.com> wrote:
sachin wrote:
Hi,

I am going to use ML505 board on which a 16x2 LCD display is mounted
for text display.
As per my application, I wanna to display address as well as respected
data on these 2 lines, means one line will display address and 2nd
line will display the data contains of that address location.
The data interface to the LCD is connected to the FPGA to support 4-
bit mode only and my input data is 32-bits. So please anyone has
reference the same? I wanna to design a verilog code for the same.
Any help is highly appreciated.

Thx,
Sachin

The ML505 is a Xilinx development board so use the Xilinx information at
your disposal. The PicoBlaze processor is probably already configured
to run a demo that drives the display. I expanded on the PicoBlaze code
for my Spartan-3E development board with ease. The board's User Guide
has complete information on the display operation.

Your 32-bit values are binary. Your data probably is better represented
by hexadecimal values. YOU need to do the conversion from binary to hex
and display those values in the locations you want. It shouldn't take
long for you to alter what they already have to accomplish your own goals.

I was considering getting rid of the PicoBlaze and just use the
appropriate control directly from Verilog to accomplish the same
initialization and character drive. I dropped the approach when the
complexity became more obvious (doable, just lots of detail) and the
PicoBlaze solution is already there to a large extent.

Go for the teeny processor!

- John_H
Hi John,

thanks for your valuable reply.
I just wana to know that is there any reference verilog code is
available to control LCD display directly from verilog and not using
the in-built controller. i am not sure about what they have been
supporting for this LCD display.
If I will go to use their in-built controller for my data text display
then what and where exactly I have to do need changes?
I think you got my point... Please let me know as soon as possible as
my work is avail around. I guess it would be easy to change as per my
req. in the defined code by xilinx.

Rgds,
Sachin
 
sachin wrote:
Hi John,

thanks for your valuable reply.
I just wana to know that is there any reference verilog code is
available to control LCD display directly from verilog and not using
the in-built controller. i am not sure about what they have been
supporting for this LCD display.
If I will go to use their in-built controller for my data text display
then what and where exactly I have to do need changes?
I think you got my point... Please let me know as soon as possible as
my work is avail around. I guess it would be easy to change as per my
req. in the defined code by xilinx.

Rgds,
Sachin
There is no Verilog-only reference that I'm aware of. I was going to
roll my own - "how hard could it be?" The trouble is it's pretty
involved. It's doable, but involved. Because of this, the early Xilinx
use of the PicoBlaze controller is a very nice implementation. If
you've never done assembly language, it may be a stretch for you but
it's really quite simple to modify and compile. I translated the VHDL
PicoBlaze core to Verilog (pretty simple) then found out someone at
Xilinx had done the same thing.

Complex control is best done with a processor. The PicoBlaze is a teeny
tiny processor with an assembler that's easy to use. The code that came
with the Spartan-3E development board already did the initialization and
had several useful elements that I reused in my own code. I added a
binary-to-decimal converter and had pretty much everything I could want.
It took me a few hours to have the display doing everything I wanted
with the PicoBlaze. I'm sure it would have taken a couple days to get
my own Verilog-based system up and running and any changes I wanted to
make would be hours more rather than minutes.

Please, consider using the PicoBlaze approach supplied by Xilinx to
drive that display. I know of no support available to you otherwise
(except for the data sheet for the controller pointed out in the
development board User Guide and that's just the basics).

- John
 
On Nov 26, 6:19 am, John_H <newsgr...@johnhandwork.com> wrote:
sachin wrote:

Hi John,

thanks for your valuable reply.
I just wana to know that is there any reference verilog code is
available to control LCD display directly from verilog and not using
the in-built controller. i am not sure about what they have been
supporting for this LCD display.
If I will go to use their in-built controller for my data text display
then what and where exactly I have to do need changes?
I think you got my point... Please let me know as soon as possible as
my work is avail around. I guess it would be easy to change as per my
req. in the defined code by xilinx.

Rgds,
Sachin

There is no Verilog-only reference that I'm aware of. I was going to
roll my own - "how hard could it be?" The trouble is it's pretty
involved. It's doable, but involved. Because of this, the early Xilinx
use of the PicoBlaze controller is a very nice implementation. If
you've never done assembly language, it may be a stretch for you but
it's really quite simple to modify and compile. I translated the VHDL
PicoBlaze core to Verilog (pretty simple) then found out someone at
Xilinx had done the same thing.

Complex control is best done with a processor. The PicoBlaze is a teeny
tiny processor with an assembler that's easy to use. The code that came
with the Spartan-3E development board already did the initialization and
had several useful elements that I reused in my own code. I added a
binary-to-decimal converter and had pretty much everything I could want.
It took me a few hours to have the display doing everything I wanted
with the PicoBlaze. I'm sure it would have taken a couple days to get
my own Verilog-based system up and running and any changes I wanted to
make would be hours more rather than minutes.

Please, consider using the PicoBlaze approach supplied by Xilinx to
drive that display. I know of no support available to you otherwise
(except for the data sheet for the controller pointed out in the
development board User Guide and that's just the basics).

- John- Hide quoted text -

- Show quoted text -

The LCD Module spec is on the Xilinx website under the parts list for
the board. I have been wresling with something similar and have been
unable to find the interface information for the ML505 board. I
believe ths Spartan board is different. I would like to do the
interface in Verilog also. From the looks of the LCD module spec the
interface to it is not a big thing for a hardware guy like me.
However, there is a CPLD on the ML505 board between the FPGA and the
LCD module. I am attempting to get the info from Xilinx.

john B
 

Welcome to EDABoard.com

Sponsor

Back
Top