Muchas gracias bueno explico mas el proyecto es un motor sobre un riel que vaya de lado a lado, estoy haciendo las pruebas de programación por ahora solo con led... ahora el problema que me surge es que anda muy lento (ocupo arduino nano), el cambio de ronda demora como 2 segundos y eso no me gusta... entonces quiero pedirles como optimizar mas mi codigo o consejos generales sobre eso
int adelante = 2;
int atras = 3;
int parada1= 4;
int parada2 = 5;
int manual = 6;
int boton1 = 7;
int boton2 =8;
void setup()
{
pinMode(adelante, OUTPUT);
pinMode(atras, OUTPUT);
pinMode(parada1, INPUT);
pinMode(parada2, INPUT);
pinMode(manual, INPUT);
pinMode(boton1, INPUT);
pinMode(boton2, INPUT);
}
void loop()
{
if( digitalRead(parada1)==HIGH && digitalRead(manual)==LOW){ //esta seccion es para el movimiento automatico donde evalia si los finales de
digitalWrite(atras, HIGH); //carreras que estan al final del rial no esten activados
digitalWrite(adelante, LOW);
}
if( digitalRead(parada2)==HIGH && digitalRead(manual)==LOW){
digitalWrite(adelante, HIGH);
digitalWrite(atras,LOW);
}
/*---------------------------------------------
esta parte es el control manual donde habra un interruptor que se accionara y se detendra el desplazamiento automatico*/
if(digitalRead(manual)==HIGH){
if(digitalRead(boton1)==HIGH){
digitalWrite(adelante, HIGH);
}else{
digitalWrite(adelante, LOW);
}
if(digitalRead(boton2)==HIGH){
digitalWrite(atras, HIGH);
}else{
digitalWrite(atras, LOW);
}
}
}
espero sus respuestas
saludos