Hope you guys liked my last post on Graphical Lcd 128x64. In that post i explained what is graphical Lcd, it's internal block diagram and commands, then a program is there to demonstrate the working of Graphical Lcd. We used mikroC compiler for writing our program, but now in post i will share my Graphical Lcd libraries with you which are written for xc8 compiler in MPLAB-X development environment. The libraries functions are inspired from mikroC functions and i tried to keep most of the functions similar to the one available in mikroC compiler. In this version most of the basic functions are written, which are as follow:
In this tutorial i will also show how to generate fonts using GLCD Font Creator and how to generate codes for Bitmap Images using Glcd Bitmap Editor. These both things are shown in video embed below. Note: Glcd Bitmap Editor comes with mikroE compilers, so you have to download any mikroE compiler to use this software for free. Demo Images
Welcome Screen
Bitmap Image Display
Rectangle Display
Horizontal Lines Display
Vertical Lines Display
Line Display
Circle Display
Concentric Circles Display
Fonts Display
Watch the following video, to get a proper understanding of the libraries, font generation, and generating codes for images.
I'm trying to run the code on a PIC4520 installed in an EasyPIC4 board. I've replaced the configuration, reset the control pins to RB0-5, and even tried disabling interrupts but still get a blank screen.
I received a notification from youtube, regarding some delay issue. But when i tried to reply you there, i didn't see any comment. My question: Are these problems( this one and in YouTube comments) are solved now??
if not.. then please mail me your code at matlab.academy@gmail.com I will check it.
Regarding the delay issue, i tested the library on real hardware also and it was working properly.
Hi, I only just found out you replied. I thought I had commented on the youtube video but I can't see it either. It is possible I deleted the comment once I determined that the problems I was writing about were caused by my alterations not your library.
Anyway: It turns out that the display variant I'm using has mutually exclusive chip selects, e.g. it won't allow for enabling both sides at once to allow for extra fast clearing. The part is MIDAS MC128064B6W-BNMLW, also marked 12864ED1621Y
I believe the one Mikroe use has that same property too as their driver works fine with my display.
Where I altered things I wanted to find out how fast I could write, and whether or not I should poll the display's BUSY flag as described in the datasheet. What I found was that timed write (non polled) appeared to be supported but it isn't stated as clearly as with a character LCD datasheet. With a PIC clocked at 8MHz it was very hard to "outrun" the display when writing data to it as the code between writes takes longer than the display. There were only a few places in the read byte code and at initialization where timing was important.
I single stepped into the Mikroe driver and as far as I can tell it is timed, I couldn't find a busy poll.
it was a wonderful chance to visit this kind of site and I am happy to know. thank you so much for giving us a chance to have this opportunity.. best-19-inch-tvs
I'm trying to run the code on a PIC4520 installed in an EasyPIC4 board. I've replaced the configuration, reset the control pins to RB0-5, and even tried disabling interrupts but still get a blank screen.
ReplyDeleteI received a notification from youtube, regarding some delay issue.
DeleteBut when i tried to reply you there, i didn't see any comment.
My question:
Are these problems( this one and in YouTube comments) are solved now??
if not.. then please mail me your code at matlab.academy@gmail.com
I will check it.
Regarding the delay issue, i tested the library on real hardware also and it was working properly.
Hi, I only just found out you replied. I thought I had commented on the youtube video but I can't see it either. It is possible I deleted the comment once I determined that the problems I was writing about were caused by my alterations not your library.
DeleteAnyway: It turns out that the display variant I'm using has mutually exclusive chip selects, e.g. it won't allow for enabling both sides at once to allow for extra fast clearing. The part is MIDAS MC128064B6W-BNMLW, also marked 12864ED1621Y
I believe the one Mikroe use has that same property too as their driver works fine with my display.
Where I altered things I wanted to find out how fast I could write, and whether or not I should poll the display's BUSY flag as described in the datasheet. What I found was that timed write (non polled) appeared to be supported but it isn't stated as clearly as with a character LCD datasheet. With a PIC clocked at 8MHz it was very hard to "outrun" the display when writing data to it as the code between writes takes longer than the display. There were only a few places in the read byte code and at initialization where timing was important.
I single stepped into the Mikroe driver and as far as I can tell it is timed, I couldn't find a busy poll.
how can i open this code?? i cant open this with codevision or notepad++
ReplyDeleteExtract zip folder and then go inside directory you will be able to see the files.
DeleteIt's very simple task.
how could i open this code ?? i cant open code with codevision or notepad :(
ReplyDeleteit was a wonderful chance to visit this kind of site and I am happy to know. thank you so much for giving us a chance to have this opportunity.. best-19-inch-tvs
ReplyDeleteWhat license is this released under. Sourceforge actually requires one.
ReplyDeleteYou might consider CC0 if anyone is allowed to do what they like with it.
Thanks for your valuable suggestion, I will try to use these licenses in my upcoming projects.
DeleteCan I get the link of the code for the same??
ReplyDeletePlease check the post again, Download Link is already available at the bottom of the page.
DeleteThanks
Can we convert this code for PIC16F877A. Since in this uC there is no LAT register. Please help....
ReplyDeleteCan we convert this code for PIC16F877A. Since in this uC there is no LAT register. Please help....
ReplyDelete