byte drei = B00001110; //Mitgabe von row und column möglich?
byte zwei = B11000000;
byte fünf = B11111000;
byte vier = B00001111;
//byte = B00000000;
//byte = B00000000;
//byte = B00000000;
//byte = B00000000;
Byte i = 0;
void loop(){
lc.setRow(0, row_0, column_0);
lc.setRow(0, row_1, column_1);
lc.setRow(0, row_2, column_2);
lc.setRow(0, row_3, column_3);
lc.setRow(0, row_4, column_4);
lc.setRow(0, row_5, column_5);
lc.setRow(0, row_6, column_6);
lc.setRow(0, row_7, column_7);
//Solange die Variable i einem definierten Wert x entspricht, sollen die ersten vier Zeilen angesteuert werden.
while (i == x){
row_0 = 0; column_0 = drei;
row_1 = 1; column_1 = fünf;
row_2 = 0; column_2 = zwei;
row_3 = 0; column_3 = vier;
}
}
Nicht vollständig. Das hier ist ein Ausschnitt, welchen ich auf andere Variablenwerte übertragen möchte. Also folgen weitere while-Schleifen, mit unterschiedlichen Bedingungen und ebenso unterschiedlichen Ansteuerungen der LED`s. Es geht ums Schema. Das Display wird, wenn sich die Variable ändert, einmalig gelöscht. Zudem soll das noch über eine FSM laufen, damit der uC nicht in der Schleife hängt. Aber das habe ich geplant, wofür ich keine Lösung erwarte.
Hierfür schon ![]()
Keine fertige Lösung, aber Tipps, mit welchen Werkzeugen ich ans Ziel komme.
Meine Fragen nun: Wie kann ich es schicker/kompakter machen und, was vielleicht sehr hilfreich wäre, wenn ich den Bytes die Werte für row_X und column_Y mitgeben könnte. Die, Bspw. drei, hat einen fest definierten Platz. Wird also nicht mal von der einen, mal von der anderen Reihe angezeigt.
Ich habe nicht die Ambition Profiprogrammierer zu werden und mir ist bewusst, dass meine Fähigkeiten, einigen von euch, nicht ansatzweise reichen. Das ist auch nicht mein Ziel!
Es handelt sich übrigens um einen Max7219.
Gruß