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);
}
}
}
>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.
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
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
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