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
Brennersteuerung
27.12.2013, 22:19 (Dieser Beitrag wurde zuletzt bearbeitet: 27.12.2013 22:37 von JoeDorm.)
Beitrag #49
RE: Brennersteuerung
(27.12.2013 14:19)rkuehle schrieb:  Hallo Joe,

ich habe mir jetzt deinen Code nochmal angesehen und glaube die ursache für die unsaubere Initialiserung gefunden zu haben.
Eigentlich ist es nicht ein Problem beim Init sondern ein genrelles Huh
Da du nicht Buttons bzw. deren Abfrage benutzt, sondern fast ausschlisslich mit print arbeitest, bist du gezwungen doMenue() unter anderem im Loop() aufzurufen.
Und das ist doof (sorry). Was passiert?
Das was du siehst ist eigentlich nur das Ergebnis der Trägheit des Displays. In Wirklichkeit wird doMenue() innerhalb Loop() noch x-mal schneller abgearbeitet.
Naja und da kommt das Display nicht hinterher und bringt (meistens) Fehler in der Abfrage der Koordinaten.
Tu dir selbst ein gefallen und nimm die üblichen Funktionen zur Darstellung von Buttons und deren Abfrage.
Ich bin mir ziemlich sicher, dass das neue Display da keine Änderung bringen wird.

Grüße Ricardo

Hmm,
das würde bedeuten, das das Programm nicht sequenziel sauber durchlaufen wird?!
Dem entgegen stehen würde, das das Programm, sofern die Initialisierung gut war, sauber funktioniert.

Kannst Du den Fehler mit Deiner Hardware reproduzieren?
Wenn nein, so spricht das gegen Deine Argumentation.

DoMenue wird aufgerufen als Ausgabe der aktuellen Screeninhalte, und die sollten man doch beliebig oft schreiben dürfen, ohne das der Rechner durcheinander kommt?
Nur in der loop() wird anfangs abgefragt, ob da ein Menuebereich, also eines der vielen "="-Zeichen auf dem Touch angewählt wurde, also einmal pro Durchlauf.
Die von mir festgelegten Bereiche der "="-Zeichen stellen doch indirekt die Buttons dar. Die Bereiche ändern sich ja auch garnicht, und da sollte es eingentlich egal sein, wie lange der Screen brauche um die Ausgabe zu vollenden.

Ich verstehe durchaus Deinen Denkansatz, nämlich das der Rechner schneller arbeitet als das Display.
Wenn dies tatsächlich eine Auswirkung hat, dann sollte ein newDelay unmittelbar nach dem Aufruf von doMenue() für Abhilfe sorgen.
Wenn dies Veränderung bringt, dann hast Du Recht und ich was dazugelernt.
Werde das gleich mal ausprobieren.

Vielleicht hast Du Recht, aber es erscheint mir noch nicht Schlüssig, und spricht gegen meine allgemeinen Erfahrungen in der Programmierung.
Computer machen gewöhnlich genau das was im Programmablauf vorgesehen ist.
Nur bei defekter Hardware, gibts mitunter Überraschungen.

Werde noch einen Mega bestellen, denn dieser kann ja auch einen Fehler haben.
Brauche den ggf, falls der Jetzige nicht defekt ist, für das Nachfolgeprojekt.

Gruß Joe

Ok,

ich habe also ein newDelay(2000) unter doMenue() gehängt, und das Ergebnis ist gleich.

Sodann habe ich mal das doMenue in der loop() auskommentiert, und das Ergebnis ist immer noch das Gleiche.

Somit bleibt doch eigentlich nur ein Hardwareproblem.

Alternativ könntest Du das Programm beispielhaft so umstellen, das es mit einem Menü nach Deinem Belieben funktioniert, und hier einstellen.
Dann könnte ich das einladen und dann sehen wir weiter.
Ist doch ein guter Vorschlag, oder?

Ich tue hier aber nochmals kund, das das Button-Beispielprogramm auch nicht jedesmal korrekt initialisiert wird, und damit auch das gleiche Problem auftritt.

