Menu

#66 1x16 Display: only first 8 characters

open
nobody
None
5
2003-07-24
2003-07-24
No

I have a 1x16 display with a hd44780 and it only displays
the first 8 characters of the first row.
If I give output to a second row, it shows the first 8
characters of this second row at the last 8 characters
of the first row.
Can anyone please help me with this? I don't feel like
going through the entire code.

Any solutions can be mailed to:
ronny_franken@hotmail.com

Thanks in advance!

Discussion

  • Markus Zehnder

    Markus Zehnder - 2003-07-24

    Logged In: YES
    user_id=57785

    The code that handles display positions is in
    LcdHD44780.cpp, method:
    void CLcdHD44780::SetPosition(short x, short y)

    and there's special handling of 16x1 LCDs:
    if (g_44780Cfg.iRows == 1)
    DDaddr += (x % 8) * (0x40 - 8);

    that's where I would start...
    Looks like your LCD has a differnt memory mapping.

    good luck

     
  • Nobody/Anonymous

    Logged In: NO

    Most older 16X1 are internally mapped as 8X2 second 8 chars
    at pos 192

     

Log in to post a comment.