Rset functionality on AS1108 - Page 1
Forum section: electronics / beginners

author: bitman
author_rank: Unknown
timestamp: November 04, 2018, 06:04:29 pm
content: I have a few legacy AS1108  chips and created my own driver for it with Ardino - nothing exciting, and most of my issues was figuring out MODE0->MODE3 of SPI and which one worked with the chip. I know these are legacy chips. I'm not trying to do anything "production" level here.My question is about the current handling. The "selling point" seems to be the Rset but I still see different current draws depending on the number of segments lit. The less segments turned on, the brighter they are - ie. no constant current here. So how is this supposed to work?https://ams.com/documents/20143/36005/AS1108_DS000169_2-00.pdf

author: mvs
author_rank: Frequent Contributor
timestamp: November 04, 2018, 08:39:10 pm
content: Quote from: bitman on November 04, 2018, 06:04:29 pmI would expect current mirror in this driver. So current flowing throught segments should be quite constant.Check your power supply, add some decoupling capacitors, try to reduce segment current...

author: bitman
author_rank: Unknown
timestamp: November 05, 2018, 01:19:24 am
content: Quote from: mvs on November 04, 2018, 08:39:10 pmThanks - I've done all 3. Even blown a few segments with too much current - part of that comes down to me not fully understanding the charts provided for Rset so I experimented a bit. And why is it that data sheets for these old 7segment segments cannot be found? Something provides a hit, but you get a PDF for a completely different model/vendor. Anyway - I made a few guesses but I was NEVER able to reliably find forward voltage to find the right entry.Anyway - there's definitely a current difference as you enable/disable 7segment modules (this chip allows you to enable only some of them, so if you're only showing "12" on a 4 module display, you can turn off the first two. When I do that, "12" is brighter than when I have 3 or 4 digits on. Even when I do a test with all segments turned on, it seems some of the segments are slightly dimmer (always the same ones). I'll experiment with other Rset values and see what happens.Thanks for a good reply - got me thinking and learning something new!

author: bitman
author_rank: Unknown
timestamp: November 05, 2018, 01:24:27 am
content: Let me quickly add a second thing. As I add higher resistance (lower the current over Rset) the SAME individual segments (A in particular) gets much dimmer. The rest are the same steady brightness. If this was software I would be looking for a coding error as I would expect not all segments to be affected by the resistor.

author: mvs
author_rank: Frequent Contributor
timestamp: November 05, 2018, 06:41:15 pm
content: Quote from: bitman on November 05, 2018, 01:19:24 amOk, now i got it. By disabling digits using Scan Limit Register you will change duty cycle and hence brightness.If you wish to maintain brightness you should disable digits by writing 0 to Digit Register.PS AS1108 is actually a "half" of MAX7219/MAX7221 and is software compatible. You can use LedControl lib from arduino.

author: bitman
author_rank: Unknown
timestamp: November 05, 2018, 10:16:13 pm
content: Quote from: mvs on November 05, 2018, 06:41:15 pmI'm not sure how the "putting 0" will help. Maybe I'm overlooking something - it shows up a ZERO - it doesn't blank it. Perhaps you're talking about putting 0x0F (blank) instead of zero?

author: mvs
author_rank: Frequent Contributor
timestamp: November 05, 2018, 10:59:29 pm
content: Quote from: bitman on November 05, 2018, 10:16:13 pmYes, if you are using built in BCD to 7-Segment decoder (Code B), put blank 0x0F.

author: bitman
author_rank: Unknown
timestamp: November 06, 2018, 12:54:54 am
content: Quote from: mvs on November 05, 2018, 10:59:29 pmThanks - this allowed me to fix another issue where I was writing values and then blanking them with a second write. Using 0x0F not only has a more uniform brightness regardless of the number size, but the update is a lot smoother as the number changes. I'll take a look at the library - I searched but couldn't find anything that mentioned this chip. I took that as a challenge, and it sure did teach me a few things about SPI that I hadn't thought of before.