From: wrongaddress on
I'm looking for a 4 digit LCD or LED display to use with a PIC
processor. Something easy to use that will latch 4 bit data from the
processor to each of 4 (7 segment) digits.

Anybody know of a part number and supplier?

-Bill

From: Glenn Gundlach on

wrongaddress(a)att.net wrote:
> I'm looking for a 4 digit LCD or LED display to use with a PIC
> processor. Something easy to use that will latch 4 bit data from the
> processor to each of 4 (7 segment) digits.
>
> Anybody know of a part number and supplier?
>
> -Bill

Check out these guys. For hobby use they're good.

http://www.timeline-inc.com/lcd.html

If you're doing LED displays, you might consider simple 8 bit latches
to drive all segments independently and do the conversion to 7 segment
in software. Then you can do actual text along with numbers. See

http://www.twyman.org.uk/Fonts/

I've done this with Motorola processors and its easy. I expect a PIC to
be the same.

GG

From: DJ Delorie on

Probably more than you need:

http://www.avagotech.com/products/parametric-search.jsp

I've used an HDSP-253x series eight character LED alpha display.
These latch 8-bit ASCII data from a PIC into each 5x7 cell.
From: William at MyBlueRoom on
You could use a CD4511 BCD to 7 segment latch decoder driver, you would
need 4 of them and at least 6 I/O lines (assuming external demux) or
the TIL311 display with latch $$

You might want to look at the schematic for Daisy on my website
www.myblueroom.com

It uses charlieplexing for the display

Bill

From: slebetman@yahoo.com on
Glenn Gundlach wrote:
> wrongaddress(a)att.net wrote:
> > I'm looking for a 4 digit LCD or LED display to use with a PIC
> > processor. Something easy to use that will latch 4 bit data from the
> > processor to each of 4 (7 segment) digits.
> >
> > Anybody know of a part number and supplier?
> >
> > -Bill
>
> Check out these guys. For hobby use they're good.
>
> http://www.timeline-inc.com/lcd.html
>
> If you're doing LED displays, you might consider simple 8 bit latches
> to drive all segments independently and do the conversion to 7 segment
> in software. Then you can do actual text along with numbers. See
>
> http://www.twyman.org.uk/Fonts/
>
> I've done this with Motorola processors and its easy. I expect a PIC to
> be the same.

Better yet, for LED use shift registers (74HC164) which uses only 2
pins on your PIC to control any number of 7 segment LEDs. Or if you
want to avoid the flicker while you load the registers use shift
registers with an output latch (74HC595) which uses 3 pins on your PIC.

Converting numbers to the required "font" to write to the 7 segment
display is simple. You can use the retlw instruction and computed goto
to construct a look-up table. Since there are only 10 numbers (0-9 or
16 numbers for hex: 0-9,A-F) the look-up table will be only 10
instruction words in size. Because it's so simple and so small I
personally believe that a hardware solution is not worth it. Writing it
in C is far simpler:

// This code supports hexadecimal characters:
const unsigned char font[17] = {
0x7e, // 0
0x12, // 1
0xbc, // 2
0xb6, // 3
0xd2, // 4
0xe6, // 5
0xee, // 6
0x32, // 7
0xfe, // 8
0xf2, // 9
0xfa, // a
0xce, // b
0x6c, // c
0x9e, // d
0xec, // e
0xe8, // f
0 // blank
};

To write out the number N to the 7 segment display simply:

displayLed(font[N]);

The code for serially writing out to the shift registers are also
simple if you use the HC parts. For PICs up to 20MHz you wouldn't need
any delay loops in your output routine and can write out at full speed
since the shift registers will be able to cope very well (but check the
datasheet to be sure). In C this can simply be:

void displayLed(unsigned char n) {
int i;
for (i=0, i<8, i++) {
if (n & 1) {
LED_DATA = 1;
} else {
LED_DATA = 0;
}
LED_CLOCK = 1;
n >>= 1;
LED_CLOCK = 0;
}
}