Arduino MultiFunction Shield 7 Seg Driver Hardware Question

Go To Last Post
9 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Although I have several Arduino boards for quickly bread boarding a project, I've not used a commercial Shield before, so I'm still learning some Arduino basics.

 

I ordered a couple GLCDs off eBay for a different project and came across this cool looking Arduino Multi Function Shield for $2 USD. 

It appears that many suppliers offer this generic, open source, Shield.

It has a 4 digit, 7-Segment LED display with two SPI serial to parallel shift registers chips for the hardware driver interface, (MC74HC595A chips), (plus a piezo, 4 LEDs, 3 PB switches, and a 10K pot).

 

I searched around a bit and found a schematic for the Shield, and as best I can tell with a quick look it seems to match the actual Shield I actually have.

I've posted the portion of the schematic that shows the 7-Seg display and its driver below.

 

My concern is that neither the schematic nor the PCB appear to have current limiting resistors in series with the 7-Segmend display's LED segments.

 

So, does one assume that the software driver is scanning the segments very quickly, with a low duty cycle, and that both the display and the MC74HC595A can tolerate a 5V Vcc without current limiting?

I don't see any resistors on the Shield, either.

 

Obviously buyer beware! 

So I don't have a formal data sheet for the 7-Segment displays, unfortunately.

 

This seems a little odd to me, not having any current limiting resistors.

 

Any thoughts on this?

 

Thanks,

 

JC

 

 

 

 

Edit: Typo

  

Last Edited: Tue. Mar 20, 2018 - 08:42 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Well, you have it.  Fire it up!  Put a meter on it to see what one segment draws (over and above the 'idle' current of the board). 

 

Perhaps the display has integrated resistors?

 

Even if they do, looks pretty bad, since they're using U2 to drive the digit commons (CA?  CC?).  Absolute maximum is 35 mA.  With all 7 segments + DP lit, that should be no more than 4.375 mA per segment.  Say Vf = 2V, then any integrated resistors would have to be no lower than 680 ohms.

 

"Experience is what enables you to recognise a mistake the second time you make it."

"Good judgement comes from experience.  Experience comes from bad judgement."

"Wisdom is always wont to arrive late, and to be a little approximate on first possession."

"When you hear hoofbeats, think horses, not unicorns."

"Fast.  Cheap.  Good.  Pick two."

"We see a lot of arses on handlebars around here." - [J Ekdahl]

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Joey,

 

Thanks for the reply.

 

I was hoping some Arduino guru's would say they used this Shield before, it works fine, no problem, quit worrying...

 

I am going on vacation with the family next week, and I usually like to take a small project or two with me to keep me busy.

Writing a driver for this to test it out is on the list of projects for the week, along with writing a driver for a couple other sensors.

 

I hope my scan routine works first time, or I might well have a $2 paperweight...

 

What could possibly go wrong!

 

JC

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

https://www.mpja.com/download/ha...

 

found this pdf with links to library of functions.

 

Jim

 

Click Link: Get Free Stock: Retire early! PM for strategy

share.robinhood.com/jamesc3274

 

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Wow, what a great collection of programs.

 

If I get stuck I can use them as a reference, or (heaven forbid!), try loading his code into the Arduino IDE and running it directly!

 

In my next life I'm going to be a C programmer!

 

JC

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

...and you have a head start DocJ C......

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The example code looks like they are using low duty cycle scanning of the digits per timer1().

May have to pick up to play with as well.

 

Jim

 

Click Link: Get Free Stock: Retire early! PM for strategy

share.robinhood.com/jamesc3274

 

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The software shouldn't be a problem, (written in Basic, not C or C++).

I can write the driver to scan the digits, and pass data to them.

My concern was that upon studying the schematic, as a start to figuring out to interface it to the micro, I noticed that it isn't using a formal LED driver chip (with built in current limiting), and there are no current limiting resistors for the segments.

That would be, I think, a less than optimal design.

Without a data sheet for the display one doesn't know what the peak, pulsed current, is for safe operation.

So, I guess one just accepts it for what it is, an inexpensive shield.

 

At the end of the day it will still be a good project for me to work on and keep me out of trouble while we are on vacation.

Its third on the list, so I may or may not even get to it.

We'll see how the week unfolds.

 

JC

 

Edit:

Typo

Last Edited: Thu. Mar 22, 2018 - 04:20 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

People (hobbyists, anyway) abuse that sort of TTL chip all the time; they're designed to handle shorts to the supply rails without damage; an LED with a Vf of a couple volts won't be a problem; no one care if it stays "in spec" for legal output voltage thresholds.   (plenty of circuits that drive LEDs direct from AVR pins too...)