Arduino – Control basico de entradas y salidas digitales.

Probando las salidas digitales en Arduino Mega2560

En esta entrada vamos a hacer un ejemplo de blinking usando leds algo alterado, con el fin de utilizar una función de llamada que se ejecute en el bucle principal.

Se definirá un array de leds que contendrá el numero de sus pines.

En este caso para generar el encendido y apagado hemos definido una variable booleana que inicia en bajo nivel.

Además se ha creado una variable entera que utilizaremos para crear esperas de tiempo que nosotros estimemos.

La función blinking() recibe por parámetro un valor booleano y un numero de pin. Ésta función la utilizaremos para refrescar el estado un led determinado.

La función recorrerPines() al inicio iguala la variable boostate a su valor opuesto y luego va iterando en array de leds. Seguidamente se introduce un delay por el tiempo que hayamos estimado. 

int leds[] = {53,51,49,47,45,43};
bool boolstate = LOW;
int time = 200;

void setup() {
Serial.begin(9600);
Serial.println("Initialize ledPorwerUp");
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
recorrerPines();
}
void blinking(bool state,int pin){
Serial.print("["+(String)pin+"]");
digitalWrite(pin, state);
}
void recorrerPines(){
boolstate = !boolstate;
for(int i=0;i<6;i++){
blinking(boolstate,leds[i]);
delay(200);
}
Serial.println(boolstate);
}

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Social Media Auto Publish Powered By : XYZScripts.com