big trouble LCD not HD 44780 ( but it is NT 3881)

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

Translate This Thread From English to

Threaded View
I have brought ( 20x 2) with backlight

http://www.uniworldtech.com/LMC%20Series/20x2/LMC-S2C20.htm



I have specially ask the sale-lady it must be HD 44780 compatible.


ALL the pins assignment of the same as a truly LCD module.

my truly LCD program does not work with the new SDEC LMC-SS2A20.


I really hate this. big trouble LCD not HD 44780 ( but it is NT 3881)



Re: big trouble LCD not HD 44780 ( but it is NT 3881)

Quoted text here. Click to load it

First glance tells me that the character ram address is different.
Line one normally starts at 0x00 and yours is at 0x80.
Line two normally starts at 0x40 and yours is at 0xC0.

There's probably more, I'll look closer... I'm bored..  :-)

Be Well,
Greg the Grog



Re: big trouble LCD not HD 44780 ( but it is NT 3881)
Quoted text here. Click to load it

$DEITY, cross-posted for 4 groups but they all seem to be on topic this
time!  Can't help you, but you do seem to be improving your aim. :)

--
Ron Sharp.
I just booted a 23 year old friend:
We've slightly trimmed the long signature. Click to see the full one.
Re: big trouble LCD not HD 44780 ( but it is NT 3881)
I have used your addresses that you told me.

it seems it is shifting out characters but it has "complete black spot" 5x8
pixel are appearing on each line.


please tell me more how to correct this.


I search alta-vista and deja.com in order to dig into the problem.



Re: big trouble LCD not HD 44780 ( but it is NT 3881)

Quoted text here. Click to load it
5x8

and the output is a mess.
garbage charaters embedded in each line.

Big trouble.



Re: big trouble LCD not HD 44780 ( but it is NT 3881)

Quoted text here. Click to load it


other strange thing,  I have not connected pin 15 and 16, it can display
display backlight.
Quoted text here. Click to load it



Re: big trouble LCD not HD 44780 ( but it is NT 3881)

Quoted text here. Click to load it
5x8

http://www.lcd-module.de/eng/pdf/zubehoer/nt3881d.pdf

GtG



Re: big trouble LCD not HD 44780 ( but it is NT 3881)

Quoted text here. Click to load it
From the data I've read, the NT3881 is a copy of the HD44780. I've used the
HD44780 based LCD's and the CGRAM address for line 1 is 0x80 and line 2 is
0xC0.

The fact that you are getting something displayed is proof that the
interface is working (in a fashion).

Try this:

Reset LCD.
Send one character to line 1 - is garbage displayed in correct location - ie
character 1 at position 1?

If so, then it may be a speed issue - try slowing down the communications to
the LCD.


Richard.



Re: big trouble LCD not HD 44780 ( but it is NT 3881)

Quoted text here. Click to load it

I recently had a problem with a LCD module that was supposed to be
HD44780 compatible. I cannot now recall if it used the NT3881. What I
found was when one read from the module to check the busy bit, the two
nibbles was swapped. Busy was at bit 3 in stead of bit 7. When I
changed my standard LCD code to swap the nibbles on a read of the
busy flag, everything worked as expected.

Regards
  Anton Erasmus


Re: big trouble LCD not HD 44780 ( but it is NT 3881)
Quoted text here. Click to load it




I can't locate the busy bit from nt 3881 pdf.

I wrote up the program to print "A" to lcd

but the trouble is
black spot 3 times then A then one japanese character then 8






Re: big trouble LCD not HD 44780 ( but it is NT 3881)

Quoted text here. Click to load it
People would probably be able to help you a little more if you gave us a
code snippet and also how you have wired your LCD: 4bit or 8bit interface?

As others have already pointed out the row addresses are 0x80 and 0xc0. The
UniWorldTech page says it is 5x8 matrix: are you setting this in the
function byte during initialisation?

    Andrew




Re: big trouble LCD not HD 44780 ( but it is NT 3881)

Quoted text here. Click to load it
The


#include "panel.h"
//  line 30    16 -----> 20   on 20th Sept 2003

void lcd_reset() {
  out_lcd(0x38,0); file://Display mode
  usleep(10000);
  lcd_clr(); file://Clear
  out_lcd(0x0c,0); file://Display on
  out_lcd(0x06,0); file://Entry mode
}

void lcd_clr() {
  out_lcd(0x01,0);
  usleep(3000);
}

void lcd_putc(char c)

file://No scrolling
void lcd_puts(const char *s) {
  int i,j;

  i=0;
  j=0;
  while(s[i]!='') {
    if(s[i]=='\n') {
      j=0;
/*     HD 44780                    */
     out_lcd(0x80|LINE2_ADDR,0);

/* NT 3881
       out_lcd(0x80|LINE2_ADDR,0);
*/

  }
    else if(j<20) {
      out_lcd(s[i],1);
      j++;
    }
    i++;
  }
}

void gotoxy(int x, int y) {
  int addr;

  if(y==0)
    addr=LINE1_ADDR;
  else
    addr=LINE2_ADDR;
  addr+=x;
/*  HD 44780 */
  out_lcd(0x80|addr,0);


/*   NT 3881

 out_lcd(0x80|addr,0);
*/
}


Quoted text here. Click to load it



Re: big trouble LCD not HD 44780 ( but it is NT 3881)
Quoted text here. Click to load it
All the other functions but this look OK. If this is an HD44780 clone then
you need to send the FUNCTION command (0x38) four times with a (>4.1ms)
delay between each. You must also wait at least 15ms after power is applied
before addressing the LCD. So, something like this:

void LcdReset (void)
{
    SystemPauseMs (15);

    /*
    ** Recommended startup sequence issues same command four times.
    */
    for (i = 0; i < 4; i++)
    {
        LcdCommand (HD_CMD_FUNCTION | C_FUNCTION_TWOLINE);
        /* Must wait at least 4.1ms */
        SystemPauseMs (5);
    }

    LcdCommand (HD_CMD_ENTRY | C_ENTRY_INC);
    LcdCommand (HD_CMD_DISPLAY | C_DISPLAY_DISPLAY);

}

I've used this on many LCDs without problems.

    Andrew



Re: big trouble LCD not HD 44780 ( but it is NT 3881)
Quoted text here. Click to load it

it is a long time since I last wrote LCD code,
but IIRC, shouldn't you be sending the reset/init
byte to the device 3 times first ?

a quick look through my assembler listing finds that
I send the lcd 0000011 three times, seperated by
a small-ish delay.

search for the datasheet on google (where i found
it many moons ago when i wrote the lcd interface).

hth
goose,

Re: big trouble LCD not HD 44780 ( but it is NT 3881)

Quoted text here. Click to load it
3881)
Quoted text here. Click to load it
a
interface?
Quoted text here. Click to load it
0xc0.


I broke one of the circuit and it is beyond repair. Monday I need to travel
and buy a compatible one ( hd 44780)



sorry to everyone. I could been more careful.






Site Timeline