Gast
#4476387
Hallo, ich flansche derzeit ein ILI9341 (SPI) an einen kleinen uC an und schreibe die dazu nötigen Routinen selbst, allerdings nach Vorlage aus einer Lib, zb die Inits des Displays und die Kommandos zur Darstellung. Damit will ich mich nicht befassen, das Rad gibt es ja schon. Nun zum mir bisher noch geheimnisvollen DMA Zugriff: Was würde mir der bringen, bezogen auf das Display und wie müsste ich ihn realisieren? Die Display Befehle sind unterschiedlich lang, es wird nur geschrieben, nie gelesen. Derzeit muss die CPU so lange warten, bis die SPI eben fertig ist. Müsste eigentlich nicht sein. Wie schreibe ich das nun um? Eine typische Display Sequenz für den Aufbau eines Graphen sind hunderte Display Kommndos und Bytes, die ich genausogut in einen Puffer schreiben könnte. Also die jetzige SPI Routine schreibt nicht in die SPi sondern in einen Puffer. Und wenn das Bild fertig ist müsste nur ein "Trigger" dafür sorgen, dass der DMA los rattert und alle Bytes ins Display schiebt. Natürlich mit den richtigen CE Takten. Soweit theoretisch, da gibt es aber noch den Chip Select und einen weiteren Steuerpin. Und den kennt DMA ja nicht. Wie würde es denn richtig gemacht?