Advertisement
Guest User

Untitled

a guest
May 21st, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.49 KB | None | 0 0
  1. /* Sweep
  2. by BARRAGAN <http://barraganstudio.com>
  3. This example code is in the public domain.
  4.  
  5. modified 8 Nov 2013
  6. by Scott Fitzgerald
  7. http://arduino.cc/en/Tutorial/Sweep
  8. */
  9.  
  10. #include <Servo.h>
  11.  
  12. Servo myservo; // create servo object to control a servo
  13. // twelve servo objects can be created on most boards
  14. int servoPin = 9;
  15. int servoPos = 0;
  16. int servoDelay = 15;
  17. int servoStartPos = 0;
  18. int servoEndPos = 87;
  19.  
  20. int buttonPin = 2;
  21. int buttonState = 0;
  22.  
  23. boolean closing = false;
  24. boolean opening = false;
  25.  
  26. void setup()
  27. {
  28. pinMode(servoPin, OUTPUT);
  29. myservo.attach(servoPin); // attaches the servo on pin 9 to the servo object
  30. pinMode(buttonPin, INPUT);
  31.  
  32. servoPos = myservo.read();
  33. if (servoPos > servoStartPos){
  34. closing = true;
  35. } else if (servoPos > servoEndPos) {
  36. opening = true;
  37. }
  38. }
  39. void loop()
  40. {
  41. if (closing == true) {
  42.  
  43. servoPos = myservo.read();
  44. for (int pos = servoPos; pos >= servoStartPos; pos -= 1) {
  45. myservo.write(pos);
  46. delay(servoDelay);
  47. }
  48. closing = false;
  49.  
  50. } else if (opening == true) {
  51.  
  52. servoPos = myservo.read();
  53. for (int pos = servoPos; pos <= servoEndPos; pos += 1){
  54. myservo.write(pos);
  55. delay(servoDelay);
  56. }
  57. opening = false;
  58.  
  59. } else {
  60.  
  61. buttonState = digitalRead(buttonPin);
  62. if (buttonState == HIGH){
  63. if (targeting == true) {
  64. closing = true;
  65. } else {
  66. opening = true;
  67. }
  68. }
  69. }
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement