Motor de Passo Mitsumi de 5 terminais.
Detalhe que para o código funcionar, o valor tempo tem que ser múltiplo do número de passos.
Código:

/*
Motor de Passo Mitsumi 5 terminais.
Acelera o motor prograssivamente, desacelera ate parar,
inverte a rotaco, acelera novamente, e assim vai.
*/

void setup() {
Serial.begin(9600);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(13, OUTPUT);


}

void loop()
{
int t=100;
while (t>=1)
{
{
digitalWrite(3, 1);
digitalWrite(4, 0);
digitalWrite(5, 0);
digitalWrite(6, 0);
digitalWrite(13, 1);
delay(t);
t=t-1;
}
{
digitalWrite(3, 1);
digitalWrite(4, 1);
digitalWrite(5, 0);
digitalWrite(6, 0);
digitalWrite(13, 0);
delay(t);
t=t-1;
}
{
digitalWrite(3, 0);
digitalWrite(4, 1);
digitalWrite(5, 0);
digitalWrite(6, 0);
digitalWrite(13, 1);
delay(t);
t=t-1;
}
{
digitalWrite(3, 0);
digitalWrite(4, 1);
digitalWrite(5, 1);
digitalWrite(6, 0);
digitalWrite(13, 0);
delay(t);
t=t-1;
}
{
digitalWrite(3, 0);
digitalWrite(4, 0);
digitalWrite(5, 1);
digitalWrite(6, 0);
digitalWrite(13, 1);
delay(t);
t=t-1;
}
{
digitalWrite(3, 0);
digitalWrite(4, 0);
digitalWrite(5, 1);
digitalWrite(6, 1);
digitalWrite(13, 0);
delay(t);
t=t-1;
}
{
digitalWrite(3, 0);
digitalWrite(4, 0);
digitalWrite(5, 0);
digitalWrite(6, 1);
digitalWrite(13, 1);
delay(t);
t=t-1;
}
{
digitalWrite(3, 1);
digitalWrite(4, 0);
digitalWrite(5, 0);
digitalWrite(6, 1);
digitalWrite(13, 0);
delay(t);
t=t-1;
}
}
while (t<=100)
{
{
digitalWrite(3, 0);
digitalWrite(4, 0);
digitalWrite(5, 0);
digitalWrite(6, 1);
digitalWrite(13, 1);
delay(t);
t=t+1;
}
{
digitalWrite(3, 0);
digitalWrite(4, 0);
digitalWrite(5, 1);
digitalWrite(6, 1);
digitalWrite(13, 0);
delay(t);
t=t+1;
}
{
digitalWrite(3, 0);
digitalWrite(4, 0);
digitalWrite(5, 1);
digitalWrite(6, 0);
digitalWrite(13, 1);
delay(t);
t=t+1;
}
{
digitalWrite(3, 0);
digitalWrite(4, 1);
digitalWrite(5, 1);
digitalWrite(6, 0);
digitalWrite(13, 0);
delay(t);
t=t+1;
}
{
digitalWrite(3, 0);
digitalWrite(4, 1);
digitalWrite(5, 0);
digitalWrite(6, 0);
digitalWrite(13, 1);
delay(t);
t=t+1;
}
{
digitalWrite(3, 1);
digitalWrite(4, 1);
digitalWrite(5, 0);
digitalWrite(6, 0);
digitalWrite(13, 0);
delay(t);
t=t+1;
}
{
digitalWrite(3, 1);
digitalWrite(4, 0);
digitalWrite(5, 0);
digitalWrite(6, 0);
digitalWrite(13, 1);
delay(t);
t=t+1;
}
{
digitalWrite(3, 1);
digitalWrite(4, 0);
digitalWrite(5, 0);
digitalWrite(6, 1);
digitalWrite(13, 0);
delay(t);
t=t+1;
}
}
}

Exibições: 570

Comentar

Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!

Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço