was ist an diesem code falsch arduino?

4 Antworten

if(Temperatur>5<10) ist falsch
muss heißen: 
if (5<Temperatur && Temperatur<10)
HansWurst58  11.05.2022, 12:19

wobei noch = fehlt ... Exakte Messwerte für 5, 10, 20 ... werden sonst nicht erfasst.

0
HansWurst58  11.05.2022, 12:30
@Elumania

Ja klar, kann man so machen. Auch einen kompletten Messbereich 10 bis 15 kann man mal weglassen. ^^
Für jemand, der ´84 sein Studium "Technische Informatik" beendet hat und in der "Prozessoptimierung und Automatisierung" tätig war, wären das erhebliche Mängel am Code. ;)

1
 delay(86400000);

du weisst schon wielange du da warten musst dass es dann weitergeht ???

(Temperatur>0<5)

das musst du anders schreiben..

else 
Serial.print(entfernung);  

da fehlt ne klammer...

{
pinMode(trigger, OUTPUT); 
pinMode(echo, INPUT); 
}
{
Serial.begin(9600) 
 knopf = digitalRead(6);
 if (knopf == 0){
  if (digitalRead 12==1) {
  analogWrite(11, 450);
  delay(500);
  analogWrite(11, 10);
  delay(500); 
 } 
 else {
  analogWrite(11, LOW);
 }
}

damit kann der compiler nix anfangen.. wo gehört das hin?

Viele Fehler bei den geschweiften Klammern.

 Temperatur>0<5

Ob ein Wert in einem Bereich liegt geht so auch nicht.

  1. Kannst Du das bitte als Code formatieren . sonst kann das keine Sau lesen - Knopf "</>" benutzen
  2. Wenn wir dir helfen wollen, dann sag doch bitte wie du darauf kommst, dass das falsch ist. Gibt es Fehlermeldungen beim Übersetzen? Läuft das Programm, tut aber nicht was du willst? Was ist los?
DerEinsiedler  11.05.2022, 10:55

Auf jeden Fall:

  • die Klammerungen {} sehen komisch aus und bilanziert sind sie auch nicht.
  • Du definierst Funktionen, die nicht aufgerufen werden
  • Ich bezweifle, dass "Temperatur>5<10" funktioniert.
  • ; fehlen teilweise
0