2
\$\begingroup\$

I recently bought four of these seven segment displays: http://www.electrokit.com/en/leddisplay-7segment-58mm-red-green-ca.49450

I'm having no luck however to make it to work, and since there is no datasheet for the display I'm stuck.

The only thing I've managed to light up is the decimal point. My setup to light the decimal point can be seen below. Note that there are 10 pins on the display, five at the bottom and five at the top. The pins have been aligned to the right of the breadboards (so the red wire is currently attached to the rightmost pin at the bottom).

http://andhen.mine.nu/sevensegment.jpg

The red wire is hooked up to the 5v output on the arduino and the blue to the ground. As can be seen the decimal point has been lit up in green, and if I move the red wire four pins to the left the decimal point turns red instead.

Thanks!

\$\endgroup\$

2 Answers 2

4
\$\begingroup\$

You are not using enough voltage.
The page you referenced notes that there multiple LEDs in series.
They say:

  • Large (58mm) 7-segment LED display
    Digits color can be either red or green.
    Type: 12101BEG
    If max: 30mA
    If peak 1/10 dutycycle, 0.1ms: 100mA
    Vf red: 7.2-8.8V
    Vf green: 8.8-10.0V

    Each segment consists of four LEDs connected in series.

In most cases simply trying every combination in turn will work.
There is a small chance that you will destroy segment LEDs with reverse voltage.

Supply two leads from psu via a resistor so you can easily swap both leads.
Try each combination in turn.
A1 A2 A3 A4 A5 B1 B2 .......

The red wire is hooked up to the 5v output on the arduino and the blue to the ground. As can be seen the decimal point has been lit up in green, and if I move the red wire four pins to the left the decimal point turns red instead.

As they say CA = common Anode = common +ve you may have
2 x Anode's
+ 8 x Cathodes.
So Bottom right may be common green anode and
bottom left = common red anode.

SO increase Vsupply to say 8V, use a 10k resistor for initial safety, put V+ on bottom right and try all pins with v-. If that works then put V+ via 10l on bottom left and repeat.

The supplier should be able to provide a datasheet.

\$\endgroup\$
3
  • \$\begingroup\$ Thanks for the response! I'm very new to this world so I have a couple of questions regarding your answer. How can I increase voltage to 8v? Is it possible to use the 5v and 3.3v output pin on the arduino at the same time? Also, is v- the same as the GND pin on the board? \$\endgroup\$
    – monoceres
    Jun 16, 2012 at 14:07
  • \$\begingroup\$ @monoceres Welcome to the dark side of this world. First, don't expect to power such a screen directly from the Arduino. You'll need an external power source using which you'll power the display and use some sort of control circuit to control the display using the Arduino. Using the 3 V and 5 V sources on the Arduino won't work because they're referenced to the same GND pin. If you connect them together. you'll damage the Arduino's power supply or AVR chip used on it. \$\endgroup\$
    – AndrejaKo
    Jun 16, 2012 at 15:03
  • \$\begingroup\$ Thank you very much! I have ordered the book "Electrical Engineering 101" to help me with my endeavours! Okay, I'll avoid that then and research the options! \$\endgroup\$
    – monoceres
    Jun 16, 2012 at 15:13
2
\$\begingroup\$

You should never buy parts whose datasheets you can't get.

Russell already told you that the problem is that you have 4 LEDs in series for each segment and that your supply voltage is too low for that. The reason the decimal point does work is that it will only have 2 in series, since it's smaller.

You seem to have a common anode display. The 10-pins, like you have one, usually share the cathodes for both colors on the same pin, and have a common anode for red, and one for green. You know the anode pins, they're the one you use with the red wire. So connecting the red wire to one of them, and trying all the other pins with the blue one should give you a mapping of all segments.

\$\endgroup\$
11
  • \$\begingroup\$ What's the simplest way to increase the voltage? \$\endgroup\$
    – monoceres
    Jun 16, 2012 at 14:53
  • \$\begingroup\$ @monoceres - Practically the only way is to use a boost switcher, but we'll try to avoid that. What's the input voltage for the Arduino? If it's at least 12 V you can use an LDO voltage regulator to get a fixed 12 V out of it. It would be best if the input voltage is a bit higher. \$\endgroup\$
    – stevenvh
    Jun 16, 2012 at 15:06
  • \$\begingroup\$ It's currently powered by USB so it's just 5V. However I think the arduino can be supplied with 9V through wall socket. Also, I just tried manually connecting the display to a 9V battery which worked very nicely :) \$\endgroup\$
    – monoceres
    Jun 16, 2012 at 15:12
  • 3
    \$\begingroup\$ @monoceres - It did? Also for green? That's nice, but a bit unexpected. The spec says green would need 8.8 V to 10 V, so I would expect 9 V to be a bit too low to be bright enough. Do you know how to calculate the series resistors for 20 mA LED current? You do have series resistors, don't you? You do need them! \$\endgroup\$
    – stevenvh
    Jun 16, 2012 at 15:25
  • 1
    \$\begingroup\$ @monoceres - They look nice! Ohm: R = (power supply voltage - LED voltage)/(LED current). That's one resistor per segment. LED current should NEVER EXCEED 30 mA, take 20 mA to be safe. LED voltage is a bit tricky, since it's different for both colors. I would measure the voltage over the resistors, and by I=V/R check that the max. current isn't exceeded. If you would use a different power supply in the end, recalculate. It would be a pity to damage this nice display. Note that the decimal point has less LEDs in series, and will therefore need a higher resistance. Success! \$\endgroup\$
    – stevenvh
    Jun 16, 2012 at 15:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.