Função com parâmetro

Fonte: Wikiversidade

Agora vemos uma função com um parâmetro simples


void motor1 (int direcao) {

 if (direcao == 1) {
   digitalWrite(4,1);
   digitalWrite(5,0);
 }
 else
 if (direcao == -1) {
   digitalWrite(4,0);
   digitalWrite(5,1);
 }
 else {
   digitalWrite(4,0);
   digitalWrite(5,0);
 }

}

void motor2 (int direcao) {

 if (direcao == 1) {
   digitalWrite(6,1);
   digitalWrite(7,0);
 }
 else
 if (direcao == -1) {
   digitalWrite(6,0);
   digitalWrite(7,1);
 }
 else {
   digitalWrite(6,0);
   digitalWrite(7,0);
 }

}

void frente(int tempo) {

 motor1(1);
 motor2(-1);
 delay(tempo);
 motor1(0);
 motor2(0);

}

void setup() {

 frente(5000);

}

void loop() { }

Esta função também move o carrinho para frente. Mas utilizar outras 2 funções, uma função para cada motor. Essas funções movem o motor no sentido horário, ou no sentido anti-horário, ou para o motor (dependendo do parâmetro de entrada direcao).