Gruß Joe

Unser Projekt Rolleyes http://global-science-circle.net http://global-science-circle.org http://global-science-circle.info UND http://radio-gsc1.info
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
28.12.2013, 10:53 (Dieser Beitrag wurde zuletzt bearbeitet: 29.12.2013 18:36 von rkuehle.)
Beitrag #50
RE: Brennersteuerung
Moin Joe,

Zitat:das es mit einem Menü nach Deinem Belieben funktioniert
Wir verstehen uns aber schon soweit, dass du nicht davon ausgehst, dass ich mich irgendwie durchsetzen will, oder HuhHuh
Zitat:dann sollte ein newDelay unmittelbar nach dem Aufruf von doMenue() für Abhilfe sorgen.
Naja, das tut es für die Zeit die als Delay angegeben ist. Und was ist mt dem Rest ? Wir reden, auch wenn der Arduino nur mit (ich glaube) 18 MHz läuft, von Mikrosekunden in denen der Programmcode in Loop() durchlaufen wird.
Der Unterschied zum normalen Delay ist ja auch, dass der Arduino nicht angehalten wird, was bedeutet, dass der Code weiterhin abgearbeitet wird.

Ich werde mal sehen ob ich den Code heute umgestellt bekomme. Kann vllt. aber auch erst morgen werden.

Grüße Ricardo

Edit:
Hallo Joe,
habe inzwischen den Code in der Mangel. Das erste was mir aufgefallen ist: die Loop()-Funktion ist nicht mittels "}" abgeschlossen. Dadurch dürften alle Funktionen die im Code danach stehen ständig wiederholt werden. Ich werde den Code jetzt in mehrere Tabs aufteilen um besser durchzublicken.

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
29.12.2013, 18:40 (Dieser Beitrag wurde zuletzt bearbeitet: 29.12.2013 18:43 von JoeDorm.)
Beitrag #51
RE: Brennersteuerung
(28.12.2013 10:53)rkuehle schrieb:  Moin Joe,

Zitat:das es mit einem Menü nach Deinem Belieben funktioniert
Wir verstehen uns aber schon soweit, dass du nicht davon ausgehst, dass ich mich irgendwie durchsetzen will, oder HuhHuh
Zitat:dann sollte ein newDelay unmittelbar nach dem Aufruf von doMenue() für Abhilfe sorgen.
Naja, das tut es für die Zeit die als Delay angegeben ist. Und was ist mt dem Rest ? Wir reden, auch wenn der Arduino nur mit (ich glaube) 18 MHz läuft, von Mikrosekunden in denen der Programmcode in Loop() durchlaufen wird.
Der Unterschied zum normalen Delay ist ja auch, dass der Arduino nicht angehalten wird, was bedeutet, dass der Code weiterhin abgearbeitet wird.

Ich werde mal sehen ob ich den Code heute umgestellt bekomme. Kann vllt. aber auch erst morgen werden.

Grüße Ricardo

Jepp,
mir ist schon irgendwie klar, das Du da etwas drückst ;-)
Du magst eben lieber eine Button-Menülösung.
Mit hätte ein kleiner Teil eines Menüs ausgereicht, um klarzumachen, das es nicht daran liegt.
Da aber auch dort die Initialisierung des Touch gebraucht wird, würde sich, meiner Meinung nach, mein Problem nicht in Luft auflösen.

Eigentlich müßtest Du, bei identischer Hardware, das gleiche Problem wie ich haben.
Meine verbauten Parts sind allesamt von SainSmart, also der Mega und der Shield mit UTFT von Dir. Sollte eigentlich gut abgestimmt sein.

Ich bin gespannt, wie das mit Deiner Alternative funktioniert.
Stelle meine Aktivitäten erstmal etwas ein, damit es kein Kuddelmuddel gibt.

Gruß Joe

