128x160 SPI TFT ST7735S hängt sich auf & probleme mit SD

Ich habe ein Problem mit meinem 128x160 SPI TFT mit dem ST7735S Chipsatz.

Das Display funktioniert soweit gut, allerdings hängt es sich nach ein paar Stunden komplett auf und ist dann nur noch weiß. Der Arduino läuft jedoch sauber weiter, sobald ich einen Reset am Arduino mache geht das Display wieder.

Das Display ist auf meinem Mega auf folgenden Pins angeschlossen: cd=9, cs=10, reset=8, miso=50, mosi=51

Sobald ich die SD Karte noch dazu anschließe bleibt beim Start das Display weiß. Die SD Karte ist auf den Pins 53(SS) sowie auf den mittleren Pins (miso, mosi, sck) angeschlossen.

Schließe ich die SD Karte ohne Display an dann geht die SD Karte.

Alle Signale laufen über Level-Shifter auf 3.3V zum Display und werden für den Mega wieder auf 5V erhöht.

Kann man eigentlich bei dem Display die Hintergrundbeleuchtung über ein PWM Signal steuern? Das währe recht interessant, da man das Display dann bei Vorkommnissen oder Schalterbewegung heller machen könnte und wenn nichts ist das Display dunkler ist...

display.PNG

Hallo,

schau dir mal deinen Thread als möglicher Helfer an. Was machst du als derjenige?

Das Display hat keinen Takteingang?

@uwefed
Es handelt sich um dieses Display. Soweit ich es sehe hat es leider kein Takteingang.
Display

@Doc_Arduino: Sorry war schon wieder ein schritt zu weit ...

  1. Frage: An was kann es liegen das der Screen nach einigen Stunden weiß wird?
  2. Frage: Wie muss ich den SD Slot anschließen? Hab ich was falsch gemacht?
  3. Frage: Wie könnte ich das Display dimmen?

Soweit ich es sehe hat es leider kein Takteingang.

oh doch;


links SCK

Grüße Uwe

Dan82:
@uwefed
Es handelt sich um dieses Display. Soweit ich es sehe hat es leider kein Takteingang.

Der SCK ist der Takteingang und muss auch angeschlossen werden. Ist mir ein Rätsel,dass es ohne funktioniert.

Ok, Uwe war schneller.

Jetzt kommen mir Zweifel daß links die Anschlüsse für die SD-Karte sind und rechts fürs Display. SCK ist auf alle Fälle jedes mal der Takteingang.
Grüße Uwe

SCK, MOSI und MISO sind sicher nur durchgeschleift.

Aber man braucht natürlich verschiedene CS (Chip Select) Pins für Display und SD

Ich verwende hier das "baugleiche" 2,2"-Display, da sind die Anschlüsse nicht durchgeschleift, sondern einzeln rausgeführt.

Und wenn der TO den SD-Cardreader verwendet, dann muss tatsächlich der CS für eine der Verwendungen umgeändert werden.

Ich habe gerade noch mal alle Strippen auseinander gelegt und mal notiert was auf welche Pins geht:
LED 3.3V+
SCK 52
SDA 51
A0 9
Reset 8
CS 10
GND gnd
VCC 3.3V+

Das Display an sich geht halbwegs, problematisch wird es nur sobald ich den Cardreader anschließe, sobald der MOSI Pin eingesteckt ist, ist das Display weiß. Für den Cardreader verwende ich die mittleren Pins (ICSP) und den Pin 53 für CS. Ich habe schon den Cardreader Pin für Pin angeschlossen, sobald der MOSI reinkommt ist das Display weiß.

Ein anderes Problem ist, dass das Display nach 5-7 Stunden weiß ist und nicht mehr reagiert. Sobald ich jedoch auf den Reset Button am Arduino klicke geht es wieder. Kann demnach also kein Thermisches Problem sein.

Wenn das alles so angeschlossen ist, wie du schreibst, vermute ich einen Fehler im Sketch.

Poste den Sketch bitte hier in Code-Tags (Schaltfläche </> dazu verwenden).

Der Scatch ist leider inzwischen ein wenig zu groß um ihn so zu posten.
Ich hab ihn mal angehängt.

Sketch.txt (13.9 KB)

Ich habe nun auch versucht ein minimal Beispiel für das Display laufen zu lassen, sobald ich den SD anschließe ist das TFT Weis und reagiert nicht auf Reset oder ähnliches.
Schließe ich es wieder ab und resette den Arduino geht es wieder.

Dan82:
Ich habe nun auch versucht ein minimal Beispiel für das Display laufen zu lassen, sobald ich den SD anschließe ist das TFT Weis und reagiert nicht auf Reset oder ähnliches.
Schließe ich es wieder ab und resette den Arduino geht es wieder.

Selbst habe ich leider noch keine Erfahrung mit den SD-Readern, daher kann ich keinen Tipp geben.
Außer, dass evtl. der Reader einen Fehler hat. Kannst du die Leitungen mal einzeln anschließen und nacheinander testen. Dann wissen wir evtl. welche Leitung das Problem macht.

Gestern Abend habe ich einen neuen Fehler mit dem WiFi Modul gehabt, der hat auf einmal nicht mehr reagiert. Darauf hin habe ich den "Adafruit 8-channel Bi-directional Logic Level Converter" durch ein paar 4er Logig Converter getauscht die ich noch rum liegen hatte.

Seit gestern Abend bis heute läuft das Display ohne Fehler durch. Es geht nicht aus.

Jedoch besteht das Problem mit dem SD weiterhin. Ich habe die Pins einzeln angeschlossen und dazwischen immer den Mega aus geschalten. Sobald ich den SCK auf die ICSP Pins lege bleibt das Display weiß.

Verwendest du für den SD-Reader auch Levelshifter?
Lege den SCK des Readers mal über einen 1k-Widerstand auf.

Ja, der geht auch über einen Level Shifter da die Karten ja mit 3-3.9V laufen.