Forum: Projekte & Code Ausgabe auf LCD drehen


von Michael (Gast)


Lesenswert?

Hallo,

ich verwende ein LCD 128 x 64 und gebe die Daten Horizontal aus. Jetzt
möchte ich das Display vertikal benutzen 64 x 128. Kennt jemand eine
Routine um die Daten 90° gedreht auszugeben?
Die Daten werden in einem Cache char cache[1024] gespeichert bevor sie
ausgegeben werden, kann man die Umrechnung im Cache vornehemen?

Gruß Michael

von Werner B. (Gast)


Lesenswert?

In der Pixelroutine x und y vertauschen sollte die einfachste Lösung
sein.

von gusti (Gast)


Lesenswert?

x & y vertauschen ???
ich glaube nicht das die zeichen quadratisch aufgebaut sind.

von TheMason (Gast)


Lesenswert?

@gusti

ein vertauschen von x & y sollte aber gehen. und selbst wenn die
zeichen nicht quadratisch sind, was solls, den platz (64 statt 128
pixel) hat man dann eh nicht.
ein vertauschen von x und y setzt voraus das alle zeichenroutinen
darauf basieren, sonst siehts komisch aus ...

gruß
rene

von Martin (Gast)


Lesenswert?

wie sieht deine zugriffsroutine auf hardwareebene aus?
-schreiben und lesend!?
-schattenspeicher? nur schreibend
wie sieht deine softwareschnittstelle aus, byteweises schreiben oder
pixelweises schreiben!? ansonsten : themason hat recht

die displays lassen sich auf hardwareebene meist nur byteweise
horizontal beschreiben, willst du also byteweise vertikal routinen
implementieren und hast eine zugriffsart lesend und schreibend auf das
display, müsstest du 8 bytes lesen um eines schreiben zu können, da die
daten quasi quer zueinander stehen.

die einfachste art ist wirklich dafür zu sorgen das alle routinen,
speziell dann auch die textroutinen(schreiben häufig byteweise da es
sich anbietet) auf die setpixel(x,y,color) funktion zu adaptieren und
anschleißend x und y zu vertauschen, allerdings verliert das ganze
dadurch an geschwindigkeit, das sollte aber in den meisten fällen nicht
das problem sein, bei einer auflösunfg von 128x64...

ausser man spielt vielleich high speed teris..
martin

von Michael (Gast)


Lesenswert?

Hallo Martin,

hardwaremäsig ist nur schreibend.
Softwareschnittstelle byteweise schreibend.


Michael

von Christoph Kessler (db1uq) (Gast)


Lesenswert?

Manche LCD-Controller können hardwaremäßig die Adressierung um 90 Grad
drehen , "swivel-view" oder so ähnlich heißt das beim SED1374

Sehr schön sieht auch die stufenlose Drehung hier aus:
http://www.fpga4fun.com/GraphicLCDpanel3.html  "Rotozoom"

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.