Multiplexed display - which end first?

Status
Not open for further replies.

throbscottle

Well-Known Member
Is there a particular reason or convention which says I should display the MS or LS digit first on a multiplexed numeric display?

Any display multiplexing hints or tips from the infinitely more experienced (or more educated!) than me?

I'm using a PIC to output bcd with a clock signal, and with an input to sync to an end digit. Bcd to 7-seg converter, with some gates to pull off extra values for symbols. Display might be a (surplus) vfd (I wanted Panaplex, but have you seen the price of those things?!) or I was even thinking about nixie tubes - but I digress.

TIA, as always
 
Are you going to scroll the display? There may be some visual artifacts caused by scrolling direction and the multiplexing direction.
 
No, it's a plain 6 digit + sign numeric output. I'll bear that in mind if ever I do that though - might be fun! I'm starting to wonder if the on time for the display as a whole is going to be long enough though - it's now only a small portion of quite a lot of code now. Starting to think about latching schemes. Will be posting the code on my blog soon...
 

Generally the display would be on all the time, with each individual section on for an equal slice of that time.

I suggest you have a look at my tutorials where I use timer interrupts to transparently multiplex a display.
 
Look at the MAX7219 - great devices although a little expensive. I might even have some dev boards with one on for a fiver or so if you're interested ?

Have a flick through the datasheet and see if it could be adapted to your requirements
 
Unfortunately the 16F57 has no interrupts, and I'm wishing I'd got a device that has them - but now I have the chip so just working with that. The MAX7219 looks like a great chip - possibly overkill for this though. Will see.

Thanks.
 
I've done it with nixies, dont forget to increase the current through the display by the number of tubes, 4 tubes 4 times etc.
I usually use interrupts for that, you cant with the '57 though.
A code efficient way to do it is to shift a logic 1 along the outputs that control the commons.

My nixie prototype, the flying dot is a dekatron tube:

https://www.youtube.com/watch?v=CVYEiCc19Bs&feature=youtu.be
 
Last edited:
Unfortunately the 16F57 has no interrupts, and I'm wishing I'd got a device that has them - but now I have the chip so just working with that. The MAX7219 looks like a great chip - possibly overkill for this though. Will see.

Thanks.

That's a bit of a bizarre chip to start with?, I would suggest you move to a 14 bit device (instead of a 'modern' replacement for an antique 12 bit OTP device).

You're really making life difficult for yourself.
 
Remember to turn the digit drivers off for a bit, for inter-digit blanking, otherwise a lit segment from a previous shows up lightly on the next multiplexed digit.
 
dr pepper: nice prototype - I like the gloweyness...
Nigel: The choice of '57 was made when I thought I was just going to be doing a straight binary to bcd (or 7 segment) conversion and not much else, so I just wanted the simplest device I could find, with enough i/o for the auto-ranging. I've come from knowing nothing about microcontrollers so wanted to avoid a very steep learning curve. I actually made a mistake with my first purchase and bought a 16C57 - not realising it's an otp device, since bought a 16F57 - so I'll work out any bugs with that and use the 16C57 in the final device.
Keepitsimplestupid: I'm using a >9 code for blanking so 2 bits are just gated off and used to stop the digit turning on.
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…