Hello. I hope the topic makes sense. I would like to add that this is for educational purposes, and that a dedicated driver IC would probably be better.
What I basically want to do is drive a multiplexed 4 digit common anode 7 segment, using some sort of current switching on the anode side and a shift register on the cathode side.
I have this circuit working with pnp transistors on the anode side (right on the schematic below). A low signal on pins 2,3,4 or 5 makes the current flow from the emitter to the collector, and the LED light up in the chosen digit (in a pattern controlled by the shift register).
Is there any way I can replace the PNP transistors with something that reacts the same way to a low signal? First thought was of course NPN transistors, but they have to go on the cathode side, which is not practical with this display. My plan is to try driving the anodes with a counter such as the CD4022 using the latch signal from the shift register, thus potentially saving 4 pins on my arduino.
(sorry about the messy schematic, it is a quick drawing for learning to work with the PCB-layouting tool in KiCAD)

