Paso 3: El bosquejo
El bosquejo no es tan sencillo como copiar y pegar ambos dibujos juntos, tuve que modificarla para dar cabida a ambos dispositivos y el Arduino para obtener los datos del sensor y mostrarla en la pantalla LCD. Pero las Variables y las bibliotecas siguen siendo las mismas.
Hay una copia comprimida del bosquejo en este instructivo se puede ajustar como mejor parezca.
Empecé definiendo las librerías que necesitamos para el LCD. Para más detalles sobre cómo cargar las librerías en la carpeta de biblioteca de Arduino, siga las instrucciones de este instructivo:
cargar las bibliotecas de
#include < Wire.h >
#include < LCD.h >
#include < LiquidCrystal_I2C.h >
Definí las variables requeridas por el LCD y el LM35
He añadido la variable tempf para ayudar a visualizar la temperatura en Fahrenheit
Definir las variables para el LCD
#define I2C_ADDR 0x27 //Define dirección I2C Dónde está el PCF8574A
#define BACKLIGHT_PIN 3
#define En_pin 2
#define y 1
#define Rs_pin 0
#define D4_pin 4
#define D5_pin 5
#define D6_pin 6
#define D7_pin 7
definir las variables para el sensor de temperatura LM35
temp de flotador; Definir la variable float temp
flotador tempf; Definir el Fahrenheit variable float
sensor int = 0; perno central de sensor en el pin analógico 0
Entonces inicializa el LCD usando esta línea:
Inicializar el LCD
Lcd de LiquidCrystal_I2C (I2C_ADDR, En_pin, y, Rs_pin, D4_pin, D5_pin, D6_pin, D7_pin);
En la configuración de vacío, digo el Arduinio que estoy utilizando un 16 X 2 LCD, encienda la retroiluminación e imprimir algunas líneas que no va a cambiar.
void setup() {}
LCD.Begin (16.2); Definir la pantalla LCD como 16 columnas por 2 filas
Encender la luz de fondo
lcd.setBacklightPin(BACKLIGHT_PIN,POSITIVE);
lcd.setBacklight(HIGH);
lcd.setCursor(0,0); Goto primera columna (columna 0) y primera línea (0)
LCD.Print ("temperatura C ="); Imprimir en ubicación de cursor
lcd.setCursor(0,1); Goto primera columna (columna 0) y segunda línea (1)
LCD.Print ("F Temp ="); Imprimir en la posición del cursor
}
En el circuito de vacío lo lea la temperatura del sensor, cambiar a grados Celsius y mostrar en la primera fila, luego cambiar otra vez a Fahrenheit y mostrar en la segunda fila. Repetir el proceso cada 5 segundos
void loop() {}
Temp = analogRead(sensor); asignación de la salida analógica para temperatura
Temp = temp * 0.48828125; conversión de voltios a grados---0.48828125 = [(5V*1000)/1024] 10 tempf = (temp * 1.8) + 32; Convering de celsius a fahreneit
lcd.setCursor(8,0); mueve el cursor en la posición 8 en fila 1
LCD.Print(Temp); imprimir la temperatura en grados Celsius
lcd.setCursor(8,1); mueve el cursor en la posición 8 en fila 2
LCD.Print(tempf); imprimir la temperatura en Fahrenheit
Delay(5000); Espere 5 segundos
}
Les espero guste, si tienes alguna pregunta no dude en preguntar.
Disfrutar de