Arduino Polska Forum
Błąd w funkcji warunkowej - Wersja do druku

+- Arduino Polska Forum (https://forum.arduinopolska.pl)
+-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino)
+--- Dział: Piaskownica (https://forum.arduinopolska.pl/dzial-piaskownica)
+--- Wątek: Błąd w funkcji warunkowej (/watek-b%C5%82%C4%85d-w-funkcji-warunkowej)



Błąd w funkcji warunkowej - maniolx - 19-01-2017

Pomoże ktoś określić gdzie robię błąd w funkcji warunkowej ;
Kod:
void setup() {
pinMode (13, INPUT_PULLUP);
pinMode(A5, OUTPUT);  

 

}

void loop() {
if (digitalRead(13) == HIGH )  
{
 tone(A5, 4300);   
 delay(150);  
 tone(A5, 3500);
 delay(150);
 else (digitalRead(13) == LOW ){
   noTone(A5)}
}

}



RE: Błąd w funkcji warunkowej - Smaczek - 19-01-2017

Witam,
Przy else nie może być warunku (tylko przy if-ie). Czyli:
} // tu klamra od if-a
else noTone(A5);
// tu bez klamry
Pozdrawiam.


RE: Błąd w funkcji warunkowej - maniolx - 19-01-2017

(19-01-2017, 18:53)Smaczek napisał(a): Witam,
Przy else nie może być warunku (tylko przy if-ie). Czyli:
}  // tu klamra od if-a
else noTone(A5);
// tu bez klamry
Pozdrawiam.

Nie wiem czy o to chodziło , bo jeżeli tak to nadal błąd kompilacji .
Kod:
void setup() {
pinMode (13, INPUT_PULLUP);
pinMode(A5, OUTPUT);  

 

}

void loop() {
if (digitalRead(13) == HIGH )  
{
 tone(A5, 4300); //Wygeneruj sygnał o częstotliwości 4300Hz na pinie A5  
 delay(150);  
 tone(A5, 3500); //Wygeneruj sygnał o częstotliwości 3500Hz na pinie A5  
 delay(150);
}
 else noTone(A5)
   
}

}



RE: Błąd w funkcji warunkowej - mati12_14 - 19-01-2017

O jedną klamrę zamykającą za dużo masz na moje oko. Przelicz sobie klamry dla loop'a.
Moim zdaniem powinno być tak o ile to jedyny błąd:
Kod:
void setup()
{
pinMode (13, INPUT_PULLUP);
pinMode(A5, OUTPUT);  
}

void loop()
{
  if (digitalRead(13) == HIGH )  
  {
  tone(A5, 4300); //Wygeneruj sygnał o częstotliwości 4300Hz na pinie A5  
  delay(150);  
  tone(A5, 3500); //Wygeneruj sygnał o częstotliwości 3500Hz na pinie A5  
  delay(150);
  }
  else
  {
    noTone(A5)
  }
}

Na następny raz wrzuć też komunikaty o błędach.


RE: Błąd w funkcji warunkowej - maniolx - 19-01-2017

(19-01-2017, 19:56)mati12_14 napisał(a): O jedną klamrę zamykającą za dużo masz na moje oko. Przelicz sobie klamry dla loop'a.
Moim zdaniem powinno być tak o ile to jedyny błąd:
Kod:
void setup()
{
pinMode (13, INPUT_PULLUP);
pinMode(A5, OUTPUT);  
}

void loop()
{
 if (digitalRead(13) == HIGH )  
 {
 tone(A5, 4300); //Wygeneruj sygnał o częstotliwości 4300Hz na pinie A5  
 delay(150);  
 tone(A5, 3500); //Wygeneruj sygnał o częstotliwości 3500Hz na pinie A5  
 delay(150);
 }
 else
 {
   noTone(A5)
 }
}

Na następny raz wrzuć też komunikaty o błędach.

Nadal błąd :

sketch_jan19b.ino: In function 'void loop()':
sketch_jan19b.ino:19:3: error: expected ';' before '}' token
Błąd kompilacji.


RE: Błąd w funkcji warunkowej - maniolx - 19-01-2017

(19-01-2017, 22:07)maniolx napisał(a):
(19-01-2017, 19:56)mati12_14 napisał(a): O jedną klamrę zamykającą za dużo masz na moje oko. Przelicz sobie klamry dla loop'a.
Moim zdaniem powinno być tak o ile to jedyny błąd:
Kod:
void setup()
{
pinMode (13, INPUT_PULLUP);
pinMode(A5, OUTPUT);  
}

void loop()
{
 if (digitalRead(13) == HIGH )  
 {
 tone(A5, 4300); //Wygeneruj sygnał o częstotliwości 4300Hz na pinie A5  
 delay(150);  
 tone(A5, 3500); //Wygeneruj sygnał o częstotliwości 3500Hz na pinie A5  
 delay(150);
 }
 else
 {
   noTone(A5)
 }
}

Na następny raz wrzuć też komunikaty o błędach.

Już rozwiązane .