I am a novice and have a problem with my seven-segment display setup.
Basic requirements: I need to control two seven-segment displays with buttons, without multiplexing, with the physically smallest setup and battery setup possible.
My setup: I am using an ATTiny2313 to directly control the seven-segment displays (one IO pin per segment (14x), and two IO pins for buttons), all powered by two AAA L92 batteries.
The good: This works perfectly on my breadboard if I do not use any resistors at all. The displays are bright and the code works perfectly. However, I am not comfortable with this setup, since the segment displays (common anode, Vf=2V, If=20mA) sometimes exceed 20mA per segment, depending on the number of active segments (when displaying the number “11”, my multimeter shows close to 25mA).
The bad: The moment I add resistors for each segment, the brightness drops massively and the displays sometimes even flicker. I started with 68 Ohm resistors (R = 3.3V-2V / 0.02A = 65 Ohm), but began using lower resistors, I’m at 22 Ohm now and it still is abysmal. The multimeter shows about 5-7 mA per segment. The resistors are placed between the individual cathodes and the ATTiny2313.
My goal is to lower the current per segment to just below 20mA. What is the problem here? At first, I thought it might be the battery, but seeing that it works just fine without the resistors, I’m not so sure. Then I thought that maybe the current per IO pin might be too high, but should that really be a problem when it works fine without the resistors? I’m hesitant to buy even lower resistors, since 22 Ohm seems to be practically nothing...
Any input on what I could try or what I’m missing here would be greatly appreciated!