Étape 4: Télécharger le code
Voici le code pour le projet :
#include
Servo myservo ; Créez l’objet servo pour contrôler un servo
vous pouvez créer un maximum de huit objets de servo
int pos = 0 ; variable pour stocker la position du servo
moteur int = 0 ;
void setup()
{
Serial.Begin(9600) ; initialiser le serial :
myservo.Attach(9) ; attache le servo sur la broche 9 à l’objet de servo
Serial.Print ("Arduino control Servo moteur connecté OK") ;
Serial.Print('\n') ;
}
void loop()
{
Si il n’y a aucune série, lire :
tandis que (Serial.available() > 0) {}
Cherchez le prochain nombre entier valide dans le flux entrant de la série :
moteur = Serial.parseInt() ;
faire à nouveau :
POS = Serial.parseInt() ;
Recherchez le saut de ligne. C’est la fin de votre phrase :
Si (Serial.read() == « \n ») {}
myservo.Write(POS) ; dire de servo pour aller à positionner dans la variable « pos »
Delay(15) ; attend 15 ms pour le servo atteindre la position
imprimer les trois nombres dans une chaîne comme hexadécimal :
Serial.Print ("données de réponse:") ;
Serial.Print (moteur, DEC) ;
Serial.Print (pos, DEC) ;
}
}
}
pour (pos = 0; pos < 180; pos += 1) / / va de 0 degrés à 180 degrés
{/ / par incréments de 1 degré
myservo.Write(POS) ; dire de servo pour aller à positionner dans la variable « pos »
Delay(15) ; attend 15 ms pour le servo atteindre la position
//}
pour (pos = 180; pos > = 1; pos-= 1) / / va de 180 degrés à 0 degrés
//{
myservo.Write(POS) ; dire de servo pour aller à positionner dans la variable « pos »
Delay(15) ; attend 15 ms pour le servo atteindre la position
//}
Val = analogRead(potpin) ; lit la valeur du potentiomètre (valeur comprise entre 0 et 1023)
Val = carte (val, 0, 1023, 0, 179) ; redimensionnez-la pour l’utiliser avec le servo (valeur comprise entre 0 et 180)
myservo.Write(Val) ; définit la position du servo selon la valeur à l’échelle
Delay(15) ;