0

ボタン1を押して離したときに、標準のサーボを180度回転させたいです。しかし、ボタン2が押されている間だけサーボが初期位置に戻るようにしたい(&ボタン2が離されると回転を停止する)。私が持っているarduinoコードでは、ボタン1を押して離すとサーボが180度完全に回転できるようになりましたが、ボタン2を離すと停止するのではなく、ボタン2を押して離すとサーボが誤って初期位置に戻ります。 . 次のコードに関するヘルプをいただければ幸いです。

#include <Servo.h>
Servo myservo;

int pos;

const int buttonPin = 2;
const int buttonPin2 = 3;
int buttonState = 0;
int buttonState2 = 0;

void setup()
{
  myservo.attach(9);

  pinMode(buttonPin, INPUT);
  pinMode(buttonPin2,INPUT);

}
void loop()

{

  buttonState = digitalRead(buttonPin);
  buttonState2 = digitalRead(buttonPin2); 

  if (buttonState == HIGH) {  
    pos=180;
    myservo.write(180);    

  }

  if (buttonState2 == HIGH) {  
    pos-=1;
    myservo.write(pos); 

  } 
} 
4

1 に答える 1