/*
Código demonstrativo para a aula de Bancos de Dados aplicados à Internet das Coisas,
Curso de Engenharia e Administração de Sistemas de Banco de Dados,
Faculdade de Tecnologia - UNICAMP.
*/
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x20, 16, 2);
#define PINO_TRIGGER 10
#define PINO_ECHO 9
int polegadas = 0;
int centimetros = 0;
long readUltrasonicDistance() {
digitalWrite(PINO_TRIGGER, LOW);
delayMicroseconds(2);
digitalWrite(PINO_TRIGGER, HIGH);
delayMicroseconds(10);
digitalWrite(PINO_TRIGGER, LOW);
return pulseIn(PINO_ECHO, HIGH);
}
void setup() {
pinMode(PINO_TRIGGER, OUTPUT);
pinMode(PINO_ECHO, INPUT);
lcd.init();
lcd.backlight();
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Fac. Tecnologia");
lcd.setCursor(0, 1);
lcd.print("Unicamp Limeira");
delay(3000);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Bancos de Dados ");
lcd.setCursor(0, 1);
lcd.print("Aplicados a IoT ");
delay(3000);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(" Exercicio ");
lcd.setCursor(0, 1);
lcd.print("----------------");
delay(3000);
lcd.clear();
}
void loop() {
//lcd.clear();
centimetros = 0.01723 * readUltrasonicDistance();
polegadas = (centimetros / 2.54);
lcd.setCursor(0, 0);
lcd.print("Dist.: ");
lcd.print(centimetros);
lcd.print(" cm ");
lcd.setCursor(0, 1);
lcd.print("Dist.: ");
lcd.print(polegadas);
lcd.print(" pol ");
delay(100);
}