Las siguientes son las etapas dentro de la estrategia de resolución de problemas Design
Thinking podrá ver los trabajos desarrollados y anotadas en las plantillas respectivas.
A continuación se muestra el vídeo que explica el prototipo realizado en el proyecto final, su funcionamiento y circuito construido. Además se comparte el código realizado para su funcionamiento.
Código usado en el IDE de Arduino
#include <Adafruit_CircuitPlayground.h>
#include <LiquidCrystal_I2C.h> //libreria de I2C que tiene mi LCD
int PinDelBoton = 9; //creo y asugno valores a las variables
int estadoActual = 0;
int estadoAnterior = 0;
int salida =0;
LiquidCrystal_I2C lcd(0x27, 16, 2); //
void setup() {
CircuitPlayground.begin();// inicializa la tarjeta
Serial.begin(9600);//abre puerto serial y permite la entrada y salida de datos a una velocidad determinada
pinMode (PinDelBoton, INPUT); //establezco el pin 10 como entrada de datos en la tarjeta
lcd.init();
lcd.backlight();
}
void loop() {
encenderprototipo();
lcd.clear();// limpia la pantalla LCD
}
////Procedimiento para sensor de sonido////
void nivel_sonido()
{
int valor_sonido = CircuitPlayground.soundSensor();
Serial.println(valor_sonido);
if (valor_sonido < 100)
{
lcd.setCursor(2, 0);
lcd.print("Precaucion");
lcd.setCursor(2, 1);
lcd.print("Baje la voz");
delay(500);
for (int i = 0; i<=9; i++)
{
CircuitPlayground.setPixelColor (i,255,0,0);
delay(50);
}
delay(700);
}
else
{
// lcd.init();
// lcd.backlight();
lcd.setCursor(2, 0);
lcd.print("ruido");
lcd.setCursor(2, 1);
lcd.print("Aceptable");
delay(500);
for (int i = 0; i<=9; i++)
{
CircuitPlayground.setPixelColor (i,0,255,0);
}
}
}
void encenderprototipo(){
estadoActual = digitalRead(PinDelBoton);
Serial.print(estadoActual);
if ((estadoActual == HIGH) && (estadoAnterior == LOW)){
salida = 1- salida;
//delay (20);
}
estadoAnterior = estadoActual; // guarda el estado anterior del botón
if (salida == 1) // Verifica si el boton fue presionado y esta en HIGH
{
//HACE QUE ENCIENDA
//LLAMA AL PROCEDIMIENTO nivel_sonido()
nivel_sonido();
}
else
{ // si se presiona el boton por segunda vez y esta en LOW.
//SE APAGA
CircuitPlayground.clearPixels();
}
}




No hay comentarios:
Publicar un comentario