Re: Hex Display Subcircuit

From: Eric Adamson (jNOunk_at_eSrPiAcMadamson.com)
Date: 06/15/04


Date: Tue, 15 Jun 2004 00:58:06 -0400

Thanks to everyone, for their helpful comments. For those who wonder why
I'm taking such a "silly" approach, let it suffice to say that this is
largely an educational exercise (self-assigned, not homework!), and I find
that adding one or two artificial design constraints forces me to reach for
more design concepts, something that I believe will serve me well, when I
find myself tackling a truly complex project.

My approach to the LED's was primarily an effort to reduce parts count. The
LED display that I'm using is high efficiency -- it runs 16mcd@10mA -- so
brightness shouldn't be a problem. I'm not connecting the decimal points,
as someone suggested, because this display merely tracks hex data entered
using a 16-key keypad. (Those who wonder why I intentionally "beat my head
against the wall" may be relieved to know that I'm using an MM74C922 keypad
encoder, a relatively expensive, but nifty little chip.)

As for the suggestion that I use two I/O pins to independently drive the LED
commons, rather than using an inverter as planned, I'm effectively out of
I/O pins. (This circuit started out using a 16F872, which I decided was
"too roomy", and switched to a 16F648A.) I could probably multiplex an I/O
pin, somewhere, but I'll save that for my next project!

Someone suggested that I look at a 7447 or 74247. These work fine for
driving ordinary 7-segment displays (I prefer the CD4511 -- mainly for the
built-in latch). Unfortunately, I need a *hex* display, and none of these
handle A-F! In fact, I was so disappointed with the lack of affordable hex
displays and/or drivers, that I decided this might make for a good PIC
project.

For those interested, the final circuit will be used as a utility module for
digital experimentation, generating byte-wide data more efficiently than
could be done using data switches. It will consist of a hex keypad, driving
a MM74C922, which feeds 4-bit binary (not BCD, as I originally wrote) data
to a PIC. The PIC will run in an infinite display loop, performing hex
encoding for the 7-segment LED displays, and shifting nybble-wide keypad
data into a byte-wide FIFO buffer. The data byte will be presented for
consumption by other circuits, using a 74HC595 SIPO shift register. I poll
for keypresses during the 7-segment multiplex delay interval, rather than
burning up cycles with NOP's.

Thanks again, to everyone, for their interest, and their suggestions.
Please feel free to add any others you may have.

Regards,

     Eric Adamson
     Lansing, Michigan



Relevant Pages

  • Re: Samsung Microwave & GE Microwave oven
    ... the time but keypad presses were ignored. ... would reset and indicate RESET on the display. ... > My GE microwave oven started acting up about 2 months ago. ... > with the keyboard). ...
    (sci.electronics.repair)
  • Re: cant get ce to run with a flat panel display.
    ... Currently I have the display outputting to the VGA but I ... I see the following registry settings relating to the LCD. ... Hex - 0 ... be one that enables CRT, LCD or both LCD and CRT. ...
    (microsoft.public.windowsce.platbuilder)
  • Re: lab help
    ... display '. ... it is best to use XOR instead of mov. ... BCD numbers are already coded in hex. ...
    (comp.lang.asm.x86)
  • Re: Get Statement Not Retrieving Record Correctly
    ... ascii file. ... missing "2" and the record seems to display as a character longer than ... Viewing the data file in a Hex editor for the values in question "1/2" ...
    (microsoft.public.vb.general.discussion)
  • Re: LCD Display in WinCE
    ... It is much a question of controller than peripherals itself: ... For keypad, matrix keypads are standards, and depending on the nr of keys ... For display, you should look at the datasheet of your display controller to ... But exactly don't know how to interface LCD display & keypad with WinCE. ...
    (microsoft.public.windowsce.embedded)