Advertisement
Guest User

Arduino Xbee Bot Code

a guest
Jan 4th, 2013
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.59 KB | None | 0 0
  1. //MOTOR1 RIGHT
  2.  
  3. int M1_IN1 = 11;
  4. int M1_IN2 = 10;
  5.  
  6. //MOTOR2 LEFT
  7.  
  8. int M2_IN1 = 9;
  9. int M2_IN2 = 3;
  10.  
  11. int incomingByte = 0;
  12.  
  13. // the setup routine runs once when you press reset:
  14. void setup() {                
  15.   pinMode(M1_IN1, OUTPUT);    
  16.   pinMode(M1_IN2, OUTPUT);
  17.  
  18.   pinMode(M2_IN1, OUTPUT);    
  19.   pinMode(M2_IN2, OUTPUT);
  20.  
  21.   Serial.begin(9600);
  22.   off();
  23. }
  24.  
  25. // the loop routine runs over and over again forever:
  26. void loop() {
  27.   if (Serial.available() > 0) {
  28.     // read the incoming byte:
  29.     incomingByte = Serial.read();
  30.     // say what you got:
  31.     Serial.println("I received: ");
  32.     Serial.write(incomingByte);
  33.     if(incomingByte=='w'){
  34.       forward();
  35.     }
  36.     if (incomingByte=='s'){
  37.       reverse();
  38.     }
  39.     if(incomingByte=='q')
  40.       off();  
  41.   }
  42.   if(incomingByte=='d'){
  43.     right();  
  44.   }
  45.   if(incomingByte=='a'){
  46.     left();  
  47.   }
  48.  
  49. }
  50.  
  51.  
  52. void forward(){
  53.   digitalWrite(M1_IN2,LOW);
  54.   analogWrite(M1_IN1,-200);
  55.  
  56.   digitalWrite(M2_IN2,LOW);
  57.   analogWrite(M2_IN1,-200);
  58.  
  59. }
  60.  
  61. void reverse(){
  62.  
  63.   digitalWrite(M1_IN1,LOW);
  64.   analogWrite(M1_IN2,220);
  65.  
  66.   digitalWrite(M2_IN1,LOW);
  67.   analogWrite(M2_IN2,220);
  68.  
  69. }
  70.  
  71. void off(){
  72.   digitalWrite(M1_IN1,HIGH);
  73.   digitalWrite(M1_IN2,HIGH);
  74.  
  75.   digitalWrite(M2_IN1,HIGH);
  76.   digitalWrite(M2_IN2,HIGH);
  77. }
  78.  
  79. void right(){
  80.   digitalWrite(M1_IN2,LOW);
  81.   analogWrite(M1_IN1,-250);
  82.  
  83.   digitalWrite(M2_IN2,LOW);
  84.   analogWrite(M2_IN1,-100);
  85. }
  86.  
  87. void left(){
  88.   digitalWrite(M2_IN2,LOW);
  89.   analogWrite(M2_IN1,-250);
  90.  
  91.  digitalWrite(M1_IN2,LOW);
  92.   analogWrite(M1_IN1,-100);
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement