Have i broken something in the servo library

this code should work but it dosen't it post properly then in loop reads the pwm peoperly displays it properly as a degree then the write fuction just dose not do anything at first i thought it was my if stament but no i put in weapon.write(45); and it still stays at 180 degreese please help i have no idea what is going wrong

#include <Servo.h>

Servo weapon;
Servo drive1;
Servo drive2;
byte PWM_PIN1 = 8;
byte PWM_PIN2 = 7;
byte PWM_PIN3 = 6;// create servo object to control a servo
// twelve servo objects can be created on most boards

int pwm_weapon; //auxsilary button
int pwm_drive1; // throtle
int pwm_drive2; // steering

void setup() {
  pinMode(PWM_PIN1, INPUT);
  pinMode(PWM_PIN2, INPUT);
  pinMode(PWM_PIN3, INPUT);
  Serial.begin(9600);
  weapon.attach(11);
  drive1.attach(10);
  drive2.attach(9);
  drive1.write(95);
  drive2.write(89);
  weapon.write(90);//start up post              
  delay(500);
  weapon.write(120);
  delay(500);
  weapon.write(45);
  drive1.write(7);
  drive2.write(1);
  delay(500);
  drive1.write(180);
  drive2.write(174);
  delay(500);
  drive1.write(95);
  drive2.write(89);
  delay(500);
}

void loop() {
  pwm_weapon = pulseIn(PWM_PIN1, HIGH);
  pwm_weapon = pwm_weapon - 550;
  pwm_weapon = pwm_weapon / 11;
  Serial.println(pwm_weapon);
  weapon.write(45);
   if(pwm_weapon > 90 );{
    weapon.write(45);
  }
  if(pwm_weapon < 80);{
    weapon.write(180);
  }
  delay(10);                  //math to get an output of 0-180 
  pwm_drive1 = pulseIn(PWM_PIN2, HIGH);
  pwm_drive1 = pwm_drive1 - 550;
  pwm_drive1 = pwm_drive1 / 11;
  delay(10);
  pwm_drive2 = pulseIn(PWM_PIN3, HIGH);
  pwm_drive2 = pwm_drive2 - 550;
  pwm_drive2 = pwm_drive2 / 11;
  delay(10);
  //drive1.write(pwm_drive1);
  //drive2.write(pwm_drive1);
  delay(10);
  //drive1.write(pwm_drive2);
  //pwm_drive2 = pwm_drive2 * -1;
  //drive2.write(pwm_drive2);
  delay(10);
  
  
} 

Lose the semicolon:

 if(pwm_weapon > 90 );{

thank you it is working now

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.