Função motor1 e motor2 com parâmetro de direção
Aparência
void motor1(int direcao){
if (direcao == 1) // Motor 1 no sentido horario
{
digitalWrite(4, 1);
digitalWrite(5, 0);
}
else
if (direcao == -1) // Motor 1 no sentido anti-horario
{
digitalWrite(4, 0);
digitalWrite(5, 1);
}
else
{ // Motor 1 parar
digitalWrite(4, 0);
digitalWrite(5, 0);
}
} void motor2(int direcao){
if (direcao == 1) // Motor 2 no sentido horario
{
digitalWrite(6, 1);
digitalWrite(7, 0);
}
else
if (direcao == -1) // Motor 2 no sentido anti-horario
{
digitalWrite(6, 0);
digitalWrite(7, 1);
}
else
{ // Motor 2 parar
digitalWrite(6, 0);
digitalWrite(7, 0);
}
} void frente(int tempo){
motor1(1); motor2(-1); delay(tempo); motor1(0); motor2(0);
} void volta(int tempo){
motor1(-1); motor2(1); delay(tempo); motor1(0); motor2(0);
} void direita(int tempo){
motor1(-1); motor2(-1); delay(tempo); motor1(0); motor2(0);
} void esquerda(int tempo){
motor1(1); motor2(1); delay(tempo); motor1(0); motor2(0);
} void setup() {
pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); pinMode(7, OUTPUT);
} void loop() {
frente(500); direita(100); volta(200); esquerda(150); frente(250);
}