Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //se define un nombre
- #define MAXLED 8
- // inicializar variables utilizadas
- int led[MAXLED] = {2,3,4,5,6,7,8,9}; //arreglo para los pines de salida digital
- int valor_ON = 0; // valor recibido del PC
- int valor_OFF = 0; // valor recibido del PC
- char letra; // lectura del caracter enviado
- void setup()
- {
- // La comunicacion serial sera a 9600 baudios
- Serial.begin(9600);
- // el bucle nombra los pines D2~D9 como salida digital
- for (int pin = 0; pin < MAXLED; pin++)
- pinMode(led[pin],OUTPUT);
- }
- // Ciclo infinito de ejecucion
- void loop()
- {
- // Si hay datos disponibles en el puerto serial
- if (Serial.available() > 0)
- {
- // Leer el valor
- letra = Serial.read();
- // aqui se condiciona si el valor enviado es para el
- // valor de apagado o encendido
- if (letra == 'A'){
- valor_ON = Serial.parseInt();
- }
- if (letra == 'B'){
- valor_OFF = Serial.parseInt();
- }
- }
- //rutina de desplazamiento de los leds
- //toma los valores de valor_ON y valor_OFF
- //para los retardos
- for (int pin = 0; pin < MAXLED; pin++)
- {
- int t_ON = valor_ON;
- int t_OFF = valor_OFF;
- prender(led[pin], t_ON);
- apagar(led[pin], t_OFF);
- }
- }
- //funcion de encendido led por led
- void prender(int p, int t)
- {
- digitalWrite(p, HIGH);
- delay(t);
- }
- //funcion de apagado led por led
- void apagar(int p, int t)
- {
- digitalWrite(p, LOW);
- delay(t);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement