INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
SPI LCD, howto?!
10.07.2015, 22:37
Beitrag #1
SPI LCD, howto?!
Mir ist heute ein SPI LCD mit 160*128 in die Hände gefallen. Nun frage ich mich, wie soll ich die Pins im Bild auf der linken Seite (Die SD Card igonriere ich mal) mit dem UNO verbinden? Und welche Library ist da zu empfehlen?

Danke für Eure Hilfe!

[Bild: psq7tz1i4d81.jpg]
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.07.2015, 15:49
Beitrag #2
RE: SPI LCD, howto?!
das ist, glaube ich, nicht das Problem. Die meisten funktionieren mit der UTFT lib von H. Karlsen.
Und ich glaube kaum, dass es hier ein Hardware-SPI-fähiges Display ist.
(wenn doch: HER DAMIT !!! ) Big Grin

Wenn es aber software-SPI ist: dann funktionieren beide Geräte nicht gleichzeitig auf Hardware-SPI-Leitungen, man muss sie dann getrennt installieren:

der SD-Teil läuft mit SPI-Hardware, mit der Original-Arduino-SD-Lib (#include <SD.h> ), gebraucht werden Hardware- MISO, MOSI, CLK, CS -

und der TFT-Teil auf ganz anderen Pins, so wie sie per UTFT definiert werden (z.B. durchaus auch auf A0, A1, A2, A3, A4)

So ist es jedenfalls auf Mega und Due, nur haben beide ja immerhin einen SPI-Header. Mit Uno kenn ich mich nicht aus, der hat mir sowieso viel zu wenige Pins.

Ich musste sie bei mir auf dem Mega/Due auch getrennt einrichten, ganz egal, ob sie auf demselben oder auf getrennten Backpanes sitzen, siehe hier:
http://www.mindstormsforum.de/viewtopic....491#p66429
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.07.2015, 17:01
Beitrag #3
RE: SPI LCD, howto?!
Falls es noch keinem aufgefallen ist, linker Hand steht an dem Header SDA und SCK was auf ein I2C Interface hinweist. Rechts die SPI Lötaugen scheinen ja nur für die SD Karte zu sein. Ergo erst mal Datenblatt suchen und studieren.
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.07.2015, 17:26 (Dieser Beitrag wurde zuletzt bearbeitet: 11.07.2015 20:58 von HaWe.)
Beitrag #4
RE: SPI LCD, howto?!
dasi ist nicht korrekt, BK.
da steht auch CS, das ist SPI-Chip select,
SCK ist SPI-Clock und SDA ist MISO, auf anderen China-Teilen heißt es SDI.
Meins sieht i.P ganz genau so aus:

http://www.mindstormsforum.de/viewtopic....491#p66123
in diesem verlinkten Post steht noch mehr dazu.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.07.2015, 08:08
Beitrag #5
RE: SPI LCD, howto?!
(11.07.2015 17:26)HaWe schrieb:  dasi ist nicht korrekt, BK.
da steht auch CS, das ist SPI-Chip select,
SCK ist SPI-Clock und SDA ist MISO, auf anderen China-Teilen heißt es SDI.
Meins sieht i.P ganz genau so aus:

http://www.mindstormsforum.de/viewtopic....491#p66123
in diesem verlinkten Post steht noch mehr dazu.

Moin,
also das glaube ich dir erst wenn du genau von DEM Display den Schaltplan auf den Tisch legst. Und ein CS Signal muß nicht zwingend zu SPI gehören. Gerade du als alles Hinterfrager solltest da skeptischer sein.
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.07.2015, 09:39 (Dieser Beitrag wurde zuletzt bearbeitet: 12.07.2015 09:40 von HaWe.)
Beitrag #6
RE: SPI LCD, howto?!
es gibt hier sicher ne Menge harte als auch weiche Daten - dennoch:

1. hat CS nie und nimmer was mit I2C zu tun, sondern ist diie Standard-Bezeichnung für Chip-Select bei SPI, aber

2. ist ja die Funktion des Displays auch gar nicht gefragt (scheint also zu funktionieren), sondern die des SD-Slots, und die funktioniert in jedem Fall mit Hardware-SPI.

3. Mit I2C gäbe es daher auch überhaupt keine Pin-Überschneidungen und sie brauchen eh getrennte Leitungen, allerdings muss man

4. darauf achten, dass (falls meine Vermutung mit Software SPI fürs TFT richtig ist) STRENG die Soft-SPI-Pins fürs Display von den Hardware-SPI-Pins zum SD slot trennt, da beide nicht auf denselben SCK- und MISO-Leitungen zusammenarbeiten.

Wenn also
SD auf dem TFT-Backpane tatsächlich überhaupt technisch korrekt funktioniert (was es bei mir oftmals nicht tat),
man Punkt 3+4 beachtet,
dann SD auf Hardware-SPI konfiguriert samt <SPI.h> und <SD.h>,
und sich nach den SD-Tutorials des Playgrounds richtet,
dann wird es mit großer Wahrscheinlichkeit funktionieren.

Sicher ist man n.m.E. aber bei Arduino-Komponenten nie, was in diesem Falle uns beiden Recht gäbe. Wink
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.07.2015, 10:05
Beitrag #7
RE: SPI LCD, howto?!
(12.07.2015 09:39)HaWe schrieb:  es gibt hier sicher ne Menge harte als auch weiche Daten - dennoch:

1. hat CS nie und nimmer was mit I2C zu tun, sondern ist diie Standard-Bezeichnung für Chip-Select bei SPI, aber
FALSCH ! CS = Chip Select kann irgend eine Peripherie freigeben oder sperren und hat dem SPI erst mal rein gar nichts zu tun. ABER CS wird auch beim SPI Bus benötigt - aber gepachtet hat er diese Funktion deshalb noch lange nicht.
Und wenn es sein muß dann generiere ich dir auch auch für eine I2C Peripherie einen Chip Select....alles Sache des Schaltungsdesigns.
....
Zitat:4. darauf achten, dass (falls meine Vermutung mit Software SPI fürs TFT richtig ist) STRENG die Soft-SPI-Pins fürs Display von den Hardware-SPI-Pins zum SD slot trennt, da beide nicht auf denselben SCK- und MISO-Leitungen zusammenarbeiten.
Warum sollen Zwei SPI Devices nicht auf einem Bus zusammen funktionieren ? Das CS Signal bewerkstelligt hier die Auswahl des Teilnehmers. Ob hier ein Device nun Soft-SPI verträgt oder nicht steht auf einem anderen Blatt.

Zitat:Wenn also
SD auf dem TFT-Backpane tatsächlich überhaupt technisch korrekt funktioniert (was es bei mir oftmals nicht tat),
man Punkt 3+4 beachtet,
dann SD auf Hardware-SPI konfiguriert samt <SPI.h> und <SD.h>,
und sich nach den SD-Tutorials des Playgrounds richtet,
dann wird es mit großer Wahrscheinlichkeit funktionieren.
Hardware SPI ist eben die erste Wahl finde ich...Softwaremäßig einen Seriellen Bus zu simulieren ist immer eine Gratwanderung.

Zitat:Sicher ist man n.m.E. aber bei Arduino-Komponenten nie, was in diesem Falle uns beiden Recht gäbe. Wink

Ein wirklich wahrer Satz, mir graust es auch immer wenn die fC Gemeinde hochintegrierte Baugruppen anbietet und nicht sagt wo man eine genau dazu passende Doku findet....und so manche Nachbauer verstehen nicht mal was sie tun sonst würden solche Differenzen wie ich sie mal beim LCD-Keypad aufgezeigt habe nicht vorkommen, und das ist noch eine einfache Schaltung.
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.07.2015, 10:26 (Dieser Beitrag wurde zuletzt bearbeitet: 12.07.2015 10:40 von HaWe.)
Beitrag #8
RE: SPI LCD, howto?!
@BK:
probier's aus - ich habe es zig mal probiert mit SPI UTFT Software-libs, es hat nie funktioniert.
Der Grund ist möglicherweise, dass Software-SPI sowohl das Clock-Signal als auch CS als auch MISO (ggf auch MOSI) bitbanged, während das Hardware-SPI die gesamte Steuerung des Busses mit mehreren Geräten komplett dem Hardware-SPI-Busmaster überlässt. Daher gehen Software- und Hardware--clock, -CS, und Daten nicht synchron.

Und ich kenne keine einzige Display-Driver-lib. die mit Hardware-SPI funktioniert (auch so ein Arduino-Sch****). Angry

Bei Henning Karlsen libs (die einizigen die mit den China TFT-Dingern sicher laufen, soweit ich sie kenne) müssen daher alle Software-SPI-Pins auch manuell softwaremäßig konfiguriert werden (es lassen sich aber, alleine auf dem Bus, auch die Hardware-SPI-Pins adressieren, nur eben nicht gemischt Hardware+Software):

Code:
UTFT myGLCD(Model, SDA=MISO, SCK, CS, RESET, RS) ;


//-----TFT Pin---|----Arduino Pin-----| -------------------Note--------------------|-oder auch-
//------LED------|---------A0--Vc-----|---Backlight Control,Hight level Enable-----|---Vc------
//------SCK------|---------A1---------|-----Serial Interface Clock Signal----------|---38(76)--
//------SDI------|---------A2---------|-----------Serial Input Signal--------------|---39(75)--
//------RS-------|---------A3---------|------Command or Parameter Sellect----------|---40------
//------RST------|---------A4/RESET---|---------------Reset Signal-----------------|---RESET---
//------CS-------|---------A5/GND-----|----------Chip Sellect Signal---------------|---41/GND--

bei echtem Hardware-SPI Drivern ist das nicht nötig, daher braucht man bei <SD.h> diese Konfiguration auch nicht für SD-Karten anzugeben. Einfach die Hardware-SPI-Pins anklemmen, und fertig. Nur den CS-Pin muss man ntl. jeweils definieren.


@tafkaz:
Zitat:
Zitat:wie soll ich die Pins im Bild auf der linken Seite (Die SD Card igonriere ich mal)

ohne zu wissen welcher Grafik-Prozessor verbaut ist, bleibt es bei der Glaskugel

stimmt, links /rechts, SD... da habe ich völlig falsch gelesen, ich dachte er meint die SD-Pins.

mit dem TFT-Teil hast du ntl Recht, da braucht man den genauen Typ, am besten auch den Henning-Karlsen-Model-Code.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste