Probleme mit Arduino Uno und Oled Display

OP #6923985
Lesenswert?

Hallo Forumsgemeinde,

ich bin langsam am verzweifeln. Ich möchte mir mit Hilfe eines Arduinos 
eine Lüftersteuerung basteln, die sich selbstständig über einen DHT22 
regelt. Über ein Oled Display möchte ich zusätzlich die aktuelle 
Temperatur und die Solltemperatur auslesen. Leider hängt sich mein 
Display immer beim Booten auf (Adafruit Logo). Ich hänge euch im Anhang 
mal meinen Code an und hoffe, dass mir jemand helfen kann.


Mit freundlichen Grüßen
Johannes
Angehängte Dateien:
Gast #6924004
Lesenswert?

Aufhängen gibts nicht, du musst  finden wo das in einer Endlosschleife 
läuft. Ein Königreich für einen Debugger…
Angenommen setup() läuft durch, dann wäre das dht read ein Kandidat. 
Also mal ersetzen durch zuweisen einer festen Temperatur. Oder Print 
über serial einfügen um das Problem einzugrenzen.
Gast #6924082
Lesenswert?

PittyJ schrieb:
> Früher hat man printf eingestreut und geschaut, wo das Programm
> noch überall hin kommt und welche Werte wichtige Variablen haben.
> Schade, dass man printf verboten hat.

Bei jedem anderen Programm ohne OLED und Adafruit-Lib würde ich Dir 
zustimmen, aber mit der Kombination habe ich auch schon einige Zeit 
verbracht. Bei den OLEDs gab es einmal einen größeren Artikel was für 
Unterschiedliche 0,96" I2C OLED-Display auf dem Markt sind.
Die Adafruit-OLED-Lib ist ein Speichermonster, auch wenn sie 
grundsätzlich komfortabel ist.
Ich würde den DHT einmal auskommentieren und prüfen, ob das Programm 
dann läuft.
Ich muss mal nachsehen, ob ich die Konstellation nicht nach bauen kann.
OP #6924140
Lesenswert?

Guten Morgen miteinander,

vielen Dank für die Rückmeldungen.

Ich habe nun Dht.readtemperature ausgeklammert. Nun bootet das Display 
normal. Logischerweise bekomme ich aber keine Temperatur angezeigt. Wie 
kann ich den Dht Befehl umgehen/abändern und trotzdem eine Temperatur 
angezeigt bekommen? Liegt es vielleicht am Float? Ich bin überfragt :(


Mit freundlichen Grüßen
Johannes
Gast #6924204
Lesenswert?

Dann liegt das Problem wohl beim DHT Sensor.
Ist der angeschlossen?
Am richtigen Pin?
Gibt es dafür ein Stand-Alone Programm, so ohne Display?
Was sagt das Oszillioskop zur Datenleitung des DHT? Passiert da was?


So richtig weisst du nicht, was du da tust?
OP #6924291
Lesenswert?

Lasse ich mir zusätzlich im seriellen Monitor die Temperatur ausgeben, 
bootet das Display immer noch nicht, die Temperatur wird mir aber im 
seriellen Monitor fehlerfrei angezeigt.
Liegt es vielleicht an der Adafruit Libery? Kann mir jemand zufällig 
eine andere Libery empfehlen, welches mein Oled 128x64 SH1106 
untetstützt? Oder hat jemand zufällig einen Standart Sketch für dieses 
Display?
Gast #6924524
Lesenswert?

und mal das
1
display.print (temp);
auskommentieren?
Es sollte mit float funktionieren, aber eventuell ist es ja doch ein 
Resourcenproblem (RAM). Was sagt den die Statistik nach dem kompilieren, 
wieviel ist noch Reserve?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren