Forum: Compiler & IDEs Geschwindigkeit des GLCD´s


von Sven D. (Gast)


Lesenswert?

Hallo!

Ich habe an Euch eine kleine Frage:

Ich habe ein Glcd 128x64 mit dem KS0108 Controller den ich mit einem 
ATmega32 "erfolgreich" betreibe.
Mein Problem ist die Geschwindigkeit mit der z.B. eine Sinus Kurve
auf dem Display dargestellt wird.

Bei der Darstellung kann man regelrecht zusehen wie die einzelnen Pixel 
auf dem Display gesetzt werden.

Habt Ihr die gleichen Erfahrungen gemacht?

Liebe Grüße

von Oliver (Gast)


Lesenswert?

Diese Displays sind zwar langsam, aber sooooo langsam auch wieder nicht.

Zeig mal deinen Weichware...

Oliver

von Sven D. (Gast)


Lesenswert?

Hey Oliver.

Das ist die Software:

Beitrag "GLCD Routinen ( KS0108, HD61202 )"

So wie master.andre sie Schuf...

und hier ist die Sinus Funktion...

Beitrag "Sinusfunktion und glcd"

Meinst Du es liegt an der Verarbeitung bzw. an der Art, wie die Kurve 
dargestellt wird???


WIE GEHT DENN DAS???
http://www.serasidis.gr/circuits/AVR_oscilloscope/avr_oscilloscope.htm

Liebe grüße

von Philipp Karbach (Gast)


Lesenswert?

ist dein ks0108 blau/weiß? So ein hab ich auch und mir wurde hier 
bestätigt dass diese displays träge sind!

von hans (Gast)


Lesenswert?

Schau mal hier den Spektrum-Analyser an:

http://elm-chan.org/works/akilcd/report_e.html

da sind auch Videos vom Display im Betrieb und die Software dazu.

gruß hans

von Sven D. (Gast)


Lesenswert?

Also

@Philipp Karbach - Mein Display ist blau.
Mir ist jedoch nicht bekannt, daß die Geschwindigkeit der Displays von 
der Hintergrundbeleuchtung.

Danke Hans. Ist ja so ähnlich wie bei dem Ossi

Aber nochmal:

Ich stelle eine Kurve folgendermaßen dar:
Sinuswert wird berechnet und an dieser Stelle ein Pixel gesetzt....

Könnte das die Ursache für die langsame Dastellung sein.
Wie kann ich es anders realisieren???

Gruß

von Philipp Karbach (Gast)


Lesenswert?

tja dann muss ich dich enttäuschen:
Beitrag "ks0108 lahm?"

lies mal hier geht es um genau dieses thema und es wird gesagt dass 
blau/weiß langsam ist.

von Oliver (Gast)


Lesenswert?

Also,

ich hab das jetzt mal kompiliert. Mein Simulator behauptet, in ca. 55ms 
die  Sinuskurve zu zeichnen (bei 14.xx MHz AVR-Takt, Optimierung -O1). 
Das Timing entspricht dabei in etwa dem eines blau-weissen EA-LCDs. Das 
ergibt dann ca. 20 Kurven/Sekunde.

Ohne Optimierung dauerts natürlich viel länger ...

Oliver

von Zwirbeljupp (Gast)


Lesenswert?

Naja, die Displays sind schon relativ langsam, aber es ist völlig 
ausreichend, um flüssige Animationen darzustellen:

http://base32.de/images/big/wuerfel.avi

Zwei Optimierungen könntest Du durchführen:
1.) Einen "Shadow-Ram" für den Displayinhalt benutzen, also den 
vollständigen Frame zunächst im internen Ram des Controllers zeichnen 
und anschließend den gesamten Frame in einem Rutsch ans Display 
übertragen (möglich, dass die o.g. Displayroutinen dies sogar schon tun, 
das weiß ich nicht...)
2.) Eine Sinustabelle vorberechnen und die Werte später nur aus der 
Tabelle holen anstatt ständig Sinusberechnungen durchzuführen.

Gruß
Jupp

von Sven D. (Gast)


Lesenswert?

Hallo !

@Philipp Karbach. Danke! Das habe ich nicht gewusst! :o(

@Oliver und @ Zwirbeljupp. Auch an Euch einen großen Dank.

Die Variante mit der Sinustabelle werde ich in Angriff nehmen. Klingt 
gut!

Vielen Dank an Euch alle.

Gruß

von Philipp Karbach (Gast)


Lesenswert?

ja also man kann schon eine animation darstellen aber es ist nicht 
wirklich schön! habe versucht tetris zu programmieren und das war nicht 
wirklich ein spaß. die blockgeschwindigkeit muss man enorm herabsetzen 
sonst verwischt alles. Ich bin immer noch auf der suche nach einem 
günstigen display mit schneller ansteuerbarkeit!

von Zwirbeljupp (Gast)


Lesenswert?

@Philipp Karbach
Auf so einem Nokia 6100 Display ist Tetris akzeptabel auch bei hohen 
Blockgeschwindigkeiten hinzubekommen (selbst mit einem PIC bei 12 MIPS). 
Der Bildschirm ist nur halt ein wenig klein...

Du könntest auch mal ein DOGM-Grafikdisplay (gibts bei Reichelt) 
ausprobieren. Diese haben zwar nur ein SPI-Interface, lassen sich aber 
recht flott beschreiben. Ich habe hier zwar noch kein Tetris getestet, 
aber Animationen laufen flüssig.

gruß
jupp

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.