Touch Abfrage langsam - wo liegt mein Programmierfehler?

Hallo!

Das ist meine erste Frage die ich hier stelle. Ich hoffe das ich es richtig mache.

Ich beschäftige mich seit ca. 3 Monaten mit Arduino. Mein letztes Projekt war eine Steuerung für eine Solaranlage, also eine Differenz-Temperatursteuerung. Die habe ich mit einem zweizeiligen LCD realisiert und funktioniert wunderbar. Nun hat es mich gereitzt das auf ein Touch LCD umzulegen. Das funktioniert auch bis auf die Abfrage des Touch - die ist seeehr langsam. Irgendwie wird die Abfrage des Touch nicht oft genug ausgeführt obwohl die Berechnungen die im Hintergrund laufen sicherlich kaum Zeit in Anspruch nehemen. Vielleicht kann mir jemand helfen und mir sagen wo in meinem Sketch der Fehler liegt. Irgendwie komme ich selbst nicht darauf. Da habe ich etwas nicht richtig verstanden. Arduino ist ein Mega und das Display ist ein 2.8". Die anderen Daten werdet ihr Profis ja aus dem Sketch ersehen.
Ich habe schon mehrere Stunden damit zugebracht meinen Fehler im Sketech zu suchen / zu beheben, leider ohne Erfolg. Den Sketch schreibe ich übrigens nur um mich in der Programmierung mit Arduino weiterzubilden.

Danke für eure Mühe mit mir im Voraus!

Temperatursteuerung_TFT_LCD.ino (5.61 KB)

Setze Deinen Code bitte direkt ins Forum. Benutze dazu Codetags (</>-Button oben links im Forumseditor oder [code] davor und [/code] dahinter ohne *).
Das kannst Du auch noch nachträglich ändern.

Gruß Tommy

Die Temperatur-Abfrage ist blockierend und enthält ein verstecktes Delay in requestTemperatures() (der Sensor braucht etwas Zeit für die A/D-Wandlung je nach Auflösung). Das kann man entweder nicht-blockierend machen oder du fragst einfach weniger oft ab. Die Temperatur muss man nicht so oft messen