Paso 9: Arduino funciones
El bosquejo siguiente desvanece LED de rojo a verde a azul al rojo al verde y así sucesivamente...El bosquejo arriba funciona, pero hay un montón de código repetido. Podemos simplificar escribiendo nuestra propia función auxiliar que se desvanece de un color a otro color. Aquí está la función como se verá:
{} void fader (int color1, color2 int)
para (brillo int = 0; brillo < 256; brillo ++) {}
analogWrite (color1, 255-brillo);
analogWrite (color2, brillo);
Delay(10);
}
}
Examinemos esta definición de función pieza por pieza. La función se llama a "fader" y toma dos argumentos. Cada argumento es separado por una coma y ha un tipo declarado en la primera línea de la definición de función:
{} void fader (int color1, color2 int)
Podemos ver que los argumentos que acepta fader son enteros, y estamos utilizando los nombres "color1" y "color2" como variables dummy para la definición de función. El "vacío" se refiere al tipo de datos que devuelve la función, ya que nuestra función no devuelve nada (simplemente ejecuta los comandos), establece el tipo de retorno en vacío. Si tuviéramos que crear una función que multiplica a dos números y devuelve el producto podríamos definirlo así:
int multiplicador (int número1, número2 int) {}
int producto = número1 * número2;
devolución;
}
Observa cómo hemos declarado int como el tipo de devolución aquí en lugar de vacío.
El valor de la función es algo que hemos visto antes. Es el mismo loop que estábamos repitiendo en nuestro bosquejo pasado, pero el perno números han sido reemplazados por las variables color1 y color2. Si llamamos:
FADER (rojo, verde);
de loop() de Arduino, Arduino evalúa la función fader con color1 = rojo y color2 = verde.
Poniendo esto todos juntos nos podemos reescribir el bosquejo usando esta función como sigue, esto funciona exactamente igual que el boceto en la parte superior de este paso.