Geschwindigkeit des GLCD´s

Gast #1159758
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
Gast
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ß
Gast
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
Gast
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
Gast
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ß
Gast
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!
Gast
@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

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.