www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 3.5" TFT-Display an Atmega128


Autor: Thorsten Wurm (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ih bin im Moment am Verzweifeln. Ich habe ein Powertip 3.5" Display, 
dass ich mit einem Atmega128 ansteuern will. Leider tut das Ding nicht 
das, was es soll. Datenblatt des Displays kann man hier finden: 
http://www.data-modul.com/de/products/tft_displays...

Im Anhang ist mein Programm für den Atmega. Wenn ich das Display mit 
Strom versorge, dann schaltet das Display kurz nach dem Einschalten auf 
ein schwrzes Bild und mehr passiert nicht. Eigentlich sollte der 
Bildschirm mit einer Farbe gefüllt werden.

Hat jemand mit diesem Display bzw. dem Controller von Himax (HX8238a) 
Erfahrung und kann mir sagen, wo mein Fehler liegt bzw. mir ein 
Beispielprogramm schicken?

Mfg,
Thorsten Wurm

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sehr ambitioniert das Display in BASSCOM an zu steuern...

Der Display controller hat keinen Speicher (du musst das Bild 
kontinuierlich aktualisieren), keine Ahnung was dein Programm macht 
(BASSCOM ist mir zu "kompliziert") aber ich gehe davon aus, dass deine 
Dotclock viel zu niedrig ist um irgendwas sehen zu können.

Entweder kaufst du dir einen µC mit Displaycontroller (z.B. nen 
Grasshüpfer) oder du schließt einen externen an.

Anscheinend versuchst du ja auch nur ein mal ein Bild auf dem Display an 
zu zeigen und gehst danach in ne Endlosschleife. Also selbst wenn die 
Kommunikation mit dem Display funktioniert würde nur 1 mal nach Power-Up 
ein einzelner Pixel durch das Display laufen und dann wäre alles wieder 
schwarz (oder der letzte Pixel würde noch weiter angesteuert werden, 
ganz genau weiss ich das nit).

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> wo mein Fehler liegt
Der Fehler liegt darin, dass du das Timing aus dem Datenblatt nicht in 
Software umgesetzt hast. HSYNC, VSYNC, die Pixeldaten und insbesondere 
der DOTCLK müssen sich mit der dort angegebenen Frequenz /ständig 
wiederholen/   :-o

Interessant dürfte auch die Anmerkung unterhalb der Tabelle 2.3 sein.
10MHz-30MHz Pixelclock in Basic, das wird spannend...

Autor: Thorsten Wurm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

vielen Dank für die schnellen Antworten.
Dazu habe ich aber noch zwei Fragen:
1: lupin schreibt, dass der Display-Controller keinen eigenen Speicher 
hat. Ich hatte das aber so verstanden, dass die einzelnen Pixel so lange 
angezeigt werden, bis sie entweder überschrieben werden oder das Display 
halt resettet wird. Ist das dann eher wie bei einem Fernseher zu 
verstehen, soll heißen, dass ich den einzelnen Pixel dann 25 mal in der 
Sekunde ansteuern muss?

2: lkmiller schreibt, dass der Dotclk 10-30Mhz sein soll. Heißt das, 
sobald die Frequenz kleiner als 10 Mhz ist, dass dann das Display 
sowieso nicht mehr arbeitet.
Die Hardware ist so aufgebaut, dass ein Atmega128 (16Mhz Takt) das 
Display steuern soll. Dieser muss aber noch die Bilddaten von einer 
Speicherkarte lesen. Das würde ja auf jeden Fall bedeuten, dass ich die 
Dotclk-Frequenz weit unter 10 Mhz haben würde. Kann das dann überhaupt 
noch funktionieren?

Mfg,
Thorsten Wurm

Autor: gast der gäste (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nein kann nicht funktionieren, vergiss dein vorhaben (sorry der harte 
ausdruck)

ja du musst permanent das display refreshen, es hat keinen speicher und 
es verliert den inhalt.

wen hsync, vsync und pxlclk nicht snychron im richtigen (hohen) 
taktlaufen wird das nichts mit dem anzeigen -> für einen avr OHNE 
Hardeware Block welches ein TFT utnerstütz und Framebuffer gehts nicht 
-> meist erst bei Derivaten mit DRAM zu finden weil das ja auch gleich 
mal ein paar MByte sind ... (Stichwort Double and Trippl Buffering)

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> lkmiller schreibt, dass der Dotclk 10-30Mhz sein soll.
Neinein, nicht ich schreibe das.
Das Datenblatt des Displays schreibt das  :-o

> Heißt das, sobald die Frequenz kleiner als 10 Mhz ist, dass dann das
> Display sowieso nicht mehr arbeitet.
Es wird schon nocht tun, aber je weiter du von dieser Frequenz weggehst 
umso seltsamer werden die Effekte...

> Ich hatte das aber so verstanden, dass die einzelnen Pixel so lange
> angezeigt werden, bis sie entweder überschrieben werden oder das Display
> halt resettet wird.
Das Display hat keinen eingebauten Oszillator und braucht einen 
durchgehenden Pixeltakt, um die interne Logik korrekt weiterzuschalten. 
Wenn du den Pixeltakt an einem stehenden Bild wegnimmst, dann fehlt der 
Refresh, und du wirst kurz darauf Schlieren/Regenbogen... auf dem 
Display sehen.

> Kann das dann überhaupt noch funktionieren?
Eher nein  :-(

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das es nicht ganz aussichtslos ist wird hier gezeigt:
Youtube-Video "Pac Man Game with AVR Atmega32 color LCD"

Allerdings unterscheiden sich da ein paar Punkte:
* ASM statt BASSCOM
* Das Display wird unterhalb der eigentlichen DotClock betrieben
* Da nur zwei 8 Bit Ports verbunden sind gehe ich davon aus, dass das 
Display nur mit 8 Bit Farbe statt der möglichen 24 Bit betrieben wird

Zusätzlich könnte man den AVR noch übertakten...

Ich denke wenn man on the fly ein VGA Signal erzeugen kann, dann kann 
man auch on the fly ein TFT Display ansteuern.

Sag mal wo hast du das Display her und wieviel hat es gekostet?

Autor: Thorsten Wurm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
das Display habe ich von Display Devices aus München. Hat so um die 15€ 
gekostet. Gibt es aber auch bei Data-Modul oder bei Electronic Assembly.

Mfg,
Thorsten Wurm

Autor: Holle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe mal vor nicht allzulanger Zeit etwas gelesen von Fujitsu 16FX 
Controllern, dort wurde mittels DMA ein externer Videobuffer und ein TFT 
angesteuert (1/4 VGA glaub ich). Ein Distri hat mir auch ein 
funktionsfähige Applikation vorgelegt. Vllt kommst Du damit etwas 
weiter, denn:

günstige Evalboards (rund 100Euro)
kostenloser Compiler
kostenlose Toolchain (über RS232)

Allerdings weiß ich nicht mehr genau wo das im Netz zu finden ist!?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.