Searching \ for 'led display question' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/displays.htm?key=led
Search entire site for: 'led display question'.

Truncated match.
PICList Thread
'led display question'
1998\11\25@162956 by lamontp

flavicon
face
Hi,

I want to build a small character display for a project.
I want to use a 7 segment lcd-type display for each
character. Is there a simple way I can have this without
having to use a 74HC595 with 8 resistors for each
character ? Otherwise, it makes a lot of connections
and soldering.

Thanks,


Patrick Lamontagne

1998\11\25@213431 by James Cameron

flavicon
face
Patrick Lamontagne wrote:
> I want to use a 7 segment lcd-type display for each
> character. Is there a simple way I can have this without
> having to use a 74HC595 with 8 resistors for each
> character ? Otherwise, it makes a lot of connections
> and soldering.

Well, two possibilities ...

1) multiplex them, which means switch the digit lines using one set of
outputs and switch the segment lines using another; connecting all the
segment lines for a certain segment to each other.

2) remove the resistors and trust your code not to turn the LEDs on for
too long.  Could be fatal to the LEDs.

Have you considered an LCD display module?

--
James Cameron                                      (spam_OUTcameronTakeThisOuTspamstl.dec.com)

OpenVMS, Linux, Firewalls, Software Engineering, CGI, HTTP, X, C, FORTH,
COBOL, BASIC, DCL, csh, bash, ksh, sh, Electronics, Microcontrollers,
Disability Engineering, Netrek, Bicycles, Pedant, Farming, Home Control,
Remote Area Power, Greek Scholar, Tenor Vocalist, Church Sound, Husband.

"Specialisation is for insects." -- Robert Heinlein.

1998\11\26@113635 by lamontp

flavicon
face
>
> Have you considered an LCD display module?

What do you mean by an LCD display module ? The only kind
of module I saw is a 5x7 dots display. And it is a little bit
expensive. Are they 7 segments display modules ?

Thanks for your help,


Patrick Lamontagne

1998\11\29@223525 by James Cameron

flavicon
face
Patrick Lamontagne wrote:
> What do you mean by an LCD display module ? The only kind
> of module I saw is a 5x7 dots display. And it is a little bit
> expensive. Are they 7 segments display modules ?

You are right, they are 5x7 dot arrays.  Yes, they will cost more than a
seven segment LED display.  I think they are easier to program though.

--
James Cameron                                      (.....cameronKILLspamspam@spam@stl.dec.com)

OpenVMS, Linux, Firewalls, Software Engineering, CGI, HTTP, X, C, FORTH,
COBOL, BASIC, DCL, csh, bash, ksh, sh, Electronics, Microcontrollers,
Disability Engineering, Netrek, Bicycles, Pedant, Farming, Home Control,
Remote Area Power, Greek Scholar, Tenor Vocalist, Church Sound, Husband.

"Specialisation is for insects." -- Robert Heinlein.


'led display question'
1998\12\03@113132 by lamontp
flavicon
face
I'm just writing to tell you I finally figured out how you suggested
to multiplex digits. I have 8 outputs that are connected to the
8 segments (7 segments + 1 dot) of all the digits at the same
time. and the common ground of each digit is controlled by
8 other outputs. That makes 16 outputs for 8 digits !

I will run about 25 mA into each segment, for about 1/8 of
the time, but since I will use it in my car, it will be visible
in the night.

A big thanks for the help, I already had started soldering 96
resistors when I asked my question ! It is a lot simpler now !

Patrick Lamontagne

1998\12\03@123756 by Mike Gann

picon face
Patrick -

By useing something like a 74138 Decoder you would only have to
use 3 outputs to control the common grounds of your digits, this
would save you 5 i/o pins. You could also use a shift register
to get down to about 2 pins to control your outputs.

Of course, if you don't need the extra i/o, then it doesn't matter.

Mike Gann

