Keypad + 16x2 LCD Dispaly with 16F88/16F690 ?

For Flowcode users to discuss projects, flowcharts, and any other issues related to Flowcode 4.
To post in this forum you must have a registered copy of Flowcode 4 or higher. To sign up for this forum topic please use the "Online Resources" link in the Flowcode Help Menu.

Moderator: Benj

User avatar
Karbulla
Posts: 13
Joined: Fri Jan 04, 2013 10:59 pm
Has thanked: 12 times
Contact:

Keypad + 16x2 LCD Dispaly with 16F88/16F690 ?

Postby Karbulla » Thu Apr 04, 2013 8:44 pm

Hi all. I´m using FC Student version 4.5.18.74 with PPP version 3.11.15.30. I sucssesfully test a e-Block Keypad with a e-Block LCD Display
with the huge 16F877A, but I couldn´t do that with the more economical 16F88 (18 pins) or even a 16F690 (20 pins).
I tried a lot with them but I always crashed with Port limitations issues. I was wondering: - is it possible to drive a Keypad + LCD Display with these two ucon (16F88 and 16F690) ? Thanks for all of you.

User avatar
Jay Dee
Posts: 352
Joined: Tue Aug 18, 2009 6:42 pm
Has thanked: 116 times
Been thanked: 134 times
Contact:

Re: Keypad + 16x2 LCD Dispaly with 16F88/16F690 ?

Postby Jay Dee » Thu Apr 04, 2013 10:31 pm

Hi,
From a relative noob like myself, it looks do able and without a load of pin sharing. (which would be a more pretty solution)
16F88 = 18pins
take away the power pins, and two pins for a crystal, you have 14 left and need 13.
The LCD and Keypad both need to have some of their pins grouped and on the same port... not sure how picky it is but I think just consecutive pins on the same port will work. The RS and EN pins of the LCD can use any port I think.
LCD
PortA Pin2
PortA Pin3
PortA Pin4
PortA Pin5
PortA Pin 1
PortB Pin 3

KEYPAD
PortB Pin0
PortB Pin1
PortB Pin3
PortB Pin4
PortB Pin5
PortB Pin6
PortB Pin7

PortA pins 6 & 7 for the Osc
leaves 1 pin free I think. This method does use the MCLR pin, which I think you can set to be a general input in the config settings when programming the chip.
The above method work in simulation...but dont know in real world.
Only have FC5 but check out OK.
best of luck. :)
These users thanked the author Jay Dee for the post:
Karbulla (Sat Apr 06, 2013 11:14 pm)
Rating: 5.26%
 

User avatar
Karbulla
Posts: 13
Joined: Fri Jan 04, 2013 10:59 pm
Has thanked: 12 times
Contact:

Re: Keypad + 16x2 LCD Dispaly with 16F88/16F690 ?

Postby Karbulla » Sat Apr 06, 2013 11:21 pm

Suggestion received. I´ll implement it as soon I can. Will return with results. Thank you, Jay.

User avatar
Karbulla
Posts: 13
Joined: Fri Jan 04, 2013 10:59 pm
Has thanked: 12 times
Contact:

Re: Keypad + 16x2 LCD Dispaly with 16F88/16F690 ?

Postby Karbulla » Wed Apr 17, 2013 4:45 am

Sorry about English mistakes. I tried your circuit but it doesn´t work on real hardware.
To be honest I was expecting this result, because I have tested a lot with this kind of experiment - one PIC16F88 with a LCD Display (eBlock EB005) and a Keypad (eBlock EB0014). As you know, using Flowcode, many times the real circuit behavior aren´t the same as seen at the simulations.
Unfortunately for me, doing the necessary right adjustments in Flowcode Chip/Configure/Expert Screen and View/Project Options menus, are (sometimes) not a trivial task. I posted my last attempt (fluxogram and HEX files). The simulation works fine, but it didn´t on real circuit – only the keypad´s first row are detected (1,2 and 3), but nothing about the others rows (4,5,6,7,8,9,0,* and #).
If you have time, buid up the real circuit to realize the issue and if you get another idea how to do it give a clue. Thanks.
Attachments
Keypad 16F88 V1.hex
(3.45 KiB) Downloaded 108 times
Keypad 16F88 V1.fcf
(13 KiB) Downloaded 165 times

User avatar
Benj
Matrix Staff
Posts: 14310
Joined: Mon Oct 16, 2006 10:48 am
Location: Matrix TS Ltd
Has thanked: 4401 times
Been thanked: 4127 times
Contact:

Re: Keypad + 16x2 LCD Dispaly with 16F88/16F690 ?

Postby Benj » Wed Apr 17, 2013 9:33 am

Hello,

Your keypad won't work correctly on PortA of a 16F88 device as the upper two bits of the port are being used for your oscillator source. I would suggest moving to a larger chip such as an 16F877A and you can then use PortC or D for your Keypad and it should all work as expected.
These users thanked the author Benj for the post:
Karbulla (Sat Apr 27, 2013 1:47 am)
Rating: 5.26%