|
- // Controlling a servo position using a potentiometer (variable resistor)
- // by Michal Rinott <http://people.interaction-ivrea.it/m.rinott>
-
- // http://arduiniana.org/libraries/pwmservo/
-
- // Board SERVO_PIN_A SERVO_PIN_B SERVO_PIN_C
- // ----- ----------- ----------- -----------
- // Arduino Uno, Duemilanove 9 10 (none)
- // Arduino Mega 11 12 13
- // Sanguino 13 12 (none)
- // Teensy 1.0 17 18 15
- // Teensy 2.0 14 15 4
- // Teensy++ 1.0 or 2.0 25 26 27
- // Teensy LC & 3.x (all PWM pins are usable)
-
- #include <PWMServo.h>
-
- PWMServo myservo; // create servo object to control a servo
-
- const int potpin = A0; // analog pin used to connect the potentiometer
- int val; // variable to read the value from the analog pin
-
- void setup() {
- myservo.attach(SERVO_PIN_A); // attaches the servo on pin 9 to the servo object
- //myservo.attach(SERVO_PIN_A, 1000, 2000); // some motors need min/max setting
- }
-
- void loop() {
- val = analogRead(potpin); // reads the value of the potentiometer (value between 0 and 1023)
- val = map(val, 0, 1023, 0, 179); // scale it to use it with the servo (value between 0 and 180)
- myservo.write(val); // sets the servo position according to the scaled value
- delay(15); // waits for the servo to get there
- }
|