Unser Projekt Rolleyes http://global-science-circle.net http://global-science-circle.org http://global-science-circle.info UND http://radio-gsc1.info
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
30.12.2013, 06:27 (Dieser Beitrag wurde zuletzt bearbeitet: 30.12.2013 06:35 von JoeDorm.)
Beitrag #52
RE: Brennersteuerung
Ohohhh,

} fehlt kann eigentlich nicht sein, da es ansonsten ein Kompilierungsproblem geben sollte. Bisher wurden ja Syntaxfehler immer angemeckert.

Ich befürchte, das der Code evtl. nicht vollständig kopiert wurde, entweder meiner-, oder Deinerseits.

Ich schau mal nach.

Gruß Joe

PS : Habs in meinem aktuellen Code nachgeprüft. Klammern passen.
Hätte mich auch gewundert.

Unser Projekt Rolleyes http://global-science-circle.net http://global-science-circle.org http://global-science-circle.info UND http://radio-gsc1.info
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
30.12.2013, 11:05
Beitrag #53
RE: Brennersteuerung
Yupp,

mein Fehler. Ich habe jetzt mal die Kommentare aus der Loop() rausgenommen. Nun findet die IDE zu den öffnenden Klammern auch die schließenden.
EigenartigHuh Vllt. lässt sich die IDE auch mal verwirren, oder ich war zu dusselig (wohl eher das Zweite).
Egal. ich guck mal dass ich heute mit der Button-Variante weiterkomme.

Grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.01.2014, 16:00
Beitrag #54
RE: Brennersteuerung
Hallo Joe,

ich hoffe du bist gut über die Jahreswende gekommenSmile
(Ich verdaue immer noch das viele Futter der Feiertage!)

Zwischenzeitlich habe ich an deinem Code mal ein bischen was verändert.
Es gab wohl ein Problem mit den beiden Aufrufen von getx()/gety() in der Menü- und in der Edit-Funktion. Man kann diese wohl nicht zweifach aufrufen, und getrennt auswerten wollen, da nur die Daten vom ersten Aufruf genutzt werden.
Daher habe ich die Edit-Funktion mit Buttons realisiert.
Auf meinem Display werden die Editfunktionen jetzt sauber geholt und die Werte dann wie gewünscht gesetzt.

Den Code habe ich mal in einzelne Dateien gepackt, so dass ein neues Sketchbook daraus wurde.

Sag mal was dazu. Code anbei .

Grüße Ricardo


Angehängte Datei(en)
.zip  Joe.zip (Größe: 5,71 KB / Downloads: 61)

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.01.2014, 03:29 (Dieser Beitrag wurde zuletzt bearbeitet: 03.01.2014 03:30 von JoeDorm.)
Beitrag #55
RE: Brennersteuerung
Hi Ricardo,
jepp, bin gut hinüber gekommen.
Hab tief und fest geschlafen ;-)

Vielen Dank vorerst, habe versucht die Joe.ino zum Laufen zu bekommen, doch mir fehlen die libs dafür.

Die zugehörigen lbraries könntest Du vielleicht in ein Verzeichnis lib reintun, und mit in das zipfile reintun?
Es macht nicht allzuviel Sinn, sich die libs und h-files zusammenzusuchen und darauf zu hoffen, das diese den gleichen Versionsstand, wie bei Dir, haben.

Gruß Joe

Unser Projekt Rolleyes http://global-science-circle.net http://global-science-circle.org http://global-science-circle.info UND http://radio-gsc1.info
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.01.2014, 11:13
Beitrag #56
RE: Brennersteuerung
Moin,

Zitat:Hab tief und fest geschlafen ;-)
Wahrscheinlich eine sehr gutte methode dem Rummel zu entfliehen!

Ich habe aus dem Sketch die LCD-Lib rausgenommen und die UTFT_Buttons - Lib rein. Deine UTFT - und UTouch sind schon richtig. Daher hier das modifizierte Attachment nur mit der UTFT_Buttons - Lib und dem Sketch.(wird sonst zu groß). Bin gespannt ob wir so langsam zum Ziel kommen.

Grüße Ricardo


Angehängte Datei(en)
.zip  Joe.zip (Größe: 194,93 KB / Downloads: 63)

Nüchtern betrachtet...ist besoffen besser Big Grin
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