#include <Servo.h> Servo myservo; // maak servo object // maximaal 12 servo's op de meeste Arduino's int pos = 0; // hierin blijft de (laatste) positie bewaard void setup() { myservo.attach(9); // de pin waarop je de servo hebt aangesloten } void loop() { for (pos = 0; pos <= 180; pos += 1) { // van 0 graden tot 180 graden myservo.write(pos); // stuur de servo naar positie 'pos' delay(15); // 15 ms zijn nodig om de positie te bereiken } for (pos = 180; pos >= 0; pos -= 1) { // van 180 graden tot 0 graden myservo.write(pos); delay(15); } }Als je in plaats van write(position) de functie writeMicroseconds(position) gebruikt moet je waardes invoeren tussen 1500 (linksom) en 2300 (geheel rechtsom) en moet je de stap vergroten tot i += 10. Als je write(position) gebruikt kun je de hoek gewoon in graden opgeven.
const int stepsPerRevolution = 2048; Stepper myStepper(stepsPerRevolution, 8, 10, 9, 11); myStepper.setSpeed(10);Werkt hierna uitstekend.