// Stepper motor on Wokwi!
#include <Stepper.h>
#define trig 4
#define pino_echo 5
float distancia;
int led=6;
int b3=3;
int b2=2;
int b1=1;
int estado1=0;
int estado2=0;
int estado3=0;
const int stepsPerRevolution = 200;
Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);
void setup() {
pinMode(b1,INPUT_PULLUP);
pinMode(b2,INPUT_PULLUP);
pinMode(b3,INPUT_PULLUP);
pinMode(trig,OUTPUT);
pinMode(pino_echo,INPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(trig, LOW);
delay(0005);
digitalWrite(trig, HIGH);
delay(0010);
digitalWrite(trig, LOW);
distancia = pulseIn (pino_echo, HIGH);
distancia = distancia/58;
estado1=digitalRead(b1);
estado2=digitalRead(b2);
estado3=digitalRead(b3);
if (estado1==0){
digitalWrite(led,HIGH);
}
if (estado2==0){
digitalWrite(led,LOW);
}
if (estado3==0){
if (distancia > 20){
myStepper.setSpeed(20);
myStepper.step(stepsPerRevolution);
}
else {
myStepper.setSpeed(10);
myStepper.step(-stepsPerRevolution);
}
}
}