Antes de formular mi pregunta le envió un saludo a todas las personas que conforman este foro, estoy desarrollando un control de giro para un motor paso a paso que sera acoplado a una mano articulada, el programa lo estoy desarrollando con arduino, el programa consiste en activar el motor (sentido horario ) con un pulsador y cuando se deje de pulsar el motor deberá invertir los giros realizado (anti horario ), el pulsador esta conectado al pin 10, a continuación les presento el programa que estoy realizando pero no funciona como es debido.
Código:
int i;
int x;
void setup(){
pinMode(0,OUTPUT);
pinMode(1,OUTPUT);
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
}
void loop(){
i=0;
x=0;
if (digitalRead(10)==HIGH){
i++;
digitalWrite(0,HIGH);
digitalWrite(1,LOW);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
delay(100);
digitalWrite(0,LOW);
digitalWrite(1,HIGH);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
delay(100);
digitalWrite(0,LOW);
digitalWrite(1,LOW);
digitalWrite(2,HIGH);
digitalWrite(3,LOW);
delay(100);
digitalWrite(0,LOW);
digitalWrite(1,LOW);
digitalWrite(2,LOW);
digitalWrite(3,HIGH);
delay(100);
}
else if (digitalRead(10)==LOW && i>0){
for( i=i; i==0; i--){
digitalWrite(0,LOW);
digitalWrite(1,LOW);
digitalWrite(2,LOW);
digitalWrite(3,HIGH);
delay(100);
digitalWrite(0,LOW);
digitalWrite(1,LOW);
digitalWrite(2,HIGH);
digitalWrite(3,LOW);
delay(100);
digitalWrite(0,LOW);
digitalWrite(1,HIGH);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
delay(100);
digitalWrite(0,HIGH);
digitalWrite(1,LOW);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
delay(100);
}
}
else
{
digitalWrite(0,LOW );
digitalWrite(1,LOW);
digitalWrite(2,LOW);
digitalWrite(3,LOW);
}
} ...
Última edición por un moderador: