LCD graphics controller

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
I am about to start a project using a Hitachi (actually Renesas)
graphics LCD controller - HD66789R.

I've never done any graphics programming before and when reading the
data sheet I noticed that the controller has graphics bit operations
to "significantly lessen the graphics processing load on software".

The controller uses 18 bits per GRAM location (8*R, 8*G, 8*B) for
262,144 colours

The graphics bit operations include:
1. Write data mask function that selectively rewrites some of the bits
of 18-bit write data.

2. Conditional rewrite function that compares the write data sent from
the microcomputer and the data in the compare register and writes the
data only when a condition is satisfied.

Can somebody with experience of this kind of controller explain
exactly how these bit operations are intended to be used to reduce
software overhead ?

Re: LCD graphics controller
Steve,

Quoted text here. Click to load it

I'm not sure about (1), but (2) is commonly used in games for transferring
(bit-blitting) images (sprites) with transparency to the video memory.
Typically you designate one color (RGB triplet) to be transparent and when
copying images to the video memory you only copy the pixels that differ from
the transparent color thus preserving the background. This can also be used
for text. For example, let's say you want to display the letter "A" but
preserve the underlying background. The character "A" is stored as a
rectangular image somewhere in memory.  So in this image you mark all pixels
that are not part of the character itself as transparent and the hardware
will not modify the corresponding background pixels. Normally, if you do not
have the conditional write in hardware you have to inspect every pixel or
perform a two-stage image transfer by using an "and" mask and an "or" mask.

HTH,
-- Georgi




Re: LCD graphics controller
Wow. Steve, you will soon be either a graphics wiz or a basket case. Most guys
that ;have never done grahiocs' start with a 2 line text lcd, then maybe got to
a small monochrome graphics lcd, port some minimalist graphics functions like
draw lines, draw text from some similare micro or similar lcd, THEN maybe try
to push some of that functionality into a more complex lcd controller that will
handle pages, text and graphics, and COLORS. That subject alone would be a
thick book. There must be someone that understands how to draw rgb colors
fast... thats how those hw graphics cards work... I think you should dl and try
the Scitech MGL graphics library... it will do EVERY resolution and color
combination, comes with MANY examples, and C SOURCE. Or just buy an expensive
graphics library for your cpu and controller and study the graphics.h file to
learn all the functions and their paramaters. Good luck!


Re: LCD graphics controller
Quoted text here. Click to load it

Some operations are used 2 xor a "moving" object into the bitmap such as
a cursor or depressed button, then reverse it with the same bitblit
operation.

Site Timeline