Hallo,
ich suche ein geeignetes LCD für Atmega16 bzw. 32.
Auf der Seite
http://www.kh-gps.de/display.htm
das 2. Bild entspräche ziemlich genau meinen Vorstellungen, also:
-möglichst "viel Text" d.h. kleinere Buchstaben, viele Reihen
-entsprechende Größe 240x320
-Farbe nicht notwendig
bei Ebay werden einem diese Displays hinterhergeworfen:
http://www.ebay.de/itm/SainSmart-3-2-TFT-LCD-Modul-Touch-Panel-PCB-adapter-SD-Reader-fur-Arduino-2560-/320934310788?pt=Bauteile&hash=item4ab92cf384
entweder mit dem Controller SSD1289 oder ILI 9325.
Gibt es für den gleichen Preis (~15-20 Euro) Displays mit der gleichen
Größe, aber einem Controller, der bereits einen Zeichensatz integriert
hat?
Farbe ist wie erwähnt, Nebensache.
Wenn nicht, welcher der o.g. Controller eignet sich besser für viel Text
(bissl Grafik)?
Vielen Dank
Ob es andere Displays mit integriertem Zeichensatz gibt, kann ich Dir
nicht sagen.
Wenn Du noch bissi Flash frei hast, kannst Du Dir die u8glib anschauen,
die kommt mit einigen Fonts daher. Wenn Du Glück hast, ist auch der SSD
unterstützt. (Weiß ich gerade nicht). Wenn nicht, ist die Integration
eines neuen Treibers eigentlich simpel.
Grüße,
RSp
ok klasse. diese u8glib hab ich noch nicht gekannt. leider ist der
SSD1289 nicht dabei. Wenn jemand noch einen passenden Controller (inkl.
Display) kennt, bitte melden.
Liegt das am Preis oder gibt es selbst für mehr Budget kein Display mit
passendem Controller in dieser Größe?
Jens K. schrieb:> ich suche ein geeignetes LCD für Atmega16 bzw. 32.
Warum?
Es ist doch viel einfacher, einen µC zu verwenden, der die
Display-Ansteuerung gleich mit übernimmt.
> das 2. Bild entspräche ziemlich genau meinen Vorstellungen, also:> -möglichst "viel Text" d.h. kleinere Buchstaben, viele Reihen> -entsprechende Größe 240x320> -Farbe nicht notwendig
Also irgendein Resterampen-Display von Pollin und ein Mega1284P (der hat
genug internen Speicher für den Refresh und genug Flash für beliebige
(sinnvolle) Zeichensätze und der Drops ist gelutscht.
Wo ist das Problem? Warum muß man auf Steinzeitware wie M16 oder M32
beharren, wo es den M1284P pinkompatibel und weitgehend
softwarekompatibel für einen oder maximal zwei Euro mehr gibt?
1. ich beharre nicht auf meinen Atmega16/32. mit diesem habe ich jetzt
eben angefangen.
2. hier geht es mir nicht um die Vor- oder Nachteile bestimmter MC,
sondern darum, ob es einen passenden Displaycontroller gibt, der mir als
Anfänger möglichst Frust erspart, indem er das meiste bereits integriert
hat.
Sobald jemand hier schreibt, dass es sowas einfach nicht gibt, wäre das
Thema auch schon beendet und ich muss mir was anderes überlegen.
Gerade für mich als LCD Anfänger, halte ich das Schreiben einer
kompletten Ansteuerung inkl Zeichensatz als kaum erfolgsgekrönt
@Jens K.
in den Downloads zu dem Teil von EBay findest du schon entspechende
"Treiber" für das Teil an einem Atmel.
Aufgrund der benötigten Anzahl von Portleitungen für das Display ist ein
etwas größerer µC sinnvoll.
Der SSD1289 ist eben nur ein Displaytreiber. Bei den Möglichkeiten, die
das Display so bietet würden einem die integierten Fonts (wenn es welche
gäbe) sicher auch wieder nicht passen.
Es gibt im WEB Fontconverter, mit denen kannst du ganz einfach aus jedem
beliebigen Font der auf deinem Recher drauf ist, eine enstprechende
Fontdatei für den µC erstellen.
Sascha
Da die u8glib erwähnt wurde, hier mein Kommentar.
Anforderungen waren:
1. Möglichst groß (240x320)
2. Kleiner Text
3. Anfängerfreundliche Nutzung.
4. Farbe nicht notwendig, aber Verweis auf Farb TFT
5. 8-Bit Controller
Ein paar technische Rahmenbedingungen (soweit mir bekannt):
- Controllerlose Displays lassen sich nicht mit 8-Bittern ansprechen und
erfordern darüberhinaus sehr viel SW.
- 8-Bit Controller und Farbe ist nicht unmöglich, aber auf jedenfall
langsam.
- Die meisten GLCD haben keinen eingebauten Zeichensatz. Der wäre aber
bei der u8glib dabei. Selbst bei einem eingebauten Zeichensatz ist so
ein Controller aber meist doch nicht sooo einfach zu programmieren.
Soweit mir Feedback zu u8glib gegeben wurde, kann ich sagen, dass die
meisten User ihr Ziel mit u8glib erreichen konnten:
- Monochromes Display
- Maximal 240x128 Pixel
Wie schon angesprochen hat u8glib ein paar sehr winzige Fonts. Da
bekommt man schon viel unter.
Zu den Displays:
- DOGXL160, 160x104, gibt es neu beim reichelt zu kaufen
- Displays auf Basis des T6963 gibt es bei "buy-display.com" zu kaufen
(bis zu 240x128 groß). Manchmal findet man solche Displays auch bei
ebay.
- Ich hab mir letzthins Displays auf Basis des UC1608/UC1698 bestellt.
Displaygröße ist hier bis zu 240x120. Wann allerdings u8glib diese
Controller unterstützt kann ich noch nicht sagen.
Wegen des Smartphone Booms sind RGB TFTs ausgesprochen günstig, deren
Ansteuerung ist aber aufwendiger und langsamer. Das macht erst mit einem
ARM ab 50 MHz Spass. Von u8glib wird noch kein RGB TFT unterstützt.
U8glib wurde optimiert für 8 Bitter und monochrome Displays bis 256x256
Pixel. U8glib läuft ab 8K Flash und 512Bytes RAM.
1. Möglichst groß (240x320)
--> nicht ganz mit u8glib erfüllbar
2. Kleiner Text
--> ja, mit u8glib
3. Anfängerfreundliche Nutzung.
--> http://code.google.com/p/u8glib/wiki/userreference
4. Farbe nicht notwendig, aber Verweis auf Farb TFT
--> U8glib ist optimiert für monochrome GLCDs
5. 8-Bit Controller
--> ok
Grüße,
Oliver
u8glib schrieb:> Ein paar technische Rahmenbedingungen (soweit mir bekannt):> - Controllerlose Displays lassen sich nicht mit 8-Bittern ansprechen und> erfordern darüberhinaus sehr viel SW.
Das beides stimmt schonmal definitiv nicht.
> - 8-Bit Controller und Farbe ist nicht unmöglich, aber auf jedenfall> langsam.
Auch das stimmt nicht. Wenn der Controller nicht selber den Refresh
macht, sondern halt ein dedizierter Displaycontroller, dann hängt die
Geschwindigkeit einer Aktualisierung des Displayinhalts üblicherweise
nur von der Geschwindigkeit des Datenpfads zwischen den beiden
Controllern ab. Ist das ein serieller Pfad wie etwa SPI, spielt die
Verarbeitungsbreite des Steuercontrollers naturgemäß absolut keine
Rolle. Nur der maximale Takt, mit dem er eben diesen Datenpfad betreiben
kann.
> Soweit mir Feedback zu u8glib gegeben wurde, kann ich sagen, dass die> meisten User ihr Ziel mit u8glib erreichen konnten:> - Monochromes Display> - Maximal 240x128 Pixel
Oops. Mein Mega1284P schafft völlig problemlos controllerloses QVGA
(also 320x240) @60Hz Refresh. Da bleibt dann sogar noch knapp die Hälfte
der Rechenzeit für die eigentliche Anwendung. Natürlich ist die Sache
konfigurierbar. Das Limit ist der RAM und die Rechenzeit. Die Zahl der
darstellbaren Pixel wird durch beides gleichermaßen auf ungefähr 120000
beschränkt (bei 60Hz Refresh).
Wenn man statt Vollgrafik allerdings Blockgrafik (bzw. fixed-pitch Text)
verwendet, spielt die Limitierung durch den RAM nicht mehr die Rolle.
Dann hängt's nur noch an der Rechenzeit. Die sinnvolle Grenze liegt dann
etwa bei VGA-Auflösung, da schafft er dann nicht mehr 60Hz Refresh
sondern nur noch ca. 30Hz, was die Grenze des einigermaßen akzeptablen
darstellt, darunter beginnen auch langsame LCDs schon recht lästig zu
flimmern.
Und natürlich bleibt dann für eine "Anwendung" nix mehr über, es reicht
dann nur noch für den Betrieb eines SPI- oder RS232-Interface zur
Befüllung des Bildwiederholspeichers durch einen externen
Steuercontroller. Der gute Mega mutiert also in dieser Konfiguration zum
reinen Displaycontroller. Eher unsinnig, dafür gibt es viel geeignetere
Hardware...
Diese Eckwerte stecken jedenfalls ungefähr ab, was mit AVR als gängigem
8-Bitter erreichbar ist.