Pages: 1 [2]   Go Down
Author Topic: Help with brightness levels on 5x7 matrix  (Read 4855 times)
0 Members and 1 Guest are viewing this topic.
Global Moderator
Boston area, metrowest
Online Online
Brattain Member
*****
Karma: 439
Posts: 23735
Author of "Arduino for Teens". Available for Design & Build services. Now with Unlimited Eagle board sizes!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

No, not snarky at all. I do the same. I even made up my own7-segment displays because I couldn't find the size I wanted smiley

Logged

Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Norman, OK, USA!
Offline Offline
Full Member
***
Karma: 0
Posts: 127
Klingon Machinist
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok, that -is- cool. Kick ass even.

OP, sorry for the thread hijack!

 smiley-mr-green
Logged

M.S.

Seattle, WA
Offline Offline
God Member
*****
Karma: 8
Posts: 673
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

If it was obtainable, it controls four 5x7 displays.  vs (MPC21018 + 5 NPN transistors + 5 base resistors + 5 current limit resistors) x 4, plus larger board to put it all on, plus debug time for wiring errors, plus increased coding time, vs $13 and some I2C commands, possibly using a library.

For me, the part count, wiring errors, and coding time are preferable. For one thing, the learning is kind of the point here, not the finished product.  So the route that causes more learning is the better one.

Number 2, one of my guiding principles is BOM cost.  My goal in Arduino is to understand the world of my EE colleagues (I am a software engineer).  We make consumer electronics.  These guys will sacrifice pretty much anything for pennies in BOM cost, *particularly* 'coding time' smiley  So paying extra money to make things easy goes against that goal.

Here's what I would do: get a part like 74AC299 from Newark (I just bought 20 in DIPs for 56 cents each) to drive the anodes, and something with more current sink capability like a ULN2003 on arduino outputs to pull the cathodes low. Then put a bunch of them in parallel, make a 25x7 display.

Looking at the ULN2003 and trying to understand it, there are a few things I am wondering...
  • In my case, could I use it instead of the transistors to control the columns?
  • Does it work like a set of PNP transistors?  Or NPN?  Or totally unlike that?
  • Does it still need base resistors?

With the 25x7 setup you described, if you're controlling them through Arduino pins that tells me you don't have 5 of them.  Do you connect ALL the rows together then?  In that case, you do have to sink 500mA, right?  Because each light is 20ma * 25.

And yeah the custom digits are awesome!  Now I'm wondering if I should just do that smiley
« Last Edit: March 11, 2011, 11:18:25 am by maniacbug » Logged


Global Moderator
Boston area, metrowest
Online Online
Brattain Member
*****
Karma: 439
Posts: 23735
Author of "Arduino for Teens". Available for Design & Build services. Now with Unlimited Eagle board sizes!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Yes, use the ULN part to sink the current row by row. The 25 columns are setup with the 74AC299 shift registers,then a row pulled by an arduino pin buffer by the ULN2003.
So shift to  74AC299s, OE on to source 20mA out to the anodes,  up to 500mA into the ULN2003, one row at a time so the 74AC299s are not overloaded.
Logged

Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Pages: 1 [2]   Go Up
Jump to: