DMA bei Display benutzen?

OP #2254241
Lesenswert?

Hallo,

ich steuere z.Z. ein Grafik Display (320x240Pixel, 65K Farbe) mit einem 
Xmega128A1 über UART (SPI-Modus 16Mhz) an.

Wenn ich das Display komplett neu beschreiben möchte dauert es "relativ" 
lange und die CPU ist voll ausgelastet.

Würde es helfen die einzelnen Pixel (Farbe) Information erst mal in 
Array(Buffer) zu schreiben und dann mit Hilfe von DMA zu dem Display zu 
transportieren?

Dabei würde das Array aber leider alle grenzen Sprengen (320*240*2).

Gibt es vielleicht "clevere" Lösung?

Viele Grüße Tobias
Persönliche Seite #2255162
Lesenswert?

Hi,

Ich hab bei einem Projekt mit dem S65 die Erfahrung gemacht, dass DMA 
wesentlich schneller ist, als jeden Pixel einzeln zu übertragen.

Zudem sieht's besser aus, das komplette Bild erst intern aufzubauen und 
dann in einem Schwung zu übertragen, als die Bildteile direkt auf dem 
Display zuzeichnen.

Das ganze braucht natürlich entsprechend viel RAM, beim S65 ging's noch 
:)


Gruß
Lasse
OP #2255177
Lesenswert?

Hallo,


würde es vielleicht gehen wenn man ein Array für die Spalten und ein 
Array für Zeilen aufbaut und dann via DMA die beiden Arrays auf das 
Display zu übertragen?
Ist das mit dem DMA möglich?

Ich ging davon aus das man in der Init. dem DMA sagen muss wie groß der 
Buffer ist, auf dem er zugreifen kann...

Viele Grüße Tobias

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren