Searching \ for '[EE]: LCD panel init problems' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/lcds.htm?key=lcd
Search entire site for: 'LCD panel init problems'.

Exact match. Not showing close matches.
PICList Thread
'[EE]: LCD panel init problems'
2001\10\31@170529 by Jeff DeMaagd

flavicon
face
I have a 2x20 character LCD panel that doesn't seem to want to init properly
on some power-ups.  We do have it and some 4x4 capacitive keypad circuitry
connected to the main board by a fairly scandard type 6" / 15cm long ribbon
cable.  Sometimes it powers up and inits properly, sometimes it displays
garbage.  Once it starts fine, it runs fine until shutdown.  Once garbage,
always garbage until shutdown.  A power cycling might change the situation,
but that is not guaranteed.

Should I try to add some a big bypass cap or check something else?  All the
ICs and the panel seems
to be properly bypassed to me.  I have also tried the power-up timer on the
PIC too, with little change.

Any general recommendations?  Thanks!

Jeff

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2001\10\31@173736 by Simon Stirley

flavicon
face
The datasheet I've got for LCD controllers recommends sending 0x30 three
times before using the display, it doesn't explain what's magic about 30 hex
though ;-)  worth a try I guess ..

HTH, Simon.

> {Original Message removed}

2001\10\31@181925 by Bob Blick

face
flavicon
face
On Wed, 31 Oct 2001, Jeff DeMaagd wrote:

> I have a 2x20 character LCD panel that doesn't seem to want to init properly
> on some power-ups.  We do have it and some 4x4 capacitive keypad circuitry
> connected to the main board by a fairly scandard type 6" / 15cm long ribbon
> cable.  Sometimes it powers up and inits properly, sometimes it displays
> garbage.  Once it starts fine, it runs fine until shutdown.  Once garbage,
> always garbage until shutdown.  A power cycling might change the situation,
> but that is not guaranteed.

Usually the times I have those problems is when I don't have big enough
delays - either before first talking to the display(give it time to reset)
and between each command(some commands take a long time to execute).

Hope this helps.

Cheers,

Bob Blick

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2001\10\31@182452 by Lawrence Lile

flavicon
face
Boy, I have the same problem.  A real showstopper when you go to demonstrate
a prototype.  Usinf SEETRON 2X16 character LCD's.  Anybody got an idea?

--Lawrence

{Original Message removed}

2001\10\31@183809 by Gennette, Bruce
flavicon
face
Hitachi type LCDs are fairly old technology.  Even newer clones faithfully
copy the original timing specifications - which are VERY exacting.

At startup you either have to have the voltage powering the display rise at
a very exact rate, or . . .

Wait until after the chip should have initiallized, then hit it with 3
resets in a row, with the correct pauses for each reset command to be
executed.  After the 3 'reset to 8bit, normal cursor and movement
directions' commands (0x30) you then should set your desired mode(s), turn
off then turn on the display and clear & home the display.  This all takes
less than half a second and ensures a consistent startup.

Bye.

{Original Message removed}

2001\10\31@183827 by David VanHorn

flavicon
face
At 05:22 PM 10/31/01 -0600, Lawrence Lile wrote:
>Boy, I have the same problem.  A real showstopper when you go to demonstrate
>a prototype.  Usinf SEETRON 2X16 character LCD's.  Anybody got an idea?

This is symptomatic of improper timing of signals.
Can you toss some nops into the lowest level routines, and stretch out the
setup and hold times?

It could be bounce and ringing on the cable.
A quick check would be to add a series network of 0.1uF and 120 ohm
resistors to each signal line.
This won't be a perfect match, but it's hard to measure cable impedance
through email :)

--
Dave's Engineering Page: http://www.dvanhorn.org

Got a need to read Bar codes?  http://www.barcodechip.com
Bi-directional read of UPC-A, UPC-E, EAN-8, EAN-13, JAN, and Bookland, with
two or five digit supplemental codes, in an 8 pin chip, with NO external parts.

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2001\10\31@184016 by Steve Campbell

flavicon
face
Are you using it in 4 or 8 bit mode?  4 bit is a little harder to init but
there are many sources for LCD code available.  Check for some sample code
and compare your init code with other's.


