Ich schreibe einfach das Array adressiert in das Display. Also
For ii:=0 to 7 do
// hier Zeile setzen
For ij:=0 to 31 do
SPIOutByteE(GraphColArr[(ii*32)+ij]);
EndFor;
EndFor;
Natürlich mußt du deine 1-Pixel=4-Bit-Umwandlung dazwischen schieben.
Bei den letzten 8 Zeilen dann
For ii:=56 to 63 do
// hier Zeile setzen
For ij:=0 to 31 do
SPIOutByteE(GraphColArr[(ii*32)+ij]);
EndFor;
EndFor;
..... oder eben mit Pointer
Du kannst auch mal schauen, ob der Display-Controller lineares schreiben über den gesamten Speicher unterstützt. Dann reicht es Zeile 0/Spalte 0 zu adressieren und die 256 Byte in einem Rutsch zu schreiben.
Gruss
Harry
Code
For ii:=0 to 7 do
// hier Zeile setzen
For ij:=0 to 31 do
SPIOutByteE(GraphColArr[(ii*32)+ij]);
EndFor;
EndFor;
Natürlich mußt du deine 1-Pixel=4-Bit-Umwandlung dazwischen schieben.
Bei den letzten 8 Zeilen dann
Code
For ii:=56 to 63 do
// hier Zeile setzen
For ij:=0 to 31 do
SPIOutByteE(GraphColArr[(ii*32)+ij]);
EndFor;
EndFor;
..... oder eben mit Pointer
Du kannst auch mal schauen, ob der Display-Controller lineares schreiben über den gesamten Speicher unterstützt. Dann reicht es Zeile 0/Spalte 0 zu adressieren und die 256 Byte in einem Rutsch zu schreiben.
Gruss
Harry