ein digitaler Ausgang liefert etwa 5 V, 40A
40 A? Das glaube ich nicht. Wenn doch, könntest du deine 100 LED locker jeweils mit einem eigenen Vorwiderstand versehen und an diesem 5V Ausgang betreiben.
Was soll das eigentlich werden? 10x10 LED klingt sehr nach dem Versuch, da eine Matrixansteuerung zu basteln.
Ausserdem hinkt die Rechnung "(10*2.2V=22V)". Das ist erstmal die Spannung, die eine Kette von 10 LED in etwa benötigt.
Da aber auch eine solche Kette aus in Reihe geschalteten LED einen Vorwiderstand benötigt, sollte die Versorgungsspannung um 20-25% höher liegen, damit auch am Vorwiderstand noch etwas Spannung abfallen kann, und er so seine Aufgabe erfüllen kann.
Bei der Auswahl des Transistors musst du den maximal möglichen Collectorstrom beachten. Ein BC548/546/547 kann sollte mit etwa 100mA, also maximal 5 solcher Reihenketten a 20mA belastet werden.
Ein BC337/338 kann etwa 500mA schalten, also 25 Ketten a 20mA.
Wenn der Transistor sperrt, also die Kette Dunkel ist, fällt über der CE Strecke die volle Betreibsspannung der LED ab; also hier mindestens 22V+dem nötigen Überhang für den Vorwiderstand (s.o.).
Der BC548 verträgt hier ca 30V VCEO, BC547 45V, BC546 60-65V.
Ein BC337 45V ein BC338 25V.
Wenn du den Transistor in Emitterschaltung betreiben willst, dann kann der Basiswiderstand bei 5V ansteuerung bei ca 4,7K liegen, entsprechend etwa 1mA Basisstrom.
Allerdings lauert beim Anschalten eines Transistors an eine Digitalschaltung immer ein Pferdefuß:
Die Spannung am Ausgang des Microcontroller muss möglichst nahe an 0V heran gehen, um den Transistor sicher zu sperren. In Emitterschaltung kann ein NPN Transistor jedoch bereits bei einer Microkontroller-Ausgangsspannung ab 0,6V zu leiten beginnen.
Da die Restspannung an einem digitalen LOW-Ausgang je nach technologie des Schaltkreises auch schonmal bis zu 0,9V betragen kann, baut man daher aus einem weiteren Widerstand zwischen Basis und Emitter des Transistors einen Spannungsteiler.
Da man über all dieses ganze Seiten schreiben könnte, und ein Verhau aus zig Transistoren dazu auch noch unnötig viel Platz einnimmt, verwendet man im Zusammehang mit Microkontrollern gern komplette Schaltkreise zum treiben von nennenswerten Lasten auf dem selben, oder anderem Spannungsniveau.
Ein typischer Vertreter dieser Treiber ist der ULN2803. Das im Datenblatt angegebene Innenleben hilft auch als Orientierung, wenn man sowas einmal aus Einzelteilen aufbauen möchte.
www. ti.com/lit/ds/symlink/uln2803a.pdf
www. mikrocontroller.net/topic/93082