{Original Message removed}

2001\10\31@200253 by Jinx

face picon face
> Any general recommendations?  Thanks!
>
> Jeff

I wrote this a little while ago and can't honestly remember if I
optimised the timing routines, but it does work. Compare it
to what you have and see if you get anywhere

http://home.clear.net.nz/pages/joecolquitt/odometer.html

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2001\10\31@200651 by Jinx

face picon face
> Sometimes it powers up and inits properly, sometimes it displays
> garbage.  Once it starts fine, it runs fine until shutdown

Is it possible you could be right on the edge of the timing limits and it's
a temperature or rise-time thing ?

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2001\10\31@205317 by Jeff DeMaagd

flavicon
face
----- Original Message -----
From: Steve Campbell <spam_OUTDigitalTechTakeThisOuTspamWORLDNET.ATT.NET>

> Are you using it in 4 or 8 bit mode?  4 bit is a little harder to init but
> there are many sources for LCD code available.  Check for some sample code
> and compare your init code with other's.

Actually, I am using 4 bit mode.  The prototype is going to show, I just
delivered it but when it comes back in a couple weeks I will try some of the
tricks made here, namely increasing delays, redoing init three times, etc.

Thank you for everyone's input.

Jeff

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.



'[EE]: LCD panel init problems'
2001\11\01@081121 by Wollenberg, Frank
flavicon
face
> -----Original Message-----
> From: Steve Campbell [.....DigitalTechKILLspamspam@spam@WORLDNET.ATT.NET]
> Sent: Thursday, November 01, 2001 12:27 AM
> To: PICLISTspamKILLspamMITVMA.MIT.EDU
> Subject: Re: [EE]: LCD panel init problems
>
> Are you using it in 4 or 8 bit mode?  4 bit is a little
> harder to init but
> there are many sources for LCD code available.  Check for
> some sample code
> and compare your init code with other's.
>
>

I'm using LCD in 8 bit mode only. 4 bit has the problem that both the
controlling uC and the LCD controller must be synchronous. LCD modules has
only internal reset circuitry, there's no external reset pin available. So
let us assume:

1)      both uC and LCD module are powered up correctly
2)      uC initialize the LCD module correctly
3)      uC must send 8 bit in two 4bit chunks to the LCD
4)      after the first 4bit, the uC only resets (powering problem, ESD are
what ever)
5)      the uC powers up and will initialize the LCD module

But: the LCD is awaiting the 2nd 4bit chunk, the uC is sending the first
4bit of initialization data.
I don't see, how to synchronize uC and LCD without resetting the LCD module
via a power down/up cycle.

Any ideas ?

Frank

GSP Sprachtechnologie GmbH
Frank Wollenberg
HW-Entwicklung
Tel.:   +49 (0)30 769929-78
Fax:    +49 (0)30 769929-12
eMail:  .....f.wollenbergKILLspamspam.....gsp-berlin.de


--
GSP Sprachtechnologie GmbH
Teltowkanalstr.1, D-12247 Berlin
Tel.:  +49 (0)30 769929-0
Fax:   +49 (0)30 769929-12
eMail: EraseMEInfospam_OUTspamTakeThisOuTgsp-berlin.de
Web:   http://www.gsp-berlin.de

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email listservspamspam_OUTmitvma.mit.edu with SET PICList DIGEST in the body


2001\11\01@091111 by SkinTech

flavicon
face
Frank,

This is the problem that I had some time ago. I discussed it at length with
a rep from Noritake in Frankfurt (@spam@yyoshidaKILLspamspamnoritake.de). It turned out that
the requirement to have at least 3 reset sequences (hex 30) at
initialisation is to avoid this particular problem. There are still things I
don't understand, for instance, the number of reset sequences could be any
odd number, but not even... Don't ask me why!
At the end I got everything working OK. I use vacuum fluorescent displays
(VFD) but the controller is equivalent to the hitachi types, the display is
LCD compatible, and as far as I know there is no operational difference,
except that the response is much faster and hence the delays are much
shorter then LCD's.

Cheers, Jan Didden

