Du schließt alle Anoden der ersten Spalte an Pin 0 eines Port (z.b. A), die Anoden der zweiten Spalte an Pin 1 usw.
Dann schließt du alle Kathoden der ersten Zeile an Pin 0 eines anderen Ports (z.b. B), alle Kathoden der zweiten Zeile an Pin 1 usw.
Jetzt wählst du mit Port A die aktuelle Spalte aus (auf LOW ziehen, z.b. Spalte 3 = 11111011).
Mit Port B bestimmst du dann den "Wert" dieser Spalte (HIGH für an, LOW für aus).
Jetzt musst du im Prinzip nur noch schnell genug die Spalten durchgehen und immer den Port B anpassen...
Das Flackern sieht man nicht, das geht alles viel zu schnell