#include <Servo.h>
Servo myservo; // creo l'oggetto per controllare il servo
int pos =0;
const int buttonPin = 12; //pin bottone
int buttonState = 0; //variabile per leggere lo stato del bottone
void setup() {
myservo.attach(5); // servo pin. 9
pinMode(buttonPin, INPUT);
}
void loop() {
ì
buttonState = digitalRead(buttonPin); //leggo lo stato del bottone
if(buttonState == HIGH){
myservo.write(90);
for (pos = 90; pos >= 0; pos -= 1) {
myservo.write(pos);
delay(15);
}
delay(100);
for (pos = 90; pos >= 0; pos -= 1) { // va da 90 a 0 gradi
myservo.write(pos);
delay(15);
}
}
}
Salve a tutti, sono in difficoltà nel terminare il codice con la funzione che vorrei aggiungere.
Questo programma prevede che premendo il pulsante la sbarra si alzi e passati alcuni secondi si riabbassi alla posizione iniziale.
Al posto dellla classica fotocellula che attivandosi rialza la sbarra io vorrei che mentre la sbarra si sta abbassando se spingo lo stesso pulsante la sbarra torna a rialzarsi fino alla posizione di 90 gradi. Ho provato a scrivere questa parte di programma, ma mi entra in conflitto con l'altra.
Grzie se potete aiutarmi spero di essere stato chiaro.