Una prensa se pone en marcha mediante la activación simultánea de 3 pulsadores. Si se pulsa sólo dos pulsadores,
la prensa funcionará, pero se activará una señal luminosa indicando una
manipulación incorrecta. Cuando se pulse un sólo dispositivo se
encenderá la lámpara pero no se activará la prensa. Obtener la tabla de
verdad y las funciones lógicas correspondientes.
- Dibujar el circuito correspondiente.
- Realizar el algoritmo.
- Realizar el programa para Arduino.
Diagrama de flujo
Código
int pinLed=8;
int pinPulsadorA=10;
int pinPulsadorB=11;
int pinPulsadorC=12;
int estadoPulsadorA=0;
int estadoPulsadorB=0;
int estadoPulsadorC=0;
int pinMotor=5;
int pulsadoresActivados=0;
void setup(){
pinMode(pinLed,OUTPUT);
pinMode(pinMotor,OUTPUT);
pinMode(pinPulsadorA,INPUT);
pinMode(pinPulsadorB,INPUT);
pinMode(pinPulsadorC,INPUT);
}
void loop(){
estadoPulsadorA=digitalRead(pinPulsadorA);
estadoPulsadorB=digitalRead(pinPulsadorB);
estadoPulsadorC=digitalRead(pinPulsadorC);
pulsadoresActivados= estadoPulsadorA+estadoPulsadorB+estadoPulsadorC;
if (pulsadoresActivados==3)
{
digitalWrite(pinMotor,HIGH);
digitalWrite(pinLed,LOW);
}
else if (pulsadoresActivados==2)
{
digitalWrite(pinMotor,HIGH);
digitalWrite(pinLed,HIGH);
}
else if (pulsadoresActivados==1)
{
digitalWrite(pinLed,HIGH);
//delay(500);
}
else
{
digitalWrite(pinLed,LOW);
digitalWrite(pinMotor,LOW);
//delay(500);
}
}
No hay comentarios:
Publicar un comentario