Was ist denn dein ominöses 'zecho'? Das wird in den gezeigten Auschnitten ja garnicht verändert. Wie soll sich da bei der Abfrage was ändern?
Mit solchen Fragmenten kann man nichts anfangen.
Gut alles klar... Habt Ihr recht. Hab den Code oben nochmal kontrolliert. Ich bin nie in quickmode 4 gewesen sondern in quickmode 3. Macht nix anderes als Motor drehen... Hab ich oben nicht geändert. So was blödes.
Und stimmt demnächst am Besten den ganzen Code... zecho ist der input eines Ultraschallsensors.
mrzortrax:
Ich habs mittlerweile mal so versucht...
Als was hast Du denn zecho definiert?
Warum kommst Du nur mit einem Bruchstück, der nicht aussagekräftig ist?
Was passiert sonst mit den variablen quickmode und zecho?
Ich hätte das <=40 als else gebaut
Das wäre dann evtl. die Lösung für meine erste Frage.
Gut alles klar... Habt Ihr recht. Hab den Code oben nochmal kontrolliert. Ich bin nie in quickmode 4 gewesen sondern in quickmode 3. Macht nix anderes als Motor drehen... Hab ich oben nicht geändert. So was blödes.
Und stimmt demnächst am Besten den ganzen Code... zecho ist der input eines Ultraschallsensors.
Gut alles klar... Habt Ihr recht. Hab den Code oben nochmal kontrolliert. Ich bin nie in quickmode 4 gewesen sondern in quickmode 3. Macht nix anderes als Motor drehen... Hab ich oben nicht geändert. So was blödes.
Und stimmt demnächst am Besten den ganzen Code... zecho ist der input eines Ultraschallsensors.
Was hat quickmode mit zecho zu tun?
Das While ist wie wenn Du mit Deinem Freund ausmachst, daß er Dich anruft um Dich abzuholen aber Du Dein Händy nicht mit hast.
While ist eine Kontrollstruktur wie viele andere.
Das Problem ist wenn man es falsch verwendet.
Es passiert bei IF seltener aber der TO hat es zusammengebracht den gleichen Fehler mit if nachzuahmen.
Wenn eine Variable auf einen bestimmten Wert / Bereich/Grenzwert kontrolliert wird, diese aber nicht neu eingelesen oder nie verändert wird, wird while zu einer Endlosschleife. Das ist dann ein Programmierfehler wie viele andere.
Soll ich etwa auch fragen ob "==" abzuschaffen, ist weil Anfänger "==" mit "=" verwechseln und darum if Bedingungen nicht funktionieren.
Der Compiler den die Arduino IDE verwendet ist der Compiler der vom Hersteller des ATmega bereitgestellt wird, um die Controller zu programmieren. Nein, ich weiß nicht mit wem ich bei Microchip Technology reden kann. Ich glaube die würden mich auch auslachen wenn ich jetzt nach fast 50 Jahren von einem Problem mit while diskutieren möchte. (C wurde 1972 erfunden).
Sie sollen eine Warung für while generieren:
while(zecho >= 40)
{
ist ein syntaktisch korrekte Anwendung von while.
eine andere Endlosschleife ist:
for( ; ; )
auch for (int a=0; a<2;)
ist syntaktisch richtig.
combie:
Ein = in einem If wirft eine Warnung, wenn der Compiler sensibel eingestellt wird.
Vielleicht eine ganz blöde Frage, aber rein Interesse halber:
Gibt es keine Möglichkeit im Code dem Compiler mitzuteilen, das - für diesen speziellen Teil - keine Warnungen ausgegeben werden sollen?
Ähnlich der indent-Switches im Style, die das Formatieren abschalten?
Wär soweit richtig. Für 3D Drucker Anwendung zu ungenau. Wird eine Aushärtungseinheit für mit UV Harz gedruckte 3D Objekte. Aber halb gut geraten.
Und der Sensor misst den Abstand zwischen der Decke und dem Tisch. Für die Zwecke sollte das ausreichen. Ggf geht das mit Infrarot auch. Ich versuchs erstmal so. Zwei weitere Sensoren sollen dann in der horizontalen die Objekte auf dem Tisch erkennen wenn der Abstand zur Decke zu knapp wird.
Aber: Doch manchmal kommen warum auch immer auf einmal Falschmessungen vom Ultraschallsensor zurück. Meist nur kurz aber diese Fehlmessungen muss ich irgendwie aussortieren... Jemand eine Idee wie ich das schnell und ohne mega Programmieraufwand bewerkstelligen kann?
Hatte die Idee vielleicht aus 20 Messungen einen Mittelwert zu ziehen, oder Messwerte die auf einmal über einen gewissen Prozentsatz zum vorherigen fallen oder steigen zu ignorieren. Da allerdings die Frage das können manchmal schon einige Fehlmessungen am Stück sein. Die dann "meist" zu nah dran sind. Müsste ich höchstens dann mal beobachten, wenn ich den Sensor dort verbaut habe wo er sein soll anstatt neben den Tisch liegen zu haben.