Matrixanzeigen werden sinnvoll nur im Multplexmodus angesteuert. D.h. eine Elektronik, oder auch der Microcontroller aktivieren mit einem Port jeweils eine Spalte (oder eine Zeile) Auf einem anderen Port wird dann die Zeileninformation der Spalte ausgegeben. Dann wird zur nächsten Spalte gewechselt.
Dadurch können natürlich deutlich Protpins gespart werden. Somit kann ein 5×7 Modul bereits mit 10 Bit gesteuert werden. 7 für die Zeilen und 3 (es könnten sogar bis zu 8 sein) über einen Dezimaldecoder für die Spalten. Natürlich leuchten dann die LED's nur 1/8 der Zeit und werden deswegen natürlich deutlich dunkler. Natürlich ist es möglich, da jede einzelene LED nur kurz leuchtet, diese zu überstromen, also mit mehr Strom als eigentlich notwendig zu versorgen.
Da der Microcontroller mit dem Multiplexen allerdings schon ordentlich beschäftigt ist, sollte man keine anderen zeitintensiven oder zeitrelevanten Programmteile mit auf der MCU laufen lassen.
In vielen Fällen ist es aber deutlich besser, dafür hergestellte Controller zu benutzen. Als Beispiel sei der Maxim Chip MAX6952 genannt. Dieser besitzt ein einfaches SPI Interface und kann neben Zahlen und Buchstaben auch 24 selbst erstellte Zeichen verarbeiten. Eine direkte Ansteuerung der einzelnen Punkte ist aber leider nicht möglich. Will man mehr als 4 Digit's haben, kann man die einzelnen MAX6952 auch kaskadieren.
Quelle: Maxim Webseite