#include <Servo.h>
int MI = 13;
int BTN = 2;
byte SenS = 8;
byte SenB = 7;
int A=0;
int B=0;
int PosicionServo =90;
int direccion = 1;
Servo servoMotor;
void setup() {
Serial.begin(115200);
pinMode(MI, OUTPUT);
pinMode(BTN, INPUT);
pinMode(SenS, INPUT);
pinMode(SenB, INPUT);
servoMotor.attach(9);
}
void loop() {
byte VB = digitalRead(BTN);
if(VB == HIGH){
Serial.println("boton de inicio pulsado");
MovimientoServomotor();
digitalWrite(MI,0);
}
else{Serial.println("en espera");}
delay(100);
}
void MovimientoServomotor(){
digitalWrite(MI,1);
if(direccion == 1){
while (1){
servoMotor.write(PosicionServo);
delay(50);
PosicionServo++;
Serial.println(PosicionServo);
if(digitalRead(SenB)){
direccion = 2;
return;
}
}
}
if(direccion == 2){
while (1){
servoMotor.write(PosicionServo);
delay(50);
PosicionServo--;
Serial.println(PosicionServo);
if(digitalRead(SenS)){
direccion = 1;
return;
}
}
}
}SS
SB