I've studied things a bit more and I think there might be some problems with my diagram.
This is my diagram (modified version of CrossRoads' diagram):
And this is CrossRoads' original diagram:
There are a few things that I think may be wrong:
- The 220 Ohm resistors should not go between the shift register (TIPC6B595) and the MOSFET (NDP6020P-ND). Instead there should be no resistor between the shift register and the MOSFET, the 220 Ohm resistors should be between the G and S pins of the MOSFET (they are what they call pull-up resistors). I think...
- If you look at CrossRoads' original image, there are some resistors and capacitors connected to pins 7,1,9,10,21,20,22,8 of the Arduino. I removed those, thinking that they are not needed. Now I'm not so sure anymore...
- I still wonder about what value is needed for the cathode resistors if I want 20 mA per LED and the LEDs drop 3.3V from the 5V that is available. The question here is if the MOSFETS or something else also has a voltage drop that needs to be taken into account and if yes, how much.