Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Graphic LCD w PIC

Status
Not open for further replies.

heida11

New Member
Per request here is a bare bones program using the 16F628 to drive a
graphics LCD.

The init routines are specific to each LCD.

PICLCD.jpg is what one should see when the program (PICLCD)and the LCD are communicating.
PICLCD.txt is ASM.

Myproj.jpg is what I have been working on.

Hope this helps.
 

Attachments

  • lcdpic.txt
    14.8 KB · Views: 1,536
  • myproj.jpg
    myproj.jpg
    40.6 KB · Views: 2,901
  • lcdpic.jpg
    lcdpic.jpg
    35.2 KB · Views: 2,674
heida11 ,

New to this forum I didn't know you were working on this but Thanks! 8) This is one thing I will be adding to my current project when the time comes.
 
thanks heida11!!!!!!!!!!
 
I have a project based on that exact SED1330 controlled module.

Did you know there's a halftone available on that part? You just need to set up the pages right.

It kinda sucks that it flickers every time a write or read goes across the LCD bus. If you write or even read too often the display goes to crap. T6963C doesn't seem to have this problem.
 
Yes, thanks.
I am still developing the project and will begin to cleanup the display
after I finish the logic.

Some thoughts on the blink problem.

In my application I wait for a data packet from the transmitter and
write to the display whenever that occurs.

I am writing 268 characters at a time and have not seen a blink.

You do not have to issue a MWRITE for each character to be written.

In the file I posted is the method used to write data to the display.

I remember reading in the specs that a timing bit can be checked and the write issued when that bit is in the required state.

I would think that would only be necessary if you are hitting it on every LCD cycle.

I am running the PIC at 4MHZ. That is the approx timing of the display.

Hope this helps.
 
i want one

i would like to know the dimensions of the visible part of that Graph LCD.

Also does it have backlight??

and offcourse where to buy it..:D:D

regards,

TKS
 
That's one of these:
https://www.allelectronics.com/cgi-bin/category.cgi?category=search&item=LCD-101&type=store

It cannot accept a backlight, the backing is reflective and nothing will shine through (I know, I tried to insert an EL panel!).

SED1330 is in many ways a better controller than T6963. The autoincrement can be set to go not only +1 addr, but also -1 addr, +/- a whole row, or no incrementing. This is a lifesaver. It also supports a single halftone. You do not need to turn the data bus the other direction and read back status bits between every operation (an annoying requirement with T6963). But, like I mentioned, the SED1330 screen flickers and even dims when the a lot of writes are being done. It hits the halftone page the worst. I have a bunch of HUGE graphical fonts, some like 28 pixels high, and writing them on the screen, along with reading the current value of the screen data for bytes I need to only write part of, caused huge problems. Fortunately, being a bit wiser with the update speed, and not rewriting data already on the screen that didn't change, pretty effectively cured the issue.
 
I am using this LCD in a project but want to switch it to a blue/white colored model. Does anyone know of a blue/white alternative that will be relatively easy to swap it with?
 
I am also using this display (HG25504) in a project. Does anyone know how to display larger than the standard size (5x7) characters. I can draw them in graphical format, however this uses a lot of program memory space. In the datasheet, it says that the characters in the internal character generator ROM can be spaced out up the 8x16 pixels, but I haven't been able to figure this out. I am running this display with a PIC 18F4520.

Also, I am trying to draw a graph that plots a measured voltage over time. Any ideas on how to go about doing this?

Thanks
 
sanctuj said:
I am also using this display (HG25504) in a project. Does anyone know how to display larger than the standard size (5x7) characters. I can draw them in graphical format, however this uses a lot of program memory space. In the datasheet, it says that the characters in the internal character generator ROM can be spaced out up the 8x16 pixels, but I haven't been able to figure this out. I am running this display with a PIC 18F4520.

Also, I am trying to draw a graph that plots a measured voltage over time. Any ideas on how to go about doing this?

Thanks

IIRC that mode only spaced the chars further apart, but I could be wrong.
Graph? You'd just draw points. If you don't store the previous points in processor RAM, you can just draw it dot-by-dot. You'd want to read the existing screen byte, OR it with the desired bit, and write it back. That way you're sure not to write over any previous data points that might have been already plotted in the same screen byte.

Graphical format doesn't take all that much memory if you pack the data right, but it's a lot of work. 18F4520 has lots of memory!
 
IIRC that mode only spaced the chars further apart, but I could be wrong.

Thanks for the reply. That appears to be correct. All I have been able to do is space out the letters but they never have displayed in a larger size.


Graph? You'd just draw points. If you don't store the previous points in processor RAM, you can just draw it dot-by-dot. You'd want to read the existing screen byte, OR it with the desired bit, and write it back. That way you're sure not to write over any previous data points that might have been already plotted in the same screen byte.

I will try that for drawing the graph. I was trying to figure out a way to not have to keep a record of the previous points in RAM. Sometimes, the answer is so simple, you look right past it!
 
Status
Not open for further replies.

New Articles From Microcontroller Tips

Back
Top