Errore durante la verifica

salve, sto cercando di comandare un motore passo passo tipo nema 17 con un arduino uno e un potenziometro, per poterne variare la velocità, ma in fase di verifica mi da sempre errore l'istruzione for come posso fare? grazie

const int pinDir = 13; // definisce direzione del Motore
const int pinStep = 12; // Comando di marcia di motore
int pot = A0; // potenziometro
int button = 2; // pulsante di direzione
int velocita; // velocita calcolata
int valbut; // stato pulsante
int valpot; // valoe potenziometro
const int numStepMotore = 200; // numero di step motore da 1.8gradi per giro


void setup() {
 
pinMode (pinStep, OUTPUT);
pinMode (pinDir, OUTPUT);
pinMode (button, INPUT);
Serial.begin(9600);

}

void loop() {

valbut = digitalRead (button);
valpot = digitalRead (pot);
velocita = map(valpot,0,1023,0,5000);
Serial.print(velocita);

if (valbut == HIGH);
{
 digitalWrite (pinDir, HIGH)

For (int x = 0; x <numStepMotore;x++)
{
 digitalWrite (pinStep, HIGH);
 delayMicroseconds (velocita);
 digitalWrite (pinStep, LOW);
 delayMicroseconds (velocita);
}
}
esle {
 digitalWrite (pinDir, LOW);
  for (int x = 0; x <numStepMotore;x++)
{
 digitalWrite (pinStep, HIGH);
 delayMicroseconds (velocita);
 digitalWrite (pinStep, LOW);
 delayMicroseconds (velocita);
 
 }

}
  }

"for", not "For"

if (valbut == HIGH);

Oops

also line above is missing a ";"

"esle" is mispelled

>Enomis13: Prima di tutto ti segnalo che, nella sezione in lingua Inglese, si può scrivere SOLO in Inglese ... quindi, per favore, la prossima volta presta più attenzione in quale sezione metti i tuoi post ...

... poi in conformità al regolamento, punto 7, devi editare il tuo post (quindi NON scrivendo un nuovo post, ma utilizzando il bottone More -> Modify che si trova in basso a destra del tuo post) e racchiudere il codice all'interno dei tag CODE (... sono quelli che in edit inserisce il bottone con icona fatta così: </>, tutto a sinistra).

In pratica, tutto il tuo codice dovrà trovarsi racchiuso tra due tag: [code] _il _tuo_ codice_ [/code] così da non venire interpretato e non dare adito alla formazione di caratteri indesiderati o cattiva formattazione del testo. Grazie.

Guglielmo

P.S.: Ti ricordo che, purtroppo, fino a quando non avrai sistemato il codice come richiesto, nessuno ti potrà rispondere, quindi ti consiglio di farlo al più presto. :wink:

gpb01:
>Enomis13: Prima di tutto ti segnalo che, nella sezione in lingua Inglese, si può scrivere SOLO in Inglese ... quindi, per favore, la prossima volta presta più attenzione in quale sezione metti i tuoi post ...

google translate makes this less of an issue and it seems to happen automatically sometimes

sometimes just trying to figure out what someone's problem is is more of a hindrance

I apologize for the language update, I didn't realize that translate had sent me the page, I try to modify the other errors, thanks and again sorry,
about who gave me suggestions he was very kind, I managed to solve thanks

Mi scuso per l'aggiornamento della lingua, non mi ero reso conto che la translate mi aveva tradotto la pagina, cerco di modificare gli altri errori, grazie e ancora scusa,
su chi mi ha dato suggerimenti è stato molto gentile, sono riuscito a risolvere grazie

Adesso sei sulla parte italiana del sito.

Hai 4 errori:
"for" scritto con la F maiuscola
Se metti un a";" dopo il if finisce subito la condizione.

if (valbut == HIGH);
{
 digitalWrite (pinDir, HIGH)

Il digitalWrite() in questo caso non é condizionalto dal if ma viene eseguito sempre e poi manca il ";" alla fine.

poi "esle" non é "else"

Stai attenta come scrivi le parole perché C é pignolo.

Ciao Uwe

grazie della risposta e della correzione, provo subito a sistemare, mi ero basato un po sul manuale dello starter kit e un po su quello che ho trovato in rete

Grande!!! ora non ho piu' errori, nel pomeriggio lo provo , grazie ancora, la prossima volta staro piu attento
:smiley:

non ho resistito e l'ho provato subito, avevo fatto anche un altro errore:

valpot = digitalRead (pot);

andava analogRead
poi dopo tutto ok ;D
vorrei anche inserire un timer di funzionamento, che mi fermi la rotazione dopo un tempo variabile da potenziometro, , ma non ho idea di come fare :sweat_smile: