Hello
Can anyone please explain to me, how I can control a LCD display whit an PIC12F683 micro controller. I want to be able to display numbers and letter if possible. I’m looking for a simple and low cost solution, so I cant use 50$ serial Display.
Hope some one is able to help.. tnx
Can anyone please explain to me, how I can control a LCD display whit an PIC12F683 micro controller. I want to be able to display numbers and letter if possible. I’m looking for a simple and low cost solution, so I cant use 50$ serial Display.
Hope some one is able to help.. tnx
Hi !
Here's a very nice guide which will show you how to use LCD character display. (assuming it's based on the HD44780 controller which is most likely the case).
By the way : if you're short on I/O, you can use the 4bits mode instead. It's explained later in the document.
LCD Guide
Good luck !
Here's a very nice guide which will show you how to use LCD character display. (assuming it's based on the HD44780 controller which is most likely the case).
By the way : if you're short on I/O, you can use the 4bits mode instead. It's explained later in the document.
LCD Guide
Good luck !
Hi Calebay,
the PIC 12F683 has just 6 I/O lines, and you need at least 7 of them to control an HD44780-based LCD.
If you do not want to use another PIC, a solution could consist in using a shift register. You could output the data bits serially into the shift register and then, when the nibble or byte has been transferred, move it from the register to the LCD. A bit tricky, but it can work...
Cheers,
Bruno
the PIC 12F683 has just 6 I/O lines, and you need at least 7 of them to control an HD44780-based LCD.
If you do not want to use another PIC, a solution could consist in using a shift register. You could output the data bits serially into the shift register and then, when the nibble or byte has been transferred, move it from the register to the LCD. A bit tricky, but it can work...
Cheers,
Bruno
Calebay said:Very usefull link.. tnx both, great help I will use the 16F684 instead, since I need the extra I/O ports
I suggest you look at my
PIC tutorials which have excellent fast LCD routines, but even though they are four bit, they obviously take more I/O than an 8 pin PIC has. They should work fine with the 16F684 though!.
Now I started programming my 16f684 in MBLAP, doing okay.. but I have a question, the program space is divided in 4..
Program space:
CODE used 97h ( 151) of 400h words ( 14.7%) CONST used 0h ( 0) of 400h words ( 0.0%) ENTRY used 13h ( 19) of 400h words ( 1.9%) STRING used 0h ( 0) of 400h words ( 0.0%)
The program I write only takes space up In the CODE, so my question is can change anything so I get more CODE space? The problem is that I have to calculate this: Y = A – B/(exp((C-X)/D)) and the exp function takes up more space than the 400 words..
How can I get around this? Or will I have to find another Micro controller whit more memory?
Program space:
CODE used 97h ( 151) of 400h words ( 14.7%) CONST used 0h ( 0) of 400h words ( 0.0%) ENTRY used 13h ( 19) of 400h words ( 1.9%) STRING used 0h ( 0) of 400h words ( 0.0%)
The program I write only takes space up In the CODE, so my question is can change anything so I get more CODE space? The problem is that I have to calculate this: Y = A – B/(exp((C-X)/D)) and the exp function takes up more space than the 400 words..
How can I get around this? Or will I have to find another Micro controller whit more memory?
You don't mention what language you are using to write the program?, presumably it's a high level one, which is why it's taking lots of space?.
What are you actually doing?, and why do you need the formula?, often you can simplify such things, or even use a lookup table.
Also, the 16f684 has 2K of 14 bit program memory, not 400 words.
What are you actually doing?, and why do you need the formula?, often you can simplify such things, or even use a lookup table.
Also, the 16f684 has 2K of 14 bit program memory, not 400 words.
Hi Nigel
I Use Standart C.
anyway problem is solved i think..
But now I came up whit another one, I have build the Wisp628 programmer.
http://www.voti.nl/wisp628/index.html
I tryed to use the Bumblebee software, but it does not support the 16f684. It seem to be posible to add it tho.. but i need these data, and I don't know where to find them..
Name, Abrivation, Code, Data, Protect, and ID:
do you know where i can find these data
I Use Standart C.
anyway problem is solved i think..
But now I came up whit another one, I have build the Wisp628 programmer.
http://www.voti.nl/wisp628/index.html
I tryed to use the Bumblebee software, but it does not support the 16f684. It seem to be posible to add it tho.. but i need these data, and I don't know where to find them..
Name, Abrivation, Code, Data, Protect, and ID:
do you know where i can find these data
Everything you need to know to program a particular PIC is available in the datasheets and programming datasheets from MicroChip. Adding it to existing software depends if it has suitable facilities to program that specific chip - there are quite a large number of different programming algorithms used.
Calebay said:Okay, I have tryed to find the information in the Datasheet.. no luck. Do you know a DIY programmer that supports 16F684?
Sorry, it's not a PIC I'm familiar with.
- Status
- This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
- Home
- General Interest
- Everything Else
- PIC12F683 to LCD display