Discussion in 'General Science & Technology' started by cato, Jul 19, 2006.

Not open for further replies.
1. ### catoless hate, more scienceRegistered Senior Member

Messages:
2,959
hey everyone,

does anyone know anything about caller ID LCD displays? I was thinking of trying to control one with my pic18.

thanks,
Cato

3. ### catoless hate, more scienceRegistered Senior Member

Messages:
2,959
the microcontroller knowledge on sciforums seems to be lacking.

Messages:
915

7. ### superluminalI am MalcomRValued Senior Member

Messages:
10,876
Hi cato.

I think the information you are asking about is a little too specific. I've been designing with microcontrollers for 20+ years now. HC05, HC11, 8051 (and a million derivatives) ColdFire, Various ARM core devices... along with LCD displays, imaging devices, and a thousand other peripheral devices. But I have no idea about "Caller ID LCD's". Look at the specs for it and you can probably tell if you have enough of the right kind of I/O to control it. If you don't have the specs, then buy a cheap LCD (with a data sheet) that you know will work with the PIC18 and you'll have a lot more fun. IMHO.

8. ### leopoldValued Senior Member

Messages:
17,455
Last edited: Jul 20, 2006
9. ### catoless hate, more scienceRegistered Senior Member

Messages:
2,959
well, the question was kinda 2 parts. first, I wanted to know if there was a difference between caller id LCDs and one you would buy specifically for, say, a pic18. secondly, I wanted a few pointers on where to start when it comes to programming for them. I have not been able to find good info. perhaps you could suggest some reading or google searches that may help.

thanks for your interest/help. I am still very new to microcontrollers.

10. ### kazakhanRegistered AbuserRegistered Senior Member

Messages:
915
Cato, have you checked out Electro-Tech yet? You will certainly get the help you need there...

11. ### leopoldValued Senior Member

Messages:
17,455
the only difference between caller ID displays and say a 7 segment led display is that a caller ID display operates on a dot matrix principle

i would assume that a caller ID display has a built in character generator so that when you send it the code for 'a' the generator supplies the proper signals for the LCD

let's take an example here
you have a caller ID hooked up to your phone to receive caller ID info.
when you list the various calls this is what happens.
an internal character position is set to zero
a line counter is set to zero
a character is sent to the character rom
the character rom sends a set of signals to the LCD at the position indicated by the position and line counters
the position counter is incremented by 1
if the end of line has been reached the position counter is set to zero and the line counter incremented if the end of message has been reached (3 lines) the line counter is set to zero and the charcter numger is set to zero and the intire message is redisplayed.
the above continues untill you request the next message.

the next message sequence is identical except the characters displayed will probably be different.

if you want to use the LCD by itself then you will have to provide the position and line counters in addition to the signals you want to display

12. ### superluminalI am MalcomRValued Senior Member

Messages:
10,876
Well, you picked a good family to start with. I happen to think the PICS are awesome. Are you stuck with this caller ID LCD or can you afford a few bucks on a documented LCD from say, DigiKey?

13. ### MetaKronRegistered Senior Member

Messages:
5,502
Interfacing PICs to LCD displays

This article tells you what you need to know. This type of display and the pinout are pretty common. You can go to this page and read some specs. All Electronics has a wide choice of displays. I have a few of them.

Also, Google "PIC" and "LCD". There is a lot of good stuff out there.

Last edited: Jul 21, 2006
14. ### leopoldValued Senior Member

Messages:
17,455
i agree. this link will tell you what you need to know about the lcd
it even has a couple of macros for you.
it also shows how the bit patterns are derived so you can use your own special characters.

15. ### dsdsdsValued Senior Member

Messages:
1,677
I highly recommend the whole free book from this link to any beginner. I printed it out and read it several times. IMO, you should thoroughly study the first 3 chapters where it discusses architecture and and the basic blocks. You should also begin by studying the instruction set for 16F84 from the book and the data sheet even if you plan to program in higher than assembler language. Like anything else, if you start with the basics, it will save you a lot of frustration later on. Anyone's first microcontroller project should be "the blinking LED" project, then add to the circuit and program.

16. ### MetaKronRegistered Senior Member

Messages:
5,502
I've done Myke Predko's 3-line LCD controller, and that is very, very handy. Any type of 74174 hex flip-flop works for the shift register that you need. At one time I had a workable vectored interrupt manager for the 16F84A, and it could tend to the LCD between interrupts.

http://www.rentron.com/pic.htm

17. ### catoless hate, more scienceRegistered Senior Member

Messages:
2,959
wow, thanks guys. i'm glad I could pull you guys away from the boob thread =].

that will give me a lot to chew on. I prolly wont post again till sometime this weekend. LCDs may not end up being my first project. I have 2 small geard motors, and one out of a hand mixer that I am itching to use

18. ### MetaKronRegistered Senior Member

Messages:
5,502
If you need pulse width modulation, look for chips that have a PWM timer built in. My own attempts to do this with a 16F84 only showed me that you can't do that all that well with its timers and an interrupt service routine. It gets confused after about 300 Hz if you want 1 percent precision.

19. ### leopoldValued Senior Member

Messages:
17,455
eh no problem cato.

20. ### catoless hate, more scienceRegistered Senior Member

Messages:
2,959
this is frustrating as hell. I can't find any guides that use C/C++ (which is the only language I know). moreover, they all seem to use a $35 lcd screen. I would much rather pay$0.50 at goodwill. after all, I am a broke ass school boy. sorry just venting.

also, I have an off topic question, but I didn't think it was worth starting a new thread. I am looking to buy a new laptop battery, is it ok to replace a 14.8v battery with a 14.4v? they say it is compatible, and it would seem that .4v is not much difference, but I just thought I would ask.

21. ### MetaKronRegistered Senior Member

Messages:
5,502
I see. Cato, you might be able to extract the display and see if it looks like it will work with one of the hookup diagrams that you can download from www.allelectronics.com

The $35 display probably comes with serial interface. All Electronics has some character display LCDs for as low as$1.85 each. Mouser (click here) has a 16 by 2 character display module for as low as \$5.88, and that lets you combine shipping charges with your favorite PIC microcontroller.

22. ### catoless hate, more scienceRegistered Senior Member

Messages:
2,959
yeah, I am not worried about the compiler, I already found a few. what I meant was that it is hard to follow a LCD tutorial when you don't know the programming language =]. just like math, I understand theory from examples better than examples from theory.

I haven't even got my programmer or pic18 in the mail yet, so I guess I am jumping the gun on the frustration =].

23. ### MetaKronRegistered Senior Member

Messages:
5,502
You need to look up the mnemonics and that helps a lot. Assembly code is so simple that it is hard. Read the explanation carefully and you can see where you can plug your own variables in and run the assembly code, which you can do in C. Any C compiler should be able to run inline assembly code.

It would be fun to work with the PIC some more but most likely I am going to be an AVR man exclusively when I start up again. They have cheap chips that have two PWM controllers on board. My application needs symmetrical PWM for two outputs. It's going to be a pain to get started again also because none of my AVR chips has legs and I don't have the equipment that I used to use to make boards for SMT projects. My funding is also quite limited.