S
S
ssssergey2015-03-29 14:21:55
Arduino
ssssergey, 2015-03-29 14:21:55

How to connect four 7-segment displays to Arduino?

I want to use Arduino to display the temperature from four sensors on four corresponding displays. I decided to use 7-segment displays (3 digital). Connecting directly takes a lot of pins. Met the connection via SPI.
Tell me (give a link) how two or more 7-segment indicators are connected. Thank you.

Answer the question

In order to leave comments, you need to log in

4 answer(s)
V
Vladimir Martyanov, 2015-03-29
@vilgeforce

www.customelectronics.ru/arduino-dinamicheskaya-in... - dynamic indication won't work?

E
Eddy_Em, 2015-03-29
@Eddy_Em

Is it really necessary for an arduine?
By the way, you can get by with a more low-budget option: use Chinese inexpensive "voltmeters" on STM8. I've already cycled a lot . And how to make a thermometer out of a “voltmeter” is a lot of options on the Internet (by the way, I myself am also going to bike and work with 1-wire thermometers, otherwise I don’t like what is available on the network).
If you really want an arduino so much, then you can easily make indicators on I2C, UART or SPI from these "voltmeters" (you can find ready-made ones on the Internet, or do it yourself).
On eBay, these three-digit "voltmeters" cost one and a half bucks, and four-digit ones - 2.7.

D
Daniil Smirnov, 2015-03-29
@antonsosnitzkij

It can be done as follows:
1) connect the same indicator segments to 7 pins on one line
2) throw the ground on each individual pin
3) apply changing values ​​​​to the buses with a sufficiently high frequency (for example, 20 kHz)
4) turn on the ground through the ground pins with the same frequency corresponding indicators
Example: you need to display the number 183 on 3 seven-segment indicators. In this case:
1) connect the abcdefg pins
2) connect the grounds (let's call them v, y, z)
3) make a counter (or delays - as it is more convenient on the arduino) and the process started: the
first delay - only the v indicator is on, the value of one is supplied (0110000)
second delay - only the y indicator is on, the value of the eight is supplied (1111111)
the third delay - only the z indicator is on, the value of the triple (1111001) is supplied
and this case is looped. at a high frequency, flickering will be imperceptible
advantages:
-using fewer pins
-energy saving
I hope this helped you, with the code, unfortunately, I can’t tell

A
Alexander Komarchuk, 2015-06-17
@AlexanderKomarchouk

You can try different types of dynamic indication, starting from using 8 ports per segments, and 4 ports per bits, using shift registers, solving the problems of uneven brightness of segments and others along the way.
I did it in different ways, in different cases.
But as it turned out, it is best to take the MAX7219, and they are sold inexpensively on aliexpress.
Here is a quote from the datasheet:
"The MAX7219/MAX7221 are compact, serial input/output
common-cathode display drivers that interface
microprocessors (μPs) to 7-segment numeric LED displays
of up to 8 digits, bar-graph displays, or 64 individual
LEDs .Included on-chip are a BCD code-B
decoder, multiplex scan circuitry, segment and digit
drivers, and an 8x8 static RAM that stores each digit.
Only one external resistor is required to set the segment
current for all LEDs."
Highly recommended.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question