EA-DIP204B-6 , liquidCrystal.h Initialization, Displaying icons

Hello,

I need help with init and displaying icons on EA DIP-204B6NLW LCD display.
I am using current liquidCrystal.h library, with modified init.
Display connected with 4bit interface to mega2560, used pins 5-9, displaying text with setCursor is working fine.
This helped me a lot with init, especially last post:

...but, there are some unresolved points, which I cannot resolve:

  1. INIT/clear icons. Display is working, but with different init commands. I mean different in lcd datasheet vs. in library. When I put datasheet commands
command(0x30);      //8 bit data length, extension bit RE=0
delayMicroseconds(150);
command(0x06);  //Cursor Auto-Increment
delayMicroseconds(150);
command(0x36);  //8 bit data length, RE =1, blink enable BE =1
delayMicroseconds(150);

...etc,
according to "Example of initialisation, 8 bit mode" table in the datasheet, display is not working. But when I put init commands from last post of topic from the link above, everything is working. But these commands are different:

command(0x2C);      //Function set RE on
delayMicroseconds(150);
command(0x09);  //ext. Function set 4-line display
delayMicroseconds(150);
command(0x28);  //Function set RE off

This display has icons, which can be driven by controller commands. Everything is described in the datasheet, in the "Example program to display an icon (8 bit mode interface)" table.
I need to put clear icons command here in init because, like described in the datasheet, icons after power-on are set accidentaly. So everytime there are 8 icons which stayed ON after power-on. When I tried to clear icons with init sequence according to datasheet, icons still remain same or display init incorrectly and lines were shifted, characters deformated etc. Can someone explain me, what I am missing?

  1. DISPLAYING ICONS.
    Then I would like to control this icons in the program.
    If I tried to set some icon on/off in the program with command (xy) and respective delay, I have no success.
    I was using commands with delays according to execution time in the datasheet, for example :
command(0x42);      //Select letter symbol
delayMicroseconds(150);
command(0x10);      //Write $10 to display symbol
delayMicroseconds(150);

Can someone help me with this?
Thank you very much





eadip204_6.pdf (172.1 KB)

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.