Documente Academic
Documente Profesional
Documente Cultură
Examen Supletorio.
Dada la siguiente tabla, obtener la forma estándar del producto de sumas, obtener el Mapa de Karnaugh,
realizar la simplificación con el mapa y graficar el diagrama lógico simplificado. (5 puntos)
A B C D X
0 0 0 0 0
0 0 0 1 0
0 0 1 0 0
0 0 1 1 1
0 1 0 0 1
0 1 0 1 1
0 1 1 0 0
0 1 1 1 1
1 0 0 0 0
1 0 0 1 1
1 0 1 0 1
1 0 1 1 0
1 1 0 0 0
1 1 0 1 1
1 1 1 0 1
1 1 1 1 0
1. Tres leds conectados al Arduino, 1 y 2 se encienden y se apagan cada 3 segundos, mientras que el
ultimo se enciende por 1 segundo y se apaga cada 2 segundos.
int led1=13;
int led2=12;
int led3=11;
void setup()
{
pinMode(led1, OUTPUT); // declaramos al pin 13 como salida
pinMode(led2, OUTPUT); //declaramos al pin 12 como salida
pinMode(led3, OUTPUT); //declaramos al pin 11 como salida
}
void loop()
{
digitalWrite(led1, HIGH); // Enciende el LED (ALTO es el nivel de voltaje)
delay(3000); // esperar 3 segundos
digitalWrite(led1, LOW); // Apague el LED cuando el voltaje este en BAJO
delay(3000); // esperar por 3 segundos
digitalWrite(led2, HIGH); // Enciende el LED (ALTO es el nivel de voltaje)
delay(3000); // esperar 3 segundos
digitalWrite(led2, LOW); // Apague el LED cuando el voltaje este en BAJO
delay(3000); // esperar 3 segundos
digitalWrite(led3, HIGH); // Enciende el LED (ALTO es el nivel de voltaje)
delay(1000); // esperar 1 segundos
digitalWrite(led3, LOW); // Apague el LED cuando el voltaje este en BAJO
delay(2000); // esperar 2 segundos
}
2. Tiene 1 led y 3 pulsadores conectados al Arduino, 1 pulsador hace que el led titile cada segundo, al
presionar el segundo pulsador el led queda encendido y al presionar el tercero apaga el led.
void setup() {
pinMode (LED,OUTPUT); //DECLARAMOS AL LED COMO SALIDA
pinMode (pulsador1,INPUT); //DECLARAMOS AL PULSADOR1 COMO ENTRADA
pinMode (pulsador2,INPUT); //DECLARAMOS AL PULSADOR2 COMO ENTRADA
pinMode (pulsador3,INPUT); //DECLARAMOS AL PULSADOR3 COMO ENTRADA
}
void loop() {
if(digitalRead(pulsador1)==HIGH) //comprueba si el pulsador1 se encuentra en alto
{ //si es verdadero se realiza la siguiente operacion
analogWrite(LED,HIGH); //se enciende el led si se encuentra en un nivel alto
delay(1000); // espera 1 segundo
analogWrite(LED,LOW); //se apaga el led si se encuentra en un nivel bajo
delay(1000); // espera 1 segundo
}
if(digitalRead(pulsador2)==HIGH) //comprueba si el pulsador2 se encuentra en alto
{ //si es verdadero se realiza la siguiente operacion
analogWrite(LED,HIGH); // se enciende el led si se encuentra en un nivel alto
}
if(digitalRead(pulsador3)==HIGH) // comprueba si el pulsador3 se encuentra
{ //si es verdadero se realiza la siguiente operacion
analogWrite(LED,LOW); // se apaga el led si se encuentra en un nivel bajo
}
}
int LED1=13;
int LED2=12;
int LED3=11;
int pulsador1=8;
int pulsador2=9;
int pot= A0;
int bright= 225;
int val=0;
void setup()
{
pinMode(LED1,OUTPUT); // DECLARAMOS AL LED1 COMO SALIDA
pinMode(LED2,OUTPUT); // DECLARAMOS AL LED2 COMO SALIDA
pinMode(LED3,OUTPUT); // DECLARAMOS AL LED3 COMO SALIDA
pinMode(pulsador1,INPUT); // DECLARAMOS AL PULSADOR1 COMO ENTRADA
pinMode(pulsador2,INPUT); // DECLARAMOS AL PULSADOR2 COMO ENTRADA
pinMode(pot,INPUT); // DECLARAMOS AL POTENCIOMETRO COMO ENTRADA
}
void loop() {
if(digitalRead(pulsador1)==HIGH) // COMPRUEBA SI EL PULSADOR SE ENCUENTRA EN ALTO
{ // SI ES VERDAD SE EJECUTA LA SIGUIENTE OPERACION
bright=analogRead(pot); // LA INTENSIDAD SERA EL VALOR LEIDO DEL POTENCIOMETRO
analogWrite(LED1,bright); // EL LED SE ENCIENTE CON LA INTENSIDAD QUE LEE DEL
POTENCIOMETRO
analogWrite(LED2,bright);
analogWrite(LED3,bright);
}
if(digitalRead(pulsador2)==HIGH) // COMPRUEBA SI EL PULSADOR SE ENCUENTRA EN ALTO
{ // SI ES VERDAD SE EJECUTA LA SIGUIENTE OPERACION
val=analogRead(pot); // LA VELOCIDAD SERA EL VALOR LEIDO DEL POTENCIOMETRO
digitalWrite(LED1,HIGH); // EL LED1 SE ENCIENTE SI SE ENCUENTRA EN UN NIVEL ALTO
delay(val); // ESPERA EL VALOR DE VELOCIDAD LEIDA
digitalWrite(LED1,LOW); // EL LED1 SE APAGA SI SE ENCUENTRA EN UN NIVEL BAJO
delay(val); // ESPERA EL VALOR DE VELOCIDAD LEIDA
digitalWrite(LED2,HIGH);
delay(val);
digitalWrite(LED2,LOW);
delay(val);
digitalWrite(LED3,HIGH);
delay(val),
digitalWrite(LED3,LOW);
delay(val);
}