Chip Output Limitations

MoonGoon

Member
I cant really post the wire up, as i dont have it in any postable format. i could take a photo but that wont really tell you much, there are a lot of wires.

I have an R on every segment. At the moment its a 360R. But i have been changing the value to try different things.

I did notice something today actually that might, now that i think about it, be pretty important. my power supply is very reliable. its a 50V-50A 1000W (or something like that) HP power supply (takes up more room than my computer) and with all my segments active it only reads 30mA being drawn from it. i have it current set to 250mA but the Chip never draws more than 30mA. Untill today looking at the datasheet, i thought that was normal.

Could there be something wrong with the chip?
Could someone please wire a 7segment directly to a chip and tell me if their Figure 8's are brighter than a Figure 1. (just to see if that is normal)
 

eclectic

Moderator
MoonGoon.

A couple of points.

1. Referring to posts #8 and #9.
What type of display are you using?

2. A circuit diagram is essential, so that people can help.
Can you download a demo version of one of the circuit drawing programs, then use a jpg screen capture?

e.
 

kevrus

New Member
Just to follow on from BCJ, you say that you have a resistor on every segment but have you got a resistor on the common (anode or cathode, depending on display) as you shouldn't have one, this pin should connect directly to -ve or +ve again depending on the display
I expect you have done this, but have you checked to see if there is any voltage drop or fluctuations on the circuit supply when displaying no.1 and then no.8?
 
Last edited:

MoonGoon

Member
Problem Found

I have found the problem.
Unfortunatly it is fundamental to a Charlieplexing system that i had not read about or heard about from anyone.

it was the last post Hippy made to this thread that triggered me to it.
Charlieplexing (i have now discovered) is typicaly scanned segment at a time. Resulting in 1 diode on the line at any one time.

I have been scanning whole digits (eg up to 7 segments) at a time. Resulting in having multiple diodes on the line at any one time. So while solving any Flicker issues, it has created a brightness issue.
MORE DIODES RESULT IN MORE VOLTAGE DROP = LOWER BRIGHTNESS (i think i learnt that in high school somewhere :eek:)
Funny how this is a basic electronics fundamental that didnt ever cross my mind while doing this. - lesson learnt.

Therefore when i have a digit 1, there are 2 diodes in parallel and then in series with ground = one brightness level. Digit 8, there are 7 diodes in parallel and then in series with ground = much lower brightness. (omitting R's for simplicity of explaination)

So Hippy, i guess scanning whole digits at a time really isnt a good idea afterall. And hence now your "Flicker" comment glows in the dark.

Thanks to everyone who have commented on this Thread. Once again i have learnt heaps by fault finding and tryin new ideas.
Out of interest, has anyone tried a Segment @ a time Charlieplex using 20MHz? just curious how much flicker there is. -Hippy?
 

Mycroft2152

Senior Member
MG,

Charlieplexing is a clever trick but not appropriate in all cases, as you have found out.

It sounds like yu have been foucusing on th getting the display to work. Have you asked yourself what will happen to the display when you are running another part of the program? You were concerned about flickering when just running the display. The PICAXE is not designed for multiptasking.

You should now understand why dedicated display controller chips are used.

Forty five posts later, a lot of people have pitched in to help, but you have still not yet posted a schematic, photo, or your program. We can only speculate without that info. Its like the blind leading the blind.

Myc
 

hippy

Ex-Staff (retired)
Unfortunatly it is fundamental to a Charlieplexing system that i had not read about or heard about from anyone ... Charlieplexing (i have now discovered) is typicaly scanned segment at a time ... I have been scanning whole digits (eg up to 7 segments) at a time. Resulting in having multiple diodes on the line at any one time. So while solving any Flicker issues, it has created a brightness issue.
Whole digit at a time should be brighter ( on for 1/5th of time ) than separate segments ( on for 1/35th ) and the cycling should be faster so less flicker. I'm not aware of anything which says charlieplexing won't work a digit at a time and it looks like it should to me.

Maybe there's some problem in the way you've got the displays wired-up or in the way you are driving them in software ? If there is any bleed while switching between one digit and another that could manifest itself as flicker.

Switching effects would be minimal on a micro / dedicated multiplexor but would be much more significant with the slower PICAXE. It could simply be that the digits aren't being shown for long enough in proportion to the switching time, or the code isn't optimised to ensure digits are being turned on as soon as possible and turned off as late as possible.

I've never used charlieplexing. Stuff I worked on usually used HC373's to drive each digit or MM5514 (?) to drive 34 segments in parallel and they were plenty bright enough for the application through 4mm of red plastic front panel filter, or a dedicated 8x8 driver ( no idea of make, probably obsolete now ).

I don't have any 7-segment displays, only four digit ones which are X-Y segment multiplex so can't be used for charlieplexing so I can't do any experimenting.

Perhaps posting your code would be the enxt step ?
 

MoonGoon

Member
Solution ?

I think i have solved my problem.

The issue was, the less segments active, the brighter the digit.
So today i implemented code to have digits proportionatly on for less time depending on how many segments it has. eg, digit 1 "ON" for less time than a digit 8.
This seems to have worked nicely. So now my digits are all even brightness. And the code is working with a 4x4 keypad. Active menu. Immediate number transistion.
The only flicker at this stage is a SINGLE "flick" when a key is first pressed on the keypad. Ill accept a minor "clitch" like that i suppose :)

i am weary of MyCroft's warning of other parts of code causing flicker. And i do still need to add Comms with another PICAXE. But this (at this stage) will be my own protocol to work in with the display code.

I would love to post my code but at this stage its 250 lines and probably not very user friendly to read. And this is optimised, my first draft was nearly 400 lines. :eek:

If anyone is interested, i can keep the forum informed of any success i have displaying using No dedicated display IC.
 

moxhamj

New Member
Great to hear. Please post the code - electrons are cheap.

Re the code not being user friendly, once code is working it usually is worth going back and commenting and overcommenting each line. If not for others, for yourself in 2 years time!
 

Dippy

Moderator
MG:"i am weary of MyCroft's warning..."

I assume you mean "wary" as in "aware"?
"Weary" means "tired of" and I'm sure you didn't mean that?
 

Mycroft2152

Senior Member
i am weary of MyCroft's warning of other parts of code causing flicker. And i do still need to add Comms with another PICAXE. But this (at this stage) will be my own protocol to work in with the display code.

I would love to post my code but at this stage its 250 lines and probably not very user friendly to read. And this is optimised, my first draft was nearly 400 lines. :eek:

If anyone is interested, i can keep the forum informed of any success i have displaying using No dedicated display IC.
MG,

I'm sure there are a lot of people are really interested in your re-inventing the wheel, especially when it only sort of works.

What do you plan on posting? You've already said the the program is too confusing to read and the photos of the wiring are too jumbled to understand.

I can just see the line of people hanging on your every word and planning on building one.

I'm sure you learned a lot form this project. But really, it is not the greatest thing since sliced bread.

This is post #50

Myc
 

hippy

Ex-Staff (retired)
I wouldn't be so harsh; achievements are achievements. I've re-invented the wheel more times than I can remember but did learn things by doing so, especially why things are done that way not this way. I'm sure some of my projects have bored the pants off people at times as well :)

250 lines of code isn't too bad and I'm sure some people are interested in seeing it. You may get praise for it, it may get critiqued, you may learn something or you may teach others.
 

MoonGoon

Member
Sorry MyCroft.
I did mean wary. As in im keeping the warning at the front of mind and trying to make my code accordingly. I meant no offence by the spelling mistake.
I am also well aware now that the more code i add, if im not careful, flicker will eventuate.

Im just determined to get this Charlieplex to work. The potential for minimal board space is just too appealing to me. Im all about hardware simplicity, even when it means software complexity is the outcome.

MG,

I'm sure there are a lot of people are really interested in your re-inventing the wheel, especially when it only sort of works.
My "sort of works" is .... working exactly the way it should. By the Way.

I have made the code easier to read. Eg. added comments. So ill try and post it soon.
 
Top