7.4V 7-Segment with i2c controller

Hi community,

I would like to drive a 6cm 7.4V 4 digit 7-segment display with a i2c driver. The modules I would like to use:

The 7-Segment LEDs require 7V, but the i2c driver has only a max. VDD of 5.5V..

I'm not the hardware specialist.. :S Do I need to use an op-amp to reach the 7V, are there other i2c drivers i can operate with higher voltages, or any other suggestions?

I would be gratefull for any suggestions! :slight_smile:

I don't see anything that says the 7-segment display requires I2C.

Why the need for I2C.
A shift register, like the TPIC6B595, is the common way to drive large digit drivers.
Here is a link to a (backpack) board with a TPIC6C596.
Leo…

The 7-Segment LEDs require 7V, but the i2c driver has only a max.

So after the I2C output you put a transistor that will handle the voltage you want.

Looks like you are uncleare about what the 7V actually means, it is not the voltage you need to supply, it is the forward voltage drop of the seriese LEDs so you must supply that voltage pulse the voltage dropped across your current limiting resistor.

Got a PM from Paul__B that the displays from the link in post#0 are common cathode.
Good catch.

That eliminates any easy solution (no TPIC chips).
Leo..

Alright... Paul referred in his PM to the XY Problem, so let me start from the beginning. :smiley:

Problem X: For my project, I want to use a large (~6cm) 4 digit display, preferable 7-Segment. I'm using already 12 of the digital pins of the Arduino for inputs.
So as I understand, I need to use I2C to control the display to avoid controlling every digit/LED separately - am I missing anything?

Now I found the HT16K33 LED controller driver, which seemed to be suitable for my needs. According to the data sheet of the Kingbright SC23-12EWA it has common cathode:

I would connect all cathodes of the 4 digits with COM0 of the driver, all segments with the ROW-connectors.

Accoding to the HT16K33 data sheet, the maximum voltage output seems to be VDD - max 5.5V.
As I need a supply of actually 8.2V for the Segments + V(current limiting resistor), I somehow need to boost the voltage.

need to use I2C to control the display to avoid controlling every digit/LED separately - am I missing anything?

There are many ways to connect a driver and extra pins. I2C is just one option you have. There is also SPI and shift registers. SPI offer many alternative just like the I2C.

As I need a supply of actually 8.2V for the Segments + V(current limiting resistor), I somehow need to boost the voltage.

I would advise against this, as voltage boost for those cheap boards are limited in current. You also don’t need anything like as precise as 8.2V, any voltage will do, just regulate the current with your choice of seriese resistor.

Best to use 9 or 12V and regulate down from that to power your Arduino and the rest of your circuit.

Accoding to the HT16K33 data sheet, the maximum voltage output seems to be VDD - max 5.5V.

If true, and I haven’t checked then you can’t use that chip for your project.

Edit - just checked the data sheet, not only is that chip not capable of supplying enough voltage it is way over the top in that you don’t need multiplexing and a key input from what I understand you want to do.

Note that you have some reduced brightness if you matrix displays (HT16K33).
And a HT16K33 can't be used for big 7-segments with 4 LEDs in series.

What's wrong with the solution I gave you in post#2 (TPIC shift registers).
They use three Arduino pins for as many 7-segements as you need.
At full brightness.
You can find then on ebay for $0.50
Must use the common anode version of the big displays though.
Leo..

Thanks everyone for the tips! I’m a total noob in display controlls etc. and i2c was the only option i found… but SPI or shift register sounds like a good alternative! Will first need to make free a few digital pins but anyway wanted to combine a few buttons in an analog input… will keep you posted! :slight_smile:

nihilbaxter85:
...to combine a few buttons in an analog input.. will keep you posted! :slight_smile:

this (saving on input pins) can also be achieved using shift registers.

instead of using those resistor ladder networks, have a look at this;
https://playground.arduino.cc/Code/ShiftRegSN74HC165N

nihilbaxter85:
Alright... Paul referred in his PM to the XY Problem, so let me start from the beginning. :smiley:

Problem X: For my project, I want to use a large (~6cm) 4 digit display, preferable 7-Segment. I'm using already 12 of the digital pins of the Arduino for inputs.

What is the application that uses 12 inputs of your UNO?
Tom... :slight_smile: