Re: Driving 16 7-Segment Displays

joe.denehan_at_oceanfree.net
Date: 09/02/04


Date: 2 Sep 2004 08:12:01 -0700

Thank Guys for all the suggestions.

I very much like the idea of using an Interrupt Service Routine to
control to displays (eliminating more IC's).

I've been trying to figure out the timing necessary to do this duty
cycle. Can someone tell me is the diagram below will work. I would use
8 i/o's to control the 7-segment displays (including DotPoint).I
propose an ISR every 6ms to enable/disable the digit and use a lower
resistor to overdrive the Segments.

This means that the segment is only driver for 6ms then off for 90ms.
Will this work?

        6ms
         |
         _
Digit1 _| |_____________________________________________________________
             _
Digit2 _____| |_________________________________________________________
                 _
Digit3 _________| |_____________________________________________________
                     _
Digit4 _____________|
|_________________________________________________
                         _
Digit5 _________________|
|_____________________________________________
                             _
Digit6 _____________________|
|_________________________________________
                                 _
Digit7 _________________________|
|_____________________________________
                                     _
Digit8 _____________________________|
|_________________________________
                                         _
Digit9 _________________________________|
|_____________________________
                                             _
Digit10_____________________________________|
|_________________________
                                                 _
Digit11_________________________________________|
|_____________________
                                                     _
Digit12_____________________________________________|
|_________________
                                                         _
Digit13_________________________________________________|
|_____________
                                                             _
Digit14_____________________________________________________|
|_________
                                                                 _
Digit15_________________________________________________________|
|_____
                                                                     _
Digit16_____________________________________________________________|
|_

       |------------------------------ 96 ms
---------------------------|

         Common Segment Inputs(x16)

         |||||||| ||||||||
         //////// ////////
   33ohm \\\\\\\\ 33ohm \\\\\\\\
         //////// ////////
         \\\\\\\\ \\\\\\\\
         |||||||| ||||||||
         -------- --------
        | | | |
        | | | |
        | | | |
        | ------ | | ------ |
        | | | |
        | | | |
        | | | |
         -------- --------
            | |
            | |
           / /
   Dig1---| TR1 Dig2---| TR2 etc
           \ \
            | |
            | |
           --- ---
            - -

Spehro Pefhany <speffSNIP@interlogDOTyou.knowwhat> wrote in message news:<0hrbj0l423vb7bknclfjtgum6gfdkdniqo@4ax.com>...
> On 1 Sep 2004 05:12:20 -0700, the renowned joe.denehan@oceanfree.net
> wrote:
>
> >Hi,
> > I'm just completed a progject where it's necessary to drive 16
> >displays (7-segment). Because I didn't want to tie up the
> >microcontroller and have maximum brightness, I used Maxim's MAX7219.
> >This works perfectly but I need to have 2 of them as they only drive 8
> >digits each.
> >
> >Problem is they are expensive devices. I wondered if there are other
> >similar devices or methods I could use without tying up the
> >microcontroller. (uPD78F0034)
>
> What do you mean by "tying up the microcontroller"? You should be able
> to multiplex 16 digits without using significant bandwidth.
> Personally, I try to stay away from expensive single-sourced chips,
> even if it increases the parts count. You have to be able to service a
> short periodic ISR without jitter of more than 5-10% at 1-3 kHz. That
> is not a very limiting requirement for most micros.
>
>
> >Thanks,
> > Joe
> >
> >PS. If I didn't use any display drivers. Would an 8Mhz micro be able
> >to get around all the displays (not diming too much) and monitor a 4x4
> >keypad input also???
>
> Yes, of course. You can probably share some or all of the port pins as
> well. The brightness is basically a function of the average drive
> current, not the multiplex frequency.
>
> Best regards,
> Spehro Pefhany



Relevant Pages

  • New LottoGenius version - comments please.
    ... limit an amount of numbers inside any decade. ... Final Digits: matching final digits (all digits count, ... control the low/high numbers ratio within a combination. ... Sums: range of sums (selected numbers within the combination ...
    (rec.gambling.lottery)
  • Re: How to let the cursor stay implace?
    ... InputMask because with it the user has to key in exactly 7 digits. ... > property of the control from this function, ... the validationtext will be displayed. ...
    (microsoft.public.access.modulesdaovba)
  • RE: erratic format result
    ... coding, which is same as I was usuing, as control source for the control on ... If zipcode is all 9 digits, and I use format 00000\-0000, then I get correct ... Format I showed it should work every time - like I said, ...
    (microsoft.public.access.modulesdaovba)
  • Re: concatenate and parse merged field with text
    ... in the replace with control. ... Doug Robbins - Word MVP ... last 7 digits of that number with a "W" in front. ... derive the web access ID, we need to concatenate a "W" with the last 7 ...
    (microsoft.public.word.mailmerge.fields)
  • Re: Driving 16 7-Segment Displays
    ... > I very much like the idea of using an Interrupt Service Routine to ... > control to displays. ... > resistor to overdrive the Segments. ... If you just made this up, then give yourself extra credit. ...
    (sci.electronics.design)