Função com vários parâmetros
Aspeto
Esta função utiliza 2 parâmetros:
void motor (int numeroMotor, int direcao) {
// Pinos do Motor 1 ou do Motor 2 int pino1, pino2; if ( numeroMotor == 1 ) { //pinos 8 e 9 pino1 = 8; pino1 = 9; } else { //pinos 10 e 11 pino1 = 10; pino1 = 11; } // Verificar direcao do movimento if (direcao == 1) { digitalWrite(pino1,1); digitalWrite(pino2,0); } else if (direcao == -1) { digitalWrite(pino1,0); digitalWrite(pino2,1); } else { digitalWrite(pino1,0); digitalWrite(pino2,0); }
}
void frente(int tempo) {
motor(1, 1); motor(2, -1); delay(tempo); motor(1, 0); motor(2, 0);
}
void setup() {
frente(5000);
}
void loop() { }
Uma outra função com mais parâmetros:
void motor (int numeroMotor, int direcao) { // Pinos do Motor 1 ou do Motor 2 int pino1, pino2; if ( numeroMotor == 1 ) { //pinos 8 e 9 pino1 = 8; pino1 = 9; } else { //pinos 10 e 11 pino1 = 10; pino1 = 11; } // Verificar direcao do movimento if (direcao == 1) { digitalWrite(pino1,1); digitalWrite(pino2,0); } else if (direcao == -1) { digitalWrite(pino1,0); digitalWrite(pino2,1); } else { digitalWrite(pino1,0); digitalWrite(pino2,0); } } void frente(int tempo) { motor(1, 1); motor(2, -1); delay(tempo); motor(1, 0); motor(2, 0); } void direita(int tempo) { // gira para direita motor(1, 1); motor(2, 1); delay(tempo); motor(1, 0); motor(2, 0); } void esquerda(int tempo) { // gira para esquerda motor(1, -1); motor(2, -1); delay(tempo); motor(1, 0); motor(2, 0); } void parar(int tempo) { // gira para esquerda motor(1, -1); motor(2, -1); delay(tempo); motor(1, 0); motor(2, 0); } void setup() { frente(5000); } void loop() { }