Advertisement
Guest User

Untitled

a guest
Feb 13th, 2016
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. #include <Servo.h>
  2.  
  3. Servo escleft;
  4. Servo escright;
  5. int val;
  6. int encoder0PinA = 3;
  7. int encoder0PinB = 4;
  8. int encoder0Pos = 0;
  9. int encoder0PinALast = LOW;
  10. int n = LOW;
  11. void setup() {
  12.  
  13. pinMode (encoder0PinA,INPUT);
  14. pinMode (encoder0PinB,INPUT);
  15. Serial.begin (9600);
  16. escright.attach(9);
  17. escleft.attach(10);
  18. escright.write(90);
  19. escleft.write(90);
  20. delay(4200); //arms ESC
  21. }
  22. void loop(){
  23. encoder0Pos = encoderfunction();
  24. while(encoder0Pos < 4000){
  25. n = digitalRead(encoder0PinA);
  26. if ((encoder0PinALast == LOW) && (n == HIGH)) {
  27. if (digitalRead(encoder0PinB) == LOW) {
  28. encoder0Pos--;
  29. } else {
  30. encoder0Pos++;
  31. }
  32. Serial.print (encoder0Pos);
  33. }
  34. encoder0PinALast = n;
  35. escleft.writeMicroseconds(1450);//give motors throttle
  36. escright.writeMicroseconds(1550);//
  37. }
  38. escleft.writeMicroseconds(1500);//brakes both motors
  39. escright.writeMicroseconds(1500);
  40. }
  41. int encoderfunction(){
  42.  
  43. n = digitalRead(encoder0PinA);
  44. if ((encoder0PinALast == LOW) && (n == HIGH)) {
  45. if (digitalRead(encoder0PinB) == LOW) {
  46. encoder0Pos--;
  47. } else {
  48. encoder0Pos++;
  49. }
  50. Serial.print (encoder0Pos);
  51. }
  52. return encoder0Pos;
  53. encoder0PinALast = n;
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement