Escolar Documentos
Profissional Documentos
Cultura Documentos
◦ Arduino UNO
◦ Breadboard
◦ Cables eléctricos
◦ Resistencias de 10K y de 1K
◦ 1 Resistencia LDR
◦ 4 pulsadores
◦ 4 leds
◦ 1 display 7 segmentos
EJERCICIOS
Objetivos:
Vamos a simular dos entradas lógicas (“1” ó “0”) con dos pulsadores,
(pueden ser conmutadores). En este ejemplo usaremos la función AND de
manera que, según el estado de las 2 entradas, obtendremos una señal de
salida (“1” ó “0”) conforme a la tabla de verdad de la operación.
void setup() {
pinMode(var1, INPUT); // Iniciliza el pin de entrada 1 como salida
pinMode(var2, INPUT); // Iniciliza el pin de entrada 2 como salida
pinMode(led, OUTPUT); // Iniciliza el pin del led como salida
}
void loop(){
estado1 = digitalRead(var1); // Lee el estado del botón y lo almacena
estado2 = digitalRead(var2); // Lee el estado del botón y lo almacena
resultado = (estado1 && estado2); // Función AND con los dos estados
digitalWrite(led, resultado); // Escribimos el resultado en el led
// pinMode(b, OUTPUT);
pinMode(c, OUTPUT);
pinMode(d, OUTPUT);
pinMode(e, OUTPUT);
pinMode(f, OUTPUT);
pinMode(g, OUTPUT);
}
void loop() { // put your main code here, to run repeatedly: //Escribiendo el
0
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(f, HIGH);
digitalWrite(g, LOW);
delay(1000);
// Retardo de 1 segundo. // Escribiendo el 1
digitalWrite(a, LOW);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
digitalWrite(f, LOW);
digitalWrite(g, LOW);
delay(1000);
// Retardo de 1 segundo. // Escribiendo el 2
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, LOW);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(f, LOW);
digitalWrite(g, HIGH);
delay(1000);
// Retardo de 1 segundo. // Escribiendo el 3
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, LOW);
digitalWrite(f, LOW);
digitalWrite(g, HIGH);
delay(1000);
// Retardo de 1 segundo. // Escribiendo el 4
digitalWrite(a, LOW);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
delay(1000);
// Retardo de 1 segundo. // Escribiendo el 5
digitalWrite(a, HIGH);
digitalWrite(b, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, LOW);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
delay(1000); // Retardo de 1 segundo. // Escribiendo el 6
digitalWrite(a, HIGH);
digitalWrite(b, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
delay(1000); // Retardo de 1 segundo. // Escribiendo el 7
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
digitalWrite(f, LOW);
digitalWrite(g, LOW);
delay(1000);
// Retardo de 1 segundo. //Escribiendo el 8
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
delay(1000);
// Retardo de 1 segundo. //Escribiendo el 9
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, LOW);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
delay(1000); // Retardo de 1 segundo.
}
6. Realiza un programa capaz de ajustar la velocidad de la cuenta
atrás del punto anterior en función de la posición de un potenciómetro. El
tiempo deberá ser configurable entre un mínimo de 100ms y un máximo de
5 segundos por dígito
void setup() {
}
void turnOff()
{
digitalWrite(a,HIGH);
digitalWrite(b,HIGH);
digitalWrite(c,HIGH);
digitalWrite(d,HIGH);
digitalWrite(e,HIGH);
digitalWrite(f,HIGH);
digitalWrite(g,HIGH);
}
void loop() {
for(int i=0;i<10;i++)
{
displayDigit(i);
delay(1000);
turnOff();
}
}
void setup () {
FECHA: 12/04/18