Hallo, ich habe das Display noch herumliegen. 3.2z statt der winzigen 2.2z Dinger. Darum ging es nämlich. http://www.ebay.de/itm/121504830137?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT So wie es aussieht ist es für LTDC Betrieb an einem Parallelbus geeignet, zb am F429 über DMA. Das möchte ich wegen der vielen Pins eigentlich nicht. Den ILI9341 gibt es ja auch für SPI Betrieb. So ganz blicke ich da noch nicht durch: Ist das Display im Bild auch für SPI Betrieb mit einer ILI93141 Library geeignet? Und wenn nicht, welches Display ist 3.2z gross und hat eine SPI für den ILI93141? (ich weiss dass es noch andere Chips gibt wie den SSD1389 aber ich möchte bei einem bleiben.) Gruss, Christian
Christian J. schrieb: > Ist das Display im Bild auch für SPI Betrieb mit einer ILI93141 Library > geeignet? Wenn der Verkäufer mit seinem Bild nicht lügt dann kann dieses Teil nicht mit SPI angesteuert werden. Es sind zwaz SPI Leitungen vorhanden, diese dienen jedoch ausschliesslich der SD Karte und dem Touch Controller. Die Chance ein grösseres Display mit SPI zu bekommen ist gering da die Datenübertragungsrate für eine "flüssige" Darstellung mit SPI nicht mehr gut erreichbar ist.
Arduinoquäler schrieb: > Die Chance ein grösseres Display mit SPI zu bekommen ist gering > da die Datenübertragungsrate für eine "flüssige" Darstellung mit > SPI nicht mehr gut erreichbar ist. Hallo, das kann eigentluch nicht sein, da beide Display mit 320x240 bezeichnet sind. Nur die Pixel sind eben etwas größer bei dem 3.2z Display. Die 2.2z Dinger kenne ich, die roten Platinen, auch SD karte drunter. Und mit einer 10 Mhz SPI ist das bei mir schon recht flott, nur leider ist im Radio deutlich das bsss.....bsss... auf allen Sendern zu hören, die Laboraufbauten rotzen rum, was das Zeugs hält.
Arduinoquäler schrieb: > Was kann nicht sein? Dass es kein 320x240 px LCD mit 3.2z und SPI gibt. Beim SSD1289 (3.2z) brauche ich 18 Leitungen und 150kb vom uC Speicher gehen für den FSMC drauf, da das Grafikram im uC abgebildet wird. Will ich nicht :-(
Hallo, ein Display mit einem SSD1289 hat ein internes RAM. Es hat halt nur eine 16Bit breiten Bus. Da brauchst du kein FSMC (STM32F4..) Es laüft prima mit einem Atmega.. (Atxmeg..) Ich habe schon viele Displays verwendet, aber ein 3,2" Display mit einem ILI9341 gibt es nicht, oder ich habe keines gefunden. 2,2" oder max. 2,8" sind die Regel. Ein qualitativ hochwertiges SPI-Display ohne Touch findst du bei Reichelt. http://www.reichelt.de/RASP-C-BERRY-28/3/index.html?&ACTION=3&LA=446&ARTICLE=144719&artnr=RASP+C-BERRY+28&SEARCH=c-berry28 Es hat 2,8" und einen Controller ST7789. Der ist nahezu mit einem ILI9341 kompatible. Der Preis für ein solches Display ist in Ordnung. Code gibt es hier: http://basteln-mit-avr.de/index.html Gruß G.G.
Ich glaube das kann schon sein. Ist dieses nicht auf dem F429 eval board auch drauf? Es wird über SPI am Anfang initialisiert und so konfiguriert dass es sein Pixel über den 16 Bit Parallelbus bekommt. Nach der Initialisierung bleibt der SPI ruhig und das Display kann über den LTDC angefahren werden.
Gerhard G. schrieb: > Ich habe schon viele Displays verwendet, aber ein 3,2" Display mit einem > ILI9341 gibt es nicht, oder ich habe keines gefunden. 2,2" oder max. > 2,8" sind die Regel. Hallo, nach vielem Rumgooglen komme ich zu der Erkenntnis dass der einzige Weg ein 3.2z Display (bin 40+x, die Augen..) an einen F407 zu pappen der ist, ein Display mit SSD1289 zu verwenden und dessen Ram über den FSMC in den F407 zu mappen. Ein Display mit ILI9341 LTDC passt nicht, da der 407 keinen TFT Display Treiber hat, nur der F429er hat den. Also eines mit SSD1289 besorgen..... Gruss, Christian
Arduinoquäler schrieb: > Man kann sich das Leben auch schwer machen. Bisher hast du nichts von dir gegeben, was mir das Leben leichter machen würde... 3.2z muss es sein.
Du kannst das Ili9341 doch ganz einfach via SPI ansprechen das kann der 407 doch...
Egal schrieb: > Du kannst das Ili9341 doch ganz einfach via SPI ansprechen das kann der > 407 doch... Zeigst Du mir eines mit 3.2z Bildschirm?
Egal schrieb: > Du kannst das Ili9341 doch ganz einfach via SPI ansprechen das kann der > 407 doch... Die erforderlichen Signale des Controllerchips sind nicht in jedem Fall auf den Connector herausgeführt. Viele Displays sind daher auf einen bestimmten Modus festgelegt. Vorher ins Datenblatt des Displays schauen hilft. fchk
Gleiches Problem hier: Es gibt scheinbar doch 3.2'' Displays mit SPI. Nur muss man dieses irgendwie über sog. IM - Eingänge aktivieren. Nur wo sind die und wie aktiviert man die ? Ich habe dieses Display: https://www.aliexpress.com/item/3-2-inch-touch-screen-TFT-65K-color-LCD-module-integrated-touch-control-IC-SD-card/1919718096.html Threads, die diese Thema behandeln und angeblich gelöst haben: http://www.edaboard.com/thread360074.html Gruß Gerd
Gerd S. schrieb: > Nur wo sind die An dem flexiblen Connector-Band das du findest wenn du das Display vom Controller abhebst. Gerd S. schrieb: > und wie aktiviert man die ? Indem man die Konfigurations-Eingänge gezielt auf Masse bzw Vcc legt wie im Datenblatt beschrieben. Habe ich jetz doof geantwortet? Dann war die Frage schon doof.
Arduinoquäler schrieb: > wenn du das Display vom Controller abhebst. Ich verbessere: ... wenn du das Display vom Board (PCB) abhebst.
Gerd S. schrieb: > Gleiches Problem hier: > > Es gibt scheinbar doch 3.2'' Displays mit SPI. Nur muss man dieses > irgendwie über sog. IM - Eingänge aktivieren. Nur wo sind die und wie > aktiviert man die ? > > Ich habe dieses Display: > https://www.aliexpress.com/item/3-2-inch-touch-screen-TFT-65K-color-LCD-module-integrated-touch-control-IC-SD-card/1919718096.html > > Threads, die diese Thema behandeln und angeblich gelöst haben: > http://www.edaboard.com/thread360074.html > > Gruß > Gerd Solche Displays gibt's auch mit Datenblättern und Schaltungsbeispielen... http://www.buydisplay.com/default/3-2-inch-capacitive-touchscreen-240x320-tft-lcd-module-display Ansonsten hilft nur die Methode von Arduinoquäler: Nachschauen/messen
Gerd S. schrieb: > Es gibt scheinbar doch 3.2'' Displays mit SPI. Nur muss man dieses > irgendwie über sog. IM - Eingänge aktivieren. Nur wo sind die und wie > aktiviert man die ? > > Ich habe dieses Display: > https://www.aliexpress.com/item/3-2-inch-touch-screen-TFT-65K-color-LCD-module-integrated-touch-control-IC-SD-card/1919718096.html Dieses Diplay habe ich auch und das hat keine SPI, sondern wird in den Memory Bereich des uC gemapped und per DMA gefüttert. Es gibt deshalb keine größeren als 320x240, weil das viel zu langsam wäre die per SPI zu füttern. Ein Display soll ja fliessende Bilder ermöglichen, sonst würde es nicht hergestellt werden. Lösungen für sowas findest Du aber auch hier, für den ILI9327 https://www.youtube.com/watch?v=7pFui4tvjBE
Christian J. schrieb: > Dieses Diplay habe ich auch und das hat keine SPI Natürlich hat das Display SPI, nur der Softie mit den zwei linken Händen kommt nicht ran. Christian J. schrieb: > weil das viel zu langsam wäre die per SPI zu füttern Das kann kein gültiges Argument sein. Für eine billige Slidshow reicht SPI auf dem STM allemal.
>> weil das viel zu langsam wäre die per SPI zu füttern
Ich verwende ein ILI9341 mit 320x240 mit SPI.
Wenn man sich die Ansteuerungen die so im Netz rumgeistern mal anschaut
ist das teilweise ein graus. Ich habe die Routinen optimiert und
benötige ca. 300ms für ein komplettes beschreiben. Meistens muss jedoch
nur ein kleiner Teil neu gezeichnet werden, das ist in wenigen ms
erledigt.
Klar, einen Film möchte ich nicht damit anschauen. Aber dafür sind die
Dinger auch nicht vorgesehen.
http://www.ebay.de/itm/3-2-3-2inch-320x240-Screen-Touch-SPI-LCD-ILI9341-TFT-PCB-adapter-/282435724809?hash=item41c27b2609:g:64EAAOSwRUhY89O7 Interface 4-wire-serial müsste sich auf den tft beziehen. ebenso http://www.ebay.de/itm/3-5-Zoll-TFT-SPI-LCD-Touch-Screen-Display-Monitor-Modul-fur-Raspberry-Pi-2B-3B-/152289941365?hash=item2375301775:g:i88AAOSwYHxWJADr Eigentlich müssten alle pi-kompatiblen TFTs seriell anzuschließen sein. Also nach "pi tft" googeln.
Frickelfritze schrieb: > Christian J. schrieb: >> Dieses Diplay habe ich auch und das hat keine SPI > > Natürlich hat das Display SPI, nur der Softie mit den > zwei linken Händen kommt nicht ran. Dann zeige mir, dass die SPI, welche im Datenblatt erwähnt wird dazu geeignet ist das Display mit Daten zu füttern und nicht nur eine Steuerfunktion hat! Das Display hat übrigens auch 320x240, nur halt größere Pixel. Darüber habe ich kein einziges gefunden, damals totgesucht. Außer einem Projekt was mal hier vor Jahren lief, wo ein AVR ein 640x480 s/w seriell ansteuerte per UART fuer einfache Dinge. Das habe ich sogar nachgebaut und dafür 50 Platinen für dieses Forum machen lasen damals. Datenblatt des "Blauen": - Display Driver IC for ILI9341, touch screen driver chip is XPT2046; - Display interface 16bit parallel interface, support for 6800 and 8080 bus interface, support for the STM32 FSMC bus interface refresh speed; - Touch screen interface for the SPI interface, the data line low, driving simple; Die SPI dient da wohl nur dazu den Touch auszulesen. Also zeigen und ich gebe Ruhe und Du kriegst nen Keks! ;-) > Christian J. schrieb: >> weil das viel zu langsam wäre die per SPI zu füttern > Das kann kein gültiges Argument sein. > Für eine billige Slidshow reicht SPI auf dem STM allemal. Das überzeugt aber keinen Hersteller von Displays..... Das auf dem Disco Board F429 verbaute Display hat auch eine SPI, kann aber trotzdem damit nicht bedient werden, da es die Busanbindung dringend braucht. Die SPI dient dabei nur dazu das Display zu steuern und zu konfigurieren. Die Bilder zieht es sich aus dem Memoryr per DMA Request.
Bastler schrieb: > Ich verwende ein ILI9341 mit 320x240 mit SPI. > Wenn man sich die Ansteuerungen die so im Netz rumgeistern mal anschaut > ist das teilweise ein graus. Ich habe die Routinen optimiert und Dann haben wir den gleichen Weg hinter uns. Ich habe mir auch was Fertiges geschnappt und dann rum optimiert. Buchstabentabellen dauern am längsten. Auf Lochraster gibt es aber eine natürliche Grenze, die bei mir bei ca 12 Mhz liegt. Alles drüber gibt Murks und ist deutlich im Radio hörbar. > benötige ca. 300ms für ein komplettes beschreiben. Meistens muss jedoch > nur ein kleiner Teil neu gezeichnet werden, das ist in wenigen ms > erledigt. Bei einer quasi-statischen Anzeige von Messwerten etc berechnet man eh immer nur das Delta, macht etwas schwarz und zeichnet dann neu. > Klar, einen Film möchte ich nicht damit anschauen. Aber dafür sind die > Dinger auch nicht vorgesehen. Nö, aber optimooool für eine Wetter-Uhr :-) Mit Touch wird es dann schon deutlich komplizierter ohne zb uGFX im Hintergrund.
Chris J. schrieb: > Dann zeige mir, dass die SPI, welche im Datenblatt erwähnt wird dazu > geeignet ist das Display mit Daten zu füttern und nicht nur eine > Steuerfunktion hat! Hatte ich weder die Absicht das zu zeigen, noch behauptet dass es so ist. Und trotzdem hat das Display SPI. Frickelfritze schrieb: > Natürlich hat das Display SPI, nur der Softie mit den > zwei linken Händen kommt nicht ran. Denn man braucht eben mehr als nur zwei Finger auf der Tastatur um ranzukommen.
>Das auf dem Disco Board F429 verbaute Display hat auch eine SPI, >kann aber trotzdem damit nicht bedient werden, da es die >Busanbindung dringend braucht. Quark. >Die SPI dient dabei nur dazu das Display zu steuern und zu konfigurieren. Quark. >Die Bilder zieht es sich aus dem Memory per DMA Request. Quark. Der ili9341 kann als SPI only, SPI Config und Data i80 oder SPI Config und DirectDrive verwendet werden. Auf dem F429-Disco ist nur das i80 Interface nicht verfügbar. SPI geht ganz zügig mit DMA, wenn man Hardware Chipselect für SPI nutzt (eine Drahtbrücke am Board nachrüsten). >Dann zeige mir, dass die SPI, welche im Datenblatt erwähnt wird >dazu geeignet ist das Display mit Daten zu füttern und nicht nur >eine Steuerfunktion hat! https://youtu.be/qSf7YtFZIsA Ich hoffe, statt trockenem Datasheet reicht auch die Live Demonstration.
dasrotemopped schrieb: > Ich hoffe, statt trockenem Datasheet reicht auch die Live Demonstration. Ja reicht. Sowas habe ich auch mal gebastelt mit einem USB Stick am Port und einer Demo Software. >>Der ili9341 kann als SPI only, SPI Config und Data i80 oder SPI Config >>und DirectDrive verwendet werden. Ok.... also bin ich nicht ganz blond, "SPI Config" klingt wie das was ich meinte. D.h. das blaue Display kann "irgendwie" dazu gebracht werden mit 4 Leitungen zu arbeiten, statt mit den vielen, die es rausgeführt hat. Die Ansteuerung habe ich nur stur abgeschrieben, das ist ein ellenlanger Wust an Zahlen, die da reingespielt werden. Dann kann ich farbige Pixel setzen und drauf basiert alles anderen letzlich.
1 | * Startet die Initialierung des Displays */ |
2 | void LCD_Init_Display(void) |
3 | {
|
4 | /* Delay for RST response */
|
5 | LCD_Delay(20000); |
6 | |
7 | /* Software reset */
|
8 | LCD_SendCommand(LCD_RESET); |
9 | LCD_Delay(50000); |
10 | |
11 | LCD_SendCommand(LCD_POWERA); |
12 | LCD_SendData(0x39); |
13 | LCD_SendData(0x2C); |
14 | LCD_SendData(0x00); |
15 | LCD_SendData(0x34); |
16 | LCD_SendData(0x02); |
17 | |
18 | LCD_SendCommand(LCD_POWERB); |
19 | LCD_SendData(0x00); |
20 | LCD_SendData(0xC1); |
21 | LCD_SendData(0x30); |
22 | |
23 | LCD_SendCommand(LCD_DTCA); |
24 | LCD_SendData(0x85); |
25 | LCD_SendData(0x00); |
26 | LCD_SendData(0x78); |
27 | |
28 | LCD_SendCommand(LCD_DTCB); |
29 | LCD_SendData(0x00); |
30 | LCD_SendData(0x00); |
31 | |
32 | LCD_SendCommand(LCD_POWER_SEQ); |
33 | LCD_SendData(0x64); |
34 | LCD_SendData(0x03); |
35 | LCD_SendData(0x12); |
36 | LCD_SendData(0x81); |
37 | |
38 | LCD_SendCommand(LCD_PRC); |
39 | LCD_SendData(0x20); |
40 | |
41 | LCD_SendCommand(LCD_POWER1); |
42 | LCD_SendData(0x23); |
43 | |
44 | LCD_SendCommand(LCD_POWER2); |
45 | LCD_SendData(0x10); |
46 | |
47 | LCD_SendCommand(LCD_VCOM1); |
48 | LCD_SendData(0x3E); |
49 | LCD_SendData(0x28); |
50 | |
51 | LCD_SendCommand(LCD_VCOM2); |
52 | LCD_SendData(0x86); |
53 | |
54 | LCD_SendCommand(LCD_MAC); |
55 | LCD_SendData(0x48); |
56 | |
57 | LCD_SendCommand(LCD_PIXEL_FORMAT); |
58 | LCD_SendData(0x55); |
59 | |
60 | LCD_SendCommand(LCD_FRC); |
61 | LCD_SendData(0x00); |
62 | LCD_SendData(0x18); |
63 | |
64 | LCD_SendCommand(LCD_DFC); |
65 | LCD_SendData(0x08); |
66 | LCD_SendData(0x82); |
67 | LCD_SendData(0x27); |
68 | |
69 | LCD_SendCommand(LCD_3GAMMA_EN); |
70 | LCD_SendData(0x00); |
71 | LCD_SendCommand(LCD_COLUMN_ADDR); |
72 | LCD_SendData(0x00); |
73 | LCD_SendData(0x00); |
74 | LCD_SendData(0x00); |
75 | LCD_SendData(0xEF); |
76 | |
77 | LCD_SendCommand(LCD_PAGE_ADDR); |
78 | LCD_SendData(0x00); |
79 | LCD_SendData(0x00); |
80 | LCD_SendData(0x01); |
81 | LCD_SendData(0x3F); |
82 | |
83 | LCD_SendCommand(LCD_GAMMA); |
84 | LCD_SendData(0x01); |
85 | |
86 | LCD_SendCommand(LCD_PGAMMA); |
87 | LCD_SendData(0x0F); |
88 | LCD_SendData(0x31); |
89 | LCD_SendData(0x2B); |
90 | LCD_SendData(0x0C); |
91 | LCD_SendData(0x0E); |
92 | LCD_SendData(0x08); |
93 | LCD_SendData(0x4E); |
94 | LCD_SendData(0xF1); |
95 | LCD_SendData(0x37); |
96 | LCD_SendData(0x07); |
97 | LCD_SendData(0x10); |
98 | LCD_SendData(0x03); |
99 | LCD_SendData(0x0E); |
100 | LCD_SendData(0x09); |
101 | LCD_SendData(0x00); |
102 | |
103 | LCD_SendCommand(LCD_NGAMMA); |
104 | LCD_SendData(0x00); |
105 | LCD_SendData(0x0E); |
106 | LCD_SendData(0x14); |
107 | LCD_SendData(0x03); |
108 | LCD_SendData(0x11); |
109 | LCD_SendData(0x07); |
110 | LCD_SendData(0x31); |
111 | LCD_SendData(0xC1); |
112 | LCD_SendData(0x48); |
113 | LCD_SendData(0x08); |
114 | LCD_SendData(0x0F); |
115 | LCD_SendData(0x0C); |
116 | LCD_SendData(0x31); |
117 | LCD_SendData(0x36); |
118 | LCD_SendData(0x0F); |
119 | |
120 | LCD_SendCommand(LCD_SLEEP_OUT); |
121 | |
122 | LCD_Delay(1000000); |
123 | |
124 | LCD_SendCommand(LCD_DISPLAY_ON); |
125 | LCD_SendCommand(LCD_GRAM); |
Moin, gibt es denn irgendeine Möglichkeit das Ding hier über eine SPI zu betreiben? Davon habe ich noch zwei ungenutzt herum liegen. Die Pins sind soweit ich sehe nicht heraus geführt, die beigefügten Infos beschreiben den ILITEK 9325 Chip. http://www.ebay.de/itm/2-8-inch-mit-Touchscreen-TFT-LCD-Display-ILI9341-Arduino-AVR-CP11005-/271534477424 Es müsste sich aber mit SPI konfigurieren lassen, vielleicht sogar 1:1 wie die 2,4z roten Displays, wo eben der gleiche Chip drauf ist aber nur die SPI rausgeführt istz. Ich hoffe, vermute mal das das Display internen Speicher hat bei einem 8/16 Bit Bus. Ideal wäre das hier: 800x480 und dazu noch die passenden Treiber für den STM32 als Disco Board und ich wäre happy. Endlich eine gescheite Darstellungsmöglichkeit. http://www.ebay.de/itm/7-0-inch-MIT-Touchscreen-SSD1963-MCU-800-480TFT-LCD-Display-fuer-Arduino-CP11013/281353506869?rt=nc&_soffid=200&_soffType=SaleAndClearence&_trksid=p5731.m3795
Chris J. schrieb: > Ideal wäre das hier: 800x480 Das hat garantiert kein SPI. Chris J. schrieb: > gibt es denn irgendeine Möglichkeit das Ding hier über eine SPI zu > betreiben? Ja, indem du das Display von der Leiterplatte löst und direkt an das Flachband-Kabel gehst. Dort sind alle Anschlüsse vorhanden.
Chris J. schrieb: > Ideal wäre das hier: 800x480 und dazu noch die passenden Treiber für den > STM32 als Disco Board und ich wäre happy. Endlich eine gescheite > Darstellungsmöglichkeit. Mach es wie die RaspBerrianer. Alle grösseren Displays für den RaspBerry die über SPI gesteuert werden haben (prinzipiell) diese Schaltung drin. Ein Counter, ein Inverter, und zwei Schieberegister. (Die Pin-Bezeichnungen des Inverters sind bei den Chinesen leider schiefgegangen)
Frickelfritze schrieb: > Ein Counter, ein Inverter, und zwei Schieberegister. > (Die Pin-Bezeichnungen des Inverters sind bei den Chinesen > leider schiefgegangen) Ok, und wofür der Counter? Mit dem Schiebregister kann man aber nur Daten einspielen, nicht auslesen. Ok, muss man ja vielleicht auch nicht. Die Geschwindigkeit ist dann natürlich recht gering, der Raspi ist ja viel schneller als so ein STM32F1.
Chris J. schrieb: > Die Geschwindigkeit ist dann natürlich recht gering Zuerst willst du SPI, und jetzt meckerst du darüber dass SPI langsam sei. Geht's noch? Bei dir kommt gefühlt nur noch Sch...... raus.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.