LCDproc development and user support list

Text archives Help

[Lcdproc] More on Garbage Data using HD44780

Chronological Thread 
  • From: Dave Liquorice" <allsorts AT (Dave Liquorice)
  • Subject: [Lcdproc] More on Garbage Data using HD44780
  • Date: Thu Jan 6 01:01:01 2005

On Wed, 05 Jan 2005 11:38:22 -0600,
jblight AT

> I tried changing the Baud rate, Stop, Parity, and Data bits to a
> multiple of combinations in minicom. (Thanks, Dave)

I don't know what the HD44780 driver does with the com port but setting
it externally is no guarantee that LCDProc doesn't adjust it when it
starts up...

> It seems to work best on 9600 baud rate, Data 8, Parity Even, Stop 1.
> Don't ask why. At least snips of good data show up, then.

For no particular reason 8 data even parity 1 stop doesn't "feel"
right. 8 data no parity 1 stop or or 7 data even parity 1 stop do, if
only so the whole thing fits in an 8 bit word...

In hd44780-picanlcd.c try editing lines 95 and 96 to look like:

portset.c_cflag &= ~( CSIZE | CRTSCTS );
portset.c_cflag |= CS8 | CREAD | CLOCAL | PARENB ;

This disables parity checking I think, it's a while since I wrote my VFD
serial driver and that is one of the changes I had to make.

> I can echo perfect, uncorrupted data directly through the serial port.

At what settings?

> Call me an idiot, but it looks like the LCD is set up somehow to be a
> 40x2 instead of a 16x2 display.

That PIC may well have a control code sequence to set the size of the
display it is attached to. The "random" characters sent to it may have
adjusted such a setting. Power cycle, though of course it may come up in
the wrong mode and need to be told that it has a 16x2 display...


Archive powered by MHonArc 2.6.18.

Top of page