----- Original Message -----
From: "Wollenberg, Frank" <KILLspamF.WollenbergKILLspamspamGSP-BERLIN.DE>
To: <RemoveMEPICLISTTakeThisOuTspamMITVMA.MIT.EDU>
Sent: Thursday, November 01, 2001 2:09 PM
Subject: Re: [EE]: LCD panel init problems


> > {Original Message removed}

2001\11\01@115412 by James Paul

picon face
Frank,

What you say about synchronization may be true, but I've never had
anything like that happen to me, and I use 4 bit mode all the time.
The syncronization comes in by using the handshake signals provided
by the LCD Module (ie strobe).   As far as I can tell, there is no
reason to have the LCD controller and the microcontroller synchronized.
Let me know why you think what you said is true, and I'll definitely
listen.  I'm open to learning new things.  It's just that I've never
heard this before, nor have I experienced it.

                                                Regards,

                                                  Jim








>> {Original Message removed}

2001\11\01@150143 by Peter L. Peres

picon face
Do you use the prescribed software init sequence ? If not, then you need
it. Also make sure that you do not send data too fast. I have had garble
happen when I sent data too fast in an application where the ready bit was
not read back. The fast data combined to change the mode of the LCD
somehow.

So when I have this problem, first I slow the data down considerably, and
if that does not help, then I start troubleshooting elsewhere.

hope this helps,

Peter

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email spamBeGonelistservspamBeGonespammitvma.mit.edu with SET PICList DIGEST in the body


2001\11\02@035942 by Wollenberg, Frank

flavicon
face
Peter, James and Jan,

first of all let me say "Thank you for your responses.
I have taken a quick look over that, but no time for a long response.
I'm now out of business, will be back at Wednesday.
Then i will reply.

Best wishes,
Frank

GSP Sprachtechnologie GmbH
Frank Wollenberg
HW-Entwicklung
Tel.:   +49 (0)30 769929-78
Fax:    +49 (0)30 769929-12
eMail:  TakeThisOuTf.wollenbergEraseMEspamspam_OUTgsp-berlin.de



--
GSP Sprachtechnologie GmbH
Teltowkanalstr.1, D-12247 Berlin
Tel.:  +49 (0)30 769929-0
Fax:   +49 (0)30 769929-12
eMail: RemoveMEInfospamTakeThisOuTgsp-berlin.de
Web:   http://www.gsp-berlin.de

--
http://www.piclist.com hint: To leave the PICList
piclist-unsubscribe-requestEraseMEspam.....mitvma.mit.edu


2001\11\03@054853 by Benjamin Bromilow

flavicon
face
I'd recommend doubling all delays, particularly the init delay (30mS is
recommended with most LCD modules to allow the unit to switch on and calm
down). That *should* remove the problem. Then go through one by and one and
put them back to [recommended+10%] delay intervals..... If one of them
causes the problem then fiddle it till it works.
Not very high tech but worked for me in the past.

Ben

{Original Message removed}

2001\11\07@085432 by Wollenberg, Frank

flavicon
face
> This is the problem that I had some time ago. I discussed it
> at length with
> a rep from Noritake in Frankfurt (EraseMEyyoshidaspamnoritake.de). It
> turned out that
> the requirement to have at least 3 reset sequences (hex 30) at
> initialisation is to avoid this particular problem. There are
> still things I
> don't understand, for instance, the number of reset sequences
> could be any
> odd number, but not even... Don't ask me why!

Jan,
Thanks for your reply.
I have not used a LCD in 4bit mode anytime. The problem i've described, was
theoretically (is it?).
I have read the data sheet and it seems for me, that there is no chance to
re-initiate the LCD.
The command "function set" (0x30) is a regular command, which can be send to
the LCD at anytime in two 4bit chunks, 0x3 followed by 0x0.
How can the LCD differentiate between this regular command and the command
as part of an initialisation sequence ?
Furthermore the above initialisation sequence (3 times 0x30) are described
in the data sheet in a context of inproper powerup. In this situation
nothing can be supposed, every flip-flop can be set to any state. A good and
reliable initialisation sequence must the be used. Again my question, how
can the LCD differentiate ... ?

Let me explain this example:
                 uP                                                   LCD
   send MSB of 0x8x (set DDRAM address)         LCD receives 0x8 (MSB of
set DDRAM address)
   uP resets because of whatever                LCD is still working
   uP sends 0x3 (1st part of init sequence)     LCD receives 0x3 as LSB of
DDRAM address
   uP sends 0x3 (2nd part of init sequence)     LCD receives 0x3 as MSB of
fucntion set (8bit)
   uP sends 0x3 (3rd part of init sequence)     LCD receives 0x3 as LSB of
function set
--> uP sends 0x2 (set 4bit i/f)                  LCD receives 0x2 as MSB of
function set (4bit)
   uP sends MSB of 0x2x                         LCD receives 0x2 as LSB
   uP sends LSB of 0x2x (N and F)               LCD receives
0x0/0x04/0x08/0x0c as ????
   and so on

The initialisation sequence has not set the LCD into 4bit mode after the uP
was resetting, the controlling uP and the LCD are still out of sync. Have i
missed something ?
It seems for me that all should be ok if the marked line should not be
executed.

But that's all theory. I've never tested this. What the rep from Noritake
has said is the same as the datasheet explains, but i can't verify this from
my experience. Why any odd number of 0x3 ? It makes no sense for me.

Because i must build the hardware first and then program (and debug) them
(and there is no time for experiments), i have gone the best way and decided
for 8bit mode interface.

Frank

GSP Sprachtechnologie GmbH
Frank Wollenberg
HW-Entwicklung
Tel.:   +49 (0)30 769929-78
Fax:    +49 (0)30 769929-12
eMail:  RemoveMEf.wollenbergEraseMEspamEraseMEgsp-berlin.de


--
GSP Sprachtechnologie GmbH
Teltowkanalstr.1, D-12247 Berlin
Tel.:  +49 (0)30 769929-0
Fax:   +49 (0)30 769929-12
eMail: RemoveMEInfospam_OUTspamKILLspamgsp-berlin.de
Web:   http://www.gsp-berlin.de

--
http://www.piclist.com hint: To leave the PICList
RemoveMEpiclist-unsubscribe-requestTakeThisOuTspamspammitvma.mit.edu


2001\11\07@092629 by James Paul

picon face
Frank,

First let me say that the choice of 8 bit vs 4 bit is strictly a matter
of personal taste and/or IO pin limitations. Also, in some cases, there
are LCD displays out there that are 4 bit only.  I have some of these and
this is the main reason I use 4 bit interface so much.

Regarding your explanation, I'm not really sure what you're trying to tell
me.  When I power up the LCD/uC combination, The uC initializes first.
Then, when the program starts running, it initializes the LCD.  It does
this starting in 8 bit first.  I send this 3 times.  After that, I change
to 4 bit, and away we go.  If for some reason, the uC freezes or loses
it's place, the watchdog timer will reset the uC and again reinitialize
the LCD in the same manner as before.

Lastly, again I'd say that the problem (or scenario) you speak of could
possibly happen, but I have never experienced it.  And I've been using
LCD's for many years.  Both professionally, and at home in my own projects.
As for why it has to be sent 3 time, and not other numbers is beyond me.
I don't know why that is.  And I guess to me it doesn't really matter.
As long as I can in itialize the LCD and get it to do what I want, I
don't really mind a slightly lengthy and somewhat illogical initialization
sequence.

                                                Regards,

                                                  Jim




{Quote hidden}

--
http://www.piclist.com hint: To leave the PICList
KILLspampiclist-unsubscribe-requestspamBeGonespammitvma.mit.edu


2001\11\07@152946 by Quentin

flavicon
face
"Wollenberg, Frank" wrote:

> The command "function set" (0x30) is a regular command, which can be send to
> the LCD at anytime in two 4bit chunks, 0x3 followed by 0x0.
> How can the LCD differentiate between this regular command and the command
> as part of an initialisation sequence ?
Think of it this way:
0x030 => b'00110000'
Your 4 bit data line is connected to the 4 MSB data lines of the LCD.
The other 4 LSB of the LCD is tied to gnd.
So, when you put the MSB of b'0011' on the LCD there is already b'0000'
on the 4 LSB of the LCD (connected to gnd)
So in actual fact you are sending 8 bit data.
Sending b'0011' and the LCD thinks you are actually sending b'00110000'
After you did this 3 times, you tell the LCD, OK, now we are going to
use 4 bit comms.

Quentin

--
http://www.piclist.com hint: To leave the PICList
EraseMEpiclist-unsubscribe-requestspamEraseMEmitvma.mit.edu


2001\11\08@140606 by Wollenberg, Frank

flavicon
face
In response to Quentin [@spam@qsc@spam@spamspam_OUTICON.CO.ZA]

> Your 4 bit data line is connected to the 4 MSB data lines of the LCD.
> The other 4 LSB of the LCD is tied to gnd.
Correct.

> So, when you put the MSB of b'0011' on the LCD there is
> already b'0000'
> on the 4 LSB of the LCD (connected to gnd)
> So in actual fact you are sending 8 bit data.
> Sending b'0011' and the LCD thinks you are actually sending
> b'00110000'
> After you did this 3 times, you tell the LCD, OK, now we are going to
> use 4 bit comms.
Right, also. But you mean the init sequence after power-up of the LCD.

What i have described is the following situation:
 1. the uP and the LCD has been powered up correctly
 2. the LCD has been initialized by the uP into the 4-bit mode (as you have
explained)
 3. the uP starts sending a command to the LCD, which is 8bit wide, send in
2 chunks of 4bit.
 4. after the first chunk only! the uP is reset (brown-out, ESD or what
ever)
 5. the uP restarts
 6. the uP sends the init sequence (as in item 2)

The LCD doesn't know of the uP-reset. The LCD is getting any 4bit data,
which it must interpret in some (the correct) way. Because the LCD is in
4bit mode, it expects two 4bit chunks.

Frank

GSP Sprachtechnologie GmbH
Frank Wollenberg
HW-Entwicklung
Tel.:   +49 (0)30 769929-78
Fax:    +49 (0)30 769929-12
eMail:  spamBeGonef.wollenbergspamKILLspamgsp-berlin.de


--
GSP Sprachtechnologie GmbH
Teltowkanalstr.1, D-12247 Berlin
Tel.:  +49 (0)30 769929-0
Fax:   +49 (0)30 769929-12
eMail: .....Infospam_OUTspamgsp-berlin.de
Web:   http://www.gsp-berlin.de

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads


2001\11\08@141747 by Wollenberg, Frank

flavicon
face
In response to James Paul [TakeThisOuTjamesp.....spamTakeThisOuTintertex.net]

>  First let me say that the choice of 8 bit vs 4 bit is
> strictly a matter
>  of personal taste and/or IO pin limitations. Also, in some
> cases, there
>  are LCD displays out there that are 4 bit only.  I have some
> of these and
>  this is the main reason I use 4 bit interface so much.

Yes, most LCD can be used in 4 or 8 bit mode without any limitations.
I don't know of any 4bit only LCDs.

{Quote hidden}

This is the scenario which i have described.
Furthermore i assume the uP is reset after he was sending the first 4bit of
a command.
In this case i'm not sure that the LCD is interpreting the next nibbles in
the right way.

>  As long as I can in itialize the LCD and get it to do what I want, I
>  don't really mind a slightly lengthy and somewhat illogical
> initialization
>  sequence.

I agree with you for the 8bit mode, for 4bit i'm not sure.

Thanks for your long answer,
Frank

GSP Sprachtechnologie GmbH
Frank Wollenberg
HW-Entwicklung
Tel.:   +49 (0)30 769929-78
Fax:    +49 (0)30 769929-12
eMail:  TakeThisOuTf.wollenbergKILLspamspamspamgsp-berlin.de


--
GSP Sprachtechnologie GmbH
Teltowkanalstr.1, D-12247 Berlin
Tel.:  +49 (0)30 769929-0
Fax:   +49 (0)30 769929-12
eMail: .....InfospamRemoveMEgsp-berlin.de
Web:   http://www.gsp-berlin.de

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads


2001\11\08@150503 by Wollenberg, Frank

flavicon
face
Oops, i must answer my own reply.
It seems to me, that i'm wrong completely.
But in my example i have forgotten, that the second (and third, but that can
be ignored in this case) b'0011' would setup the LCD into 8bit mode. So
there are 2 scenarios:

Scenario 1:
                 uP                                                   LCD
 the uP is powered up                         LCD is powered up and set to
4bit mode
 uP resets because of whatever                LCD is still working in 4bit
mode
 uP sends 0x3 (1st part of init sequence)     LCD receives 0x3 as MSB of
function set
 uP sends 0x3 (2nd part of init sequence)     LCD receives 0x3 as LSB of
fucntion set, LCD setting to 8bit mode !!!
 uP sends 0x3 (3rd part of init sequence)     LCD receives 0x3x (function
set)
 here can be any number of additional 0x3 ....
 uP sends 0x2 (set 4bit i/f)                  LCD receives 0x2x (function
set), LCD setting to 4bit mode !!!
 uP sends MSB of 0x2x                         LCD receives 0x2 as MSB of
function set
 uP sends LSB of 0x2x (b'NF00')               LCD receives b'NF00'
 .
 uP and LCD are synchron

Scenario 2:
                 uP                                                   LCD
 the uP is powered up                         LCD is powered up and set to
4bit mode
 send MSB of 0x8x (set DDRAM address)         LCD receives 0x8 (MSB of set
DDRAM address)
 uP resets because of whatever                LCD is still working in 4bit
mode, waiting for LSB !!!
 uP sends 0x3 (1st part of init sequence)     LCD receives 0x3 as LSB of
DDRAM address
 uP sends 0x3 (2nd part of init sequence)     LCD receives 0x3 as MSB of
fucntion set
 uP sends 0x3 (3rd part of init sequence)     LCD receives 0x3 as LSB of
function set, LCD is set to 8bit mode !!!
 here can be any number of additional 0x3 ....
 uP sends 0x2 (set 4bit i/f)                  LCD receives 0x2x (function
set), setting LCD into 4bit mode !!!
 uP sends MSB of 0x2x                         LCD receives 0x2 as MSB of
function set
 uP sends LSB of 0x2x (b'NF00')               LCD receives b'NF00'
 .
 uP and LCD are synchron


Both scenarios would end up in a correctly initialized LCD, the uP and the
LCD are synchron together.

To Jan: You are correct, at least 3 0x3 are required for initialization.
 But i think it can be any (even or odd) number, as long as there are at
least 3 0x3.

Thanks to Jim and Quentin for your answers in depth.

Frank

GSP Sprachtechnologie GmbH
Frank Wollenberg
HW-Entwicklung
Tel.:   +49 (0)30 769929-78
Fax:    +49 (0)30 769929-12
eMail:  RemoveMEf.wollenbergspamspamBeGonegsp-berlin.de


--
GSP Sprachtechnologie GmbH
Teltowkanalstr.1, D-12247 Berlin
Tel.:  +49 (0)30 769929-0
Fax:   +49 (0)30 769929-12
eMail: spamBeGoneInfo@spam@spamspam_OUTgsp-berlin.de
Web:   http://www.gsp-berlin.de

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads


2001\11\08@160831 by SkinTech

flavicon
face
Frank,

Very neat! As I understood it, any 3-sequence init would just
resets the LCD, period.
That's why you would need at least a trio, to make it unambiguously a reset.
But maybe your explanation is the correct one.
The one remaining thing now is that my noritake contact clearly stated that
an odd number of inits, minimum three, is required, and that an even number
would not work. Looking at your sequences, a series of 4 inits would confuse
the LCD controller, right?

Jan Didden

{Original Message removed}

2001\11\08@181335 by Benjamin Bromilow

flavicon
face
From: Wollenberg, Frank <TakeThisOuTF.WollenbergspamspamGSP-BERLIN.DE>
> Yes, most LCD can be used in 4 or 8 bit mode without any limitations.
> I don't know of any 4bit only LCDs.
>

The CS550001 Seiko unit available from http://www.eio.com
Nice unit but only 4-bit mode

Ben

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads


2001\11\08@204733 by Gennette, Bruce

flavicon
face
I sent most of this before, but have added the 'Why 3 resets' part to
explain it more clearly . . .

Hitachi type LCDs are fairly old technology.  Even newer clones faithfully
copy the original timing specifications - which are VERY exacting.
At startup you either have to have the voltage powering the display rise at
a very exact rate, or . . .
Wait until after the chip should have initiallized, then hit it with 3
resets in a row, with the correct pauses for each reset command to be
executed.  After the 3 'reset to 8bit, normal cursor and movement
directions' commands you then should set your desired mode(s), turn off,
then turn on the display and clear & home the display.  This all takes less
than half a second and ensures a consistent startup.
The reset command for 8 wire data bus is 0x30 (high nibble) 0x00 (low
nibble), or 0x3000 (complete byte).  If the data bus has the lower nibble
tied to 0V it will always read it as 0x00 when in 8 bit mode (in 4 bit mode
the 2 nibbles have to be sent sequentially via the high nibble wires before
the controller will read the byte and act).
Why 3 resets for 4 wire data bus mode?
Because a 4 wire data bused controller may incorrectly initialise in 4 bit
mode, where it interprets the first 2 resets as 0x3030 (some weird
go-to-8-bit-mode configuration) and then (being in some 8 bit mode) sees the
third reset as 0x30 [0x00] which is a correct go-to-8-bit-mode command.
Why 3 resets for 8 wire data bus mode?
Just because.  Hey, it only takes 4 command words for the extra 2 resets to
be sure to be sure to be sure.

Bye.


       {Original Message removed}

2001\11\14@132142 by Wollenberg, Frank

flavicon
face
Hello Jan,
i was confused a little bit, but now i think we are meaning the same.

> Very neat! As I understood it, any 3-sequence init would just
> resets the LCD, period. That's why you would need at least
> a trio, to make it unambiguously a reset.
You are rigth.

> But maybe your explanation is the correct one.
> The one remaining thing now is that my noritake contact
> clearly stated that an odd number of inits,
> minimum three, is required, and that an even number
> would not work. Looking at your sequences, a series
> of 4 inits would confuse the LCD controller, right?
I'm looking on my explanation again, but i cannot verify this.

But what else? We are all saying that 3 inits would reset the LCD controller
under all circumstances. Ok, then why should we program 4 (or more) inits ?
I think we have discussed the reset problem in depth and have gotten a
result.
That's what we are willing to have.
Thanks again to all contributors.

Frank

--------------------------
GSP Sprachtechnologie GmbH
Frank Wollenberg
HW-Entwicklung
Tel.:   +49 (0)30 769929-78
Fax:    +49 (0)30 769929-12
eMail:  f.wollenbergEraseMEspamgsp-berlin.de


--
GSP Sprachtechnologie GmbH
Teltowkanalstr.1, D-12247 Berlin
Tel.:  +49 (0)30 769929-0
Fax:   +49 (0)30 769929-12
eMail: RemoveMEInfoEraseMEspamspam_OUTgsp-berlin.de
Web:   http://www.gsp-berlin.de

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics


2001\11\14@132821 by Wollenberg, Frank

flavicon
face
On Friday, November 09, 2001 2:41 AM, Gennette, Bruce
[@spam@bruce.gennetteRemoveMEspamEraseMETAFE.NSW.EDU.AU] wrote

> I sent most of this before, but have added the 'Why 3 resets' part to
> explain it more clearly . . .

This is a very very very good explanation which described the reset problem
in all variations and i'm agree with it completely.
A big thank you.

Frank

---------------------------
GSP Sprachtechnologie GmbH
Frank Wollenberg
HW-Entwicklung
Tel.:   +49 (0)30 769929-78
Fax:    +49 (0)30 769929-12
eMail:  EraseMEf.wollenbergspam@spam@gsp-berlin.de


--
GSP Sprachtechnologie GmbH
Teltowkanalstr.1, D-12247 Berlin
Tel.:  +49 (0)30 769929-0
Fax:   +49 (0)30 769929-12
eMail: @spam@Infospam_OUTspam.....gsp-berlin.de
Web:   http://www.gsp-berlin.de

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics


More... (looser matching)
- Last day of these posts
- In 2001 , 2002 only
- Today
- New search...