LDR with 7 seg display and PWM output

So, just let me check, we are now talking about driving these 0.5" 7 seg 4 digit displays directly with Arduino pins? No uln2803 like with the larger displays you began the thread with?

If so, the limiting factor will be the Arduino pins connected to the common anodes/cathodes. Max current should be 40mA for any output, but not continuous, or the Arduino's life may be shortened. You are multplexing 4 digits, so that max current will be on for 2ms off for 6ms for any one of those outputs, so not continuous.

40mA on the common anode/cathode means only 5.7mA per segment, when that digit is lit. With a 1:4 multiplex that corresponds to only 1.4mA per segment on average. May not be very bright, but see what you think of it.

So driving with the Arduino alone gets you nowhere near the max brightness of the display.

To increase the current to the display means using some transistors on those common anode/cathode pins. The limiting factor then becomes the overall current limit for the atmega328 or whatever chip your Arduino has. For atmega328 it is around 200mA. That limits us to around 7mA on average for each segment. Much better than 1.4mA, but still a long way from the max current for the display.

To reach the max current of the display segments, transistors will be needed on both anodes and cathodes.