Patrick Lamontagne wrote:
>
> I'm just writing to tell you I finally figured out how you suggested
> to multiplex digits. I have 8 outputs that are connected to the
> 8 segments (7 segments + 1 dot) of all the digits at the same
> time. and the common ground of each digit is controlled by
> 8 other outputs. That makes 16 outputs for 8 digits !
>

1998\12\03@180954 by Ray Doerr

picon face
   When you are multiplexing these LED displays, make sure that you cycle
through them at least 60 times a second so the display won't appear as if it
is blinking.  I'm currently working on a project that is using 6 5x7 dot
matrix displays from Liteon.

Thanks Ray Doerr
rdoerrspamKILLspamhome.com

{Original Message removed}

1998\12\04@055153 by paulb

flavicon
face
Mike Gann wrote:

> By useing something like a 74138 Decoder you would only have to
> use 3 outputs to control the common grounds of your digits, this
> would save you 5 i/o pins. You could also use a shift register
> to get down to about 2 pins to control your outputs.

 OTOH, you can use nine PIC outputs to drive nine (or less) digits of
eight segments.  You simply use each output to drive both a digit anode
preferably via an NPN emitter follower) and a group of cathode segments.
This *really* minimises the hardware - one resistor per segment (group),
one transistor per digit.

 Here we go from my archive (This had better go on my web page soon!):
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 The *fully* optimised circuit uses emitter followers (hopefully
packaged arrays?) driving each matrix line thus:

             O +V (*Un*-regulated)
             |
            /
          |/
PIC o--+---|  NPN driver
      |   |V
      |     \
      |      |
      +-VVV--+-----o Matrix point i.e., digit anode & cathode group
         R

 .. where R is (Vdd - 0.6 - 1.4 - Vol)   Vdd= supply voltage
               _______________________   0.6= Vbe for driver
                                         1.4= LED drop
                      Iseg               Vol= PIC drive offset @ Iseg
                                         Iseg= LED drive current

 When driven low, R limits PIC current for one individual LED
"segment".  When driven high, the NPN driver buffers enough current for
all LEDs whose anodes share that matrix point to be driven
simultaneously, albeit within the capability of the PIC total sink
current.

 Nine PIC pins and nine buffer transistors permit nine 7-segment
common-anode digits (including decimals) to be multiplexed in a nine-
phase strobe at 15mA per segment (should be quite a bright display!).
Each PIC pin drives an anode common for one digit and one cathode
segment for each of the other eight digits.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 And the code structure to drive it:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Considering the case of nine displays, driven by the eight bits of
port B and one from port A.  As I see it, you end up with a segment mask
derived from the lookup table for the desired digit (character) value,
plus a position mask for the particular display.

 The position mask is used to set the port register (B) (sets "strobe"
line) and is used to mask the corresponding bit (if indeed, any) of
character to be transferred to the "wild" bit in tris register A.  It is
then used to mask *out* a bit of character before writing this value to
tris B, and the "wild" bit of port A is set if position (and thence port
B) was zero.  Much easier to tabulate than describe:

 "Position"   12345678  ("0"=ninth position)         A
    e.g.      00010000  (fourth digit)             F  B
                                                    G
 "Character"  pabcdefg  ("p"=decimal point)       E  C
    e.g.      01111001  (digit "3")                D

  Port B      00010000  Position
  Tris B      10000110  .NOT. (Position .OR. Character)
  Port A      000nnnn0  Bit 0 = (position == 0)
  Tris A      000xxxx0  Bit 0 = (position .AND. .NOT. Character)

 This coding is for a character code where 1 = lit to make the bitmaps
easier to read and code.

 The hardware structure to implement this is quite simple.  There are
eight port B drive lines distributed as segment drives (cathode) to all
digits.  Each digit in turn takes its common anode drive from one of
these lines and for that digit, the segment drive which is usurped comes
from the ninth, "wild" line instead.  The ninth digit of course takes
its common anode drive from the wild line.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Cheers,
       Paul B.

More... (looser matching)
- Last day of these posts
- In 1998 , 1999 only
- Today
- New search...