Está en la página 1de 6

Facultad de Ingeniería

Laboratorio de Arquitectura de computadoras

GUIA DE ACTIVIDADES #4
Curso : Arquitectura del computador

Lectura Analógica de datos:

EJERCICIO 1:
Mostrar la secuencia de prendido y apagado de led según el switch más alto activado.
Es decir, por ejemplo si esta activado el switch 2 y el switch 3, la secuencia se hará
prendiendo sucesivamente tres led.
int led1 = 5;
int led2 = 6;
int led3 = 7;
int led4 = 8;
const int sw1 = 9;
const int sw2 = 10;
const int sw3 = 11;
const int sw4 = 12;
const int leds[] = {led1,led2,led3,led4};

void setup() {
Serial.begin(9600);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);

pinMode(sw1,INPUT);
pinMode(sw2,INPUT);
pinMode(sw3,INPUT);
pinMode(sw4,INPUT);

void loop() {

if(digitalRead(sw4) == 1){

prenderLeds(4);
}
else if(digitalRead(sw3) == 1){
prenderLeds(3);
}
else if(digitalRead(sw2) == 1){
prenderLeds(2);
}
else if(digitalRead(sw1) == 1){
prenderLeds(1);
}
else{
apagarLeds();
}

void prenderLeds(int n){

for(int i=0;i<n;i++){

digitalWrite(leds[i],HIGH);
delay(500);
}
}

void apagarLeds(){

for(int i=0;i<4;i++){

digitalWrite(leds[i],LOW);
}
}

EJERCICIO 2:
El pulsador controla la secuencia de led paso a paso, en la primera pulsación se
prende el led 1 y se queda prendido, en la segunda pulsación se apaga todo y se
prende y apaga el primer led, luego se queda prendido el led 2. En la tercera pulsación
se apaga todo, se prenden y apagan en secuencia los leds 1 y 2, luego el led 3 se
queda prendido. En la cuarta pulsación se apaga todo, se prenden y apagan en
secuencia los leds 1,2 y 3, luego el led 4 se queda prendido. Así sucesivamente, luego
se repite la secuencia.
.
int led1 = 5;
int led2 = 6;
int led3 = 7;
const int btn1 = 9;
const int leds[] = {led1,led2,led3,led4};

void setup() {
Serial.begin(9600);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);

pinMode(btn1,INPUT);

void loop() {

if(digitalRead(sw4) == 1){
prenderLeds(4);
}
else if(digitalRead(sw3) == 1){
prenderLeds(3);
}
else if(digitalRead(sw2) == 1){
prenderLeds(2);
}
else if(digitalRead(sw1) == 1){
prenderLeds(1);
}
else{
apagarLeds();
}

void prenderLeds(int n){

for(int i=0;i<n;i++){

digitalWrite(leds[i],HIGH);
delay(500);
}
}

void apagarLeds(){

for(int i=0;i<4;i++){

digitalWrite(leds[i],LOW);
}
}

También podría gustarte