Étape 1: Code d’Arduino...
#include < Servo.h >
Servo servo1 ;
int servangle = 0 ; variable d’angle servo
int potPin = 4 ; Sélectionnez l’entrée pin pour le potentiomètre
int ledPin = 13 ; Sélectionnez le code pin de la LED
int val = 0 ; variable pour stocker la valeur provenant de la sonde
valInc int = 4 ; int currAngle = 0 ; int newAngle = 0 ; int delayTime = 0 ; //////////////////////////////////////
/ Broches de lecture analogiques const
int buttonPin = 2 ;
void myServo1 (int curAngle, int newAngle, int angleInc, int incDelay) {}
Si (curAngle < newAngle) {pour (angle int = curAngle ; angle < newAngle ; angle += angleInc) {servo1.write(angle) ; delay(incDelay);}}
ElseIf (curAngle > newAngle) {pour (angle int = curAngle ; angle > newAngle; = angleInc d’angle) {servo1.write(angle) ; delay(incDelay);}}
}
void setup()
{Serial.begin(9600) ;
pinMode (ledPin, sortie) ; déclarer la ledPin comme une sortie
pinMode(buttonPin,INPUT) ;
SERVO1.Attach(9) ;
Delay(1000) ;
SERVO1.Write(90) ; aller verticale
Delay(5000) ; attendez 5 secondes
SERVO1.Write(172) ; } //start rouler en abaissant la trame de jouet
void loop() {}
Si (digitalRead(buttonPin) == HIGH) {}
Val = analogRead(potPin) * 2 ; lire la valeur de la sonde du pot (1 à 1024)
Serial.Print (« poy val = ") ; Serial.println(Val) ;
digitalWrite(ledPin,HIGH) ;
SERVO1.Write(90) ; mettre le cadre vertical
myServo1(172,90,1,15) ;
Delay(Val) ;
SERVO1.Write(172) ;
myServo1(90,172,1,5) ; mettre le cadre en bas plus lent afin de ne pas rebondir
digitalWrite(ledPin,LOW) ; }
}