View previous topic :: View next topic |
Author |
Message |
Fabri
Joined: 22 Aug 2005 Posts: 275
|
HDM64GS12.c driver and 128x64 GLCD [Solved] |
Posted: Mon Dec 30, 2013 3:27 pm |
|
|
Hi to all,
I used HDM64GS12.c driver and work fine with 128x64 GLCD.
Now I need to connect 128x64 GLCD using HC4094 shift register because I haven't enough port. My problem now is with HDM64GS12.c and especially "glcd_readByte" used inside function "glcd_pixel()". This because with shift register I can't read GLCD.
Can I bypass "glcd_readByte" ?
Another question is #define FAST_GLCD. It doesn't work also in parallel mode with PIC18F46K22.
I'm using compiler PCH V4.135.
Thanks in advance for help.
Regards,
Fabri |
|
![](templates/subSilver/images/spacer.gif) |
Ttelmah
Joined: 11 Mar 2010 Posts: 19369
|
|
Posted: Mon Dec 30, 2013 3:57 pm |
|
|
FAST_GLCD, requires at least 1KB of contiguous 'free' RAM on the PIC. How much is already used on your chip?.
With FAST_GLCD selected, you have to call glcd_update after writing, before anything will display.
In 'normal' mode, you have to be able to read a byte.
To set a specific pixel on the LCD, the byte containing that pixel is read, then the pixel is set, and the byte written back.
In fast mode this is done in the internal memory arrays, so doesn't need to read (note that the driver doesn't read if fast mode is selected).
Consider something like adding a second PIC to drive the LCD, and interface this via I2C to the 'master' chip.
Best Wishes |
|
![](templates/subSilver/images/spacer.gif) |
Fabri
Joined: 22 Aug 2005 Posts: 275
|
|
Posted: Mon Dec 30, 2013 4:23 pm |
|
|
Thanks for fast reply,
I'm doing some test also with PIC18F2520 connected with only GLCD with KS0108 driver. PIC ha 1500 bytes of ram used only for display. I think to have enought ram for FAST_GLCD.
Actually I also use parallel mode and in standard mode work fine. Otherwyse with FAST_GLCD it doesn't work and I don't understand why.
Where's possible problem ?
Regards,
Fabri |
|
![](templates/subSilver/images/spacer.gif) |
Fabri
Joined: 22 Aug 2005 Posts: 275
|
|
![](templates/subSilver/images/spacer.gif) |
Fabri
Joined: 22 Aug 2005 Posts: 275
|
|
Posted: Mon Dec 30, 2013 5:38 pm |
|
|
Solved
I forgot to call glcd_update every time I complete write the display.
Thanks for Help. |
|
![](templates/subSilver/images/spacer.gif) |
Ttelmah
Joined: 11 Mar 2010 Posts: 19369
|
|
Posted: Tue Dec 31, 2013 1:59 am |
|
|
Yes.
Second line of my post:
"With FAST_GLCD selected, you have to call glcd_update after writing, before anything will display."
It is relatively poorly documented.
Glad it is working now, and as you will see with this mode selected, there is no call to the read function.
Best Wishes |
|
![](templates/subSilver/images/spacer.gif) |
Fabri
Joined: 22 Aug 2005 Posts: 275
|
|
Posted: Tue Dec 31, 2013 4:42 am |
|
|
yes, I took a look at some examples after read your post.
Your helps are always precious.
Regards,
Fabri |
|
![](templates/subSilver/images/spacer.gif) |
|