Forum: Mikrocontroller und Digitale Elektronik LCD zeigt nichts mehr an nach gewisser Zeit


von Luke (Gast)


Lesenswert?

Hallo,

Habe ein Problem mit einem LCD EADIP-204 (controller KS0073).
Es zeigt nach einer gewissen Zeit einfach nichts mehr an (ca. 1-5 
minuten(unterschiedlich)). Habe das Problem auf eine I²C schleife die 
ich in diesem Programmteil habe einschränken können. Also wenn ich diese 
schleife nicht aufrufe läuft es ganz normal.
Wird sie aber aufgerufen zeigt das LCD nach einer Zeit nichts mehr an, 
obwohl das Programm normal weiterläuft. Also es werden Daten auf das LCD 
geschrieben. Habe das überprüft.

Finde auch leider keinen Fehler in der I²C schleife. Es bleibt definitiv 
auch nicht in einer Schleife hängen.
PS: schreibe in den DDRAM des Displays.

Habt ihr vllt einen Typ was das Display dazu bringen könnte?

LG

von Ingo (Gast)


Lesenswert?

Luke schrieb:
> Habt ihr vllt einen Typ was das Display dazu bringen könnte?
Meinst du einen Tipp? Nein, erst wenn du Code und Schaltung zeigst, 
sonst ist das schwierig!


Ingo

von Georg G. (df2au)


Lesenswert?

In Zeile 42 deines Programms fehlt ein Punkt. Außerdem ist ein 
Widerstand in deinem Schaltbild verdreht eingezeichnet.

von Luke (Gast)


Lesenswert?

Das kann ich leider nicht machen.

Aber einfach mal so allgemein:
Was kann ein LCD dazu bringen nichts mehr anzuzeigen obwohl es im DDRAM 
beschrieben wird. Zu lange warteschleifen zwischen den Schreibroutinen 
aufs LCD?
Oder Initialisierung falsch?

LG

von spess53 (Gast)


Lesenswert?

Hi

>Was kann ein LCD dazu bringen nichts mehr anzuzeigen obwohl es im DDRAM
>beschrieben wird.

Woher weißt du, das der DDRAM beschrieben wird?

MfG Spess

von Udo S. (urschmitt)


Lesenswert?

Luke schrieb:
> Es zeigt nach einer gewissen Zeit einfach nichts mehr an (ca. 1-5
> minuten(unterschiedlich))

Ist die Kontrasteinstellung angeschlossen und eingestellt?
Oder hängt die offen rum und der Kontrast wird nach 1-2 Min. 0?

von Luke (Gast)


Lesenswert?

Kontrasteinstellung ist eingestelllt. Das ganze Program macht nach 
kurzer zeit nonsense. Kanns sein dass der chip kaputt ist? Denn ich hab 
das programm schon länger im test und so etwas war noch nie. Oder 
könnten es störeinflüsse sein?

LG

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Luke schrieb:
> Kontrasteinstellung ist eingestelllt. Das ganze Program macht nach
> kurzer zeit nonsense. Kanns sein dass der chip kaputt ist? Denn ich hab
> das programm schon länger im test und so etwas war noch nie. Oder
> könnten es störeinflüsse sein?

Erstmal würde ich versuchen, herauszubekommen, ob Dein µC oder Dein 
Display spinnt. Also mal µC-Reset auslösen, ohne das Display von der 
Versorgungsspannung zu trennen.

Kommt das Display dann wieder, wars höchstwahrscheinlich der µC - und 
damit Dein Programm im µC. Störeinflüsse hardwaremäßiger Natur sind 
natürlich auch möglich.

Ohne Schaltplan und Code ist das aber ein Stochern im Dunkeln. Da Du 
damit nicht rausrücken kannst bzw. willst, musst Du allein weiter 
suchen.

Viel Glück.

von Bronco (Gast)


Lesenswert?

Tip:
Das Problem Schritt für Schritt eingrenzen.
Du hast ja wohl schon den I2C-Teil eingrenzen können. Jetzt darin weiter 
detailieren.

von Luke (Gast)


Lesenswert?

Richtig. Zumindest dachte ich es wär der teil. Leider ist es nicht der 
teil. Mir kommt es so vor. Jedes mal wenn ich das programm reinspiele 
macht es was anderes. Mal funktioniert es. Mal wieder nicht.

LG

von Stefan (Gast)


Lesenswert?

Ersetze das Programm durch ein minimales Testprogramm, welches in 
regelmäßigen Abständen zwei wechselnde Texte auf dem Display anzeigt.

Wenn das klappt, ist die Hardware warscheinlich ok.

Wenn es dann auch wieder ausfällt, hast Du warscheinlich einen 
Hardware-Defekt.

Das wäre der allererste Test, den ich machen würde.

von Luke (Gast)


Lesenswert?

Ja das ist eine gute idee. Ich werde mich so vorarbeiten. Danke vorerst 
!
LG

von Frank M. (frank_m35)


Lesenswert?

Also Ausschnitte bei denen du für uns unwichtiges entfernst wirst du 
sicherlich posten können.
Bspw. die Beschaltung deines LCDs, also der Teil deines Schaltplans der 
die Beschaltung des Displays zeigt. Das ist wohl bestimmt kein 
Betriebsgeheimnis.

Es kann ja auch gut sein, dass dein Programm in Ordnung ist, das Display 
aber aufgrund fehlender, falscher Bypass-Kondensatoren, schlechter 
Stromversorgung, spinnt und dann neu startet und neu initialisiert 
werden müsste.
(d.h. du kannst auch eine Routine einbauen, die bei einem Tastendruck 
gestartet wird und das Display neu initialisiert. Wenn das Display dann 
mal wieder spinnt, Taste drücken, funktioniert das Display dann für eine 
Weile wieder, wird wohl die Schaltung fehlerhaft sein)

von Luke (Gast)


Lesenswert?

Klar kann ich dann machen.
Ich glaube aber nicht dass es das LCD ist sondern der prozessor denn  es 
funktionoeren auch andere sachen nicht richtig. Zum beispiel die 
ansteuerung eines relais. Normalerweise müsste es dauernd anziehen aber 
so ca alle 30 sekunden klackert es, wie wenn der prozessor das programm 
startet.
Kanns sein dass der prozessor jede minute resettet?
Und wenn ja warum ?

LG

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

Luke schrieb:
> Kanns sein dass der prozessor jede minute resettet?
> Und wenn ja warum ?

da ist ein Fehler im Programm  oder in der Hardware-Beschaltung.

von Frank M. (frank_m35)


Lesenswert?

Luke schrieb:
> Klar kann ich dann machen.
> Ich glaube aber nicht dass es das LCD ist sondern der prozessor denn  es
> funktionoeren auch andere sachen nicht richtig. Zum beispiel die
> ansteuerung eines relais. Normalerweise müsste es dauernd anziehen aber
> so ca alle 30 sekunden klackert es, wie wenn der prozessor das programm
> startet.
> Kanns sein dass der prozessor jede minute resettet?
> Und wenn ja warum ?
>
> LG

na das kannst du doch leicht überprüfen ob der Prozesser sich resettet 
indem du am Programmstart eine leuchtsequenz ablaufen lässt oder 
irgendwas eindeutiges.
Genauso solltest du das alles doch auch debuggen können und sehen ob er 
abstürzt oder nicht. Zumindest bei PICs von Microchip lässt sich ein 
Register danach auslesen das den Grund des Resets angibt.

Also wenn die ganze Schaltung nicht zu funktionieren scheint, dann würde 
ich die Stromversorgung anschauen, ob die stabil ist. Hast du um deinen 
uC genügend geeignete Kondensatoren und auch richtig platziert? (ggf. 
Schaltungsausschnitt hier posten)
Und wie schon empfohlen wurde, ein simples Programm schreiben, das eben 
die größte Last in deiner Schaltung schaltet und beobachten ob alles 
stabil bleibt. Danach mehr und mehr dazupacken.

von Luke (Gast)


Lesenswert?

Genau so werden ich es machen. Gibt es bei den Atmegas auch so ein 
register das ich auslesen kann um den grund eines resets zu erfahren?
Habe im moment keine schaltung parat.
Aber ist es möglich dass die last von 3x 2 24V spulen ( autorelais) 
geschaltet von je einem mosfet zur einer unstabilen spannungsversorgung 
des prozessors führt ? Gegebenfalls kondensatoren mit höherer kapazität 
einlöten?

LG

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
Noch kein Account? Hier anmelden.