Hallo zusammen,

ich hätte ein kleines Logikproblem mit einer LED-Matrix.

Und zwar würde ich gerne eine 8x8 LED-Matrix über zwei Schieberegister-IC ansteuern.
Die beiden Schieberegister hängen hintereinander. Das 1. ist für die Anoden (Zeilen), das zweite dahinter für die Kathoden (Spalten)
Anbei ist auch noch ein Bild um alles zu veranschaulichen.

Nun zu meinem Problem:

Ich habe mir überlegt, das ich die Spalten in einer Schleife durchrollieren lasse und immer eine Spalte nach der anderen einschalte.
Parallel dazu Hinterlege ich in einer Tabelle den Zeichensatz.

Zeichensatz:
DATA &B10000001, &B01000010, &B00100100, &B00011000, &B00011000, &B00100100, &B01000010, &B10000001 ' X

Dabei entspricht jedes hinterlegte Byte einer Zeile. In meinem Beispiel hier sollte es eine Kreuzlinie sein.

Jetzt war meine Überlegung, Parallel zum durchrollieren der Spalten ziehe ich mir für das gewünschte Zeichen das jeweilige Bit aus dem Byte und
erstelle daraus ein neues Byte, welches dann im Schieberegister der Zeilen ausgegeben wird.

In meinem Beispiel wäre das neue Zeilen-Byte für die Spalte 1 = &B10000001, Spalte 2 = &B01000010 usw.

Somit habe ich den Vorteil, das das Bild Spalte für Spalte von links nach rechts aufgebaut wird. Es können in einer Spalte auch mehrere LED's
gleichzeitig aktiviert sein.

Nur leider ist es nicht so einfach aus der Tabelle von jedem Byte das entsprechende Bit auszulesen und daraus ein neues Byte zu basteln.

Kennt jemand von euch einen einfachen Weg das zu realisieren?

Oder gibt es einen komplett anderen Weg wie ich so eine matrix realisieren kann? Wie würdet Ihr das machen?

Ich bin dankbar für euere Hilfe und Ideen und ich hoffe ich konnte mein Problem verständlich schildern.

Viele Grüße

Klicke auf die Grafik für eine größere Ansicht

Name:	matrixlogik.png
Hits:	17
Größe:	20,8 KB
ID:	28135