Paso 4: Sketch de Arduino
#include "Wire.h" //libreria para comunicaciones el reloj y el barómetro
#include "Adafruit_MPL115A2.h"// librería barómetro
Adafruit_MPL115A2 mpl115a2;
char sensorPrintPress [6];
char sensorPrintTemp [5];
Declaración de las cadenas de fecha
dayPrint Char [3];
char monthPrint [3];
char yearPrint [5];
Hora de de declaración de las cadenas
char hourPrint [3];
char minPrint [3];
char secPrint [3];
Libreria del reloj DS1307
#include "RTClib.h"
RTC_DS1307 RTC;
int velocidad = 0;
Libreria del LCD de Siemens S55
#include "LM15SGFNZ07.h"
Lcd(2,3,4,5,6) de LM15SGFNZ07; config lcd conectividad
void setup()
{
LCD.init_lcd(); / / Inicia la pantalla LCD
LCD.contrast_lcd(0x100); ajuste del contraste de nuevo
LCD.clear_lcd(White); / / Pone la pantalla en blanco
Delay(100);
Wire.Begin(); Inicia el protocolo alambre
RTC.begin(); Inicia el reloj
mpl115a2.Begin (); //Inicia el barómetro
}
void loop()
{
Fecha y hora ahora = RTC.now (); hora de //Pide el valor de la
pressureKPA de flotador = 0, temperatureC = 0; definir las variables del barómetro
pressureKPA = mpl115a2.getPressure (); //lee el valor de la presión
temperatureC = mpl115a2.getTemperature() + 3; //Lee el valor de la temperatura y Suma tres grados error
LCD.str_lcd ("ESTACION METEO", 1, 1, 1, negro, -1);
LCD.line_lcd (5, 90, 198, 198, negro);
convertir la lectura en una cadena
String sensorP = String(pressureKPA);
convertir la lectura en una matriz de char
sensorP.toCharArray (sensorPrintPress, 6);
LCD.str_lcd (sensorPrintPress, 8, 3, 1, blanco, blanco);
LCD.str_lcd ("Pbaro =", 1, 3, 1, negro, -1);
LCD.str_lcd (sensorPrintPress, 8, 3, 1, negro, -1);
LCD.str_lcd ("kPa", 15, 3, 1, negro, -1);
convertir la lectura en una cadena
Cadena sensorT = String(temperatureC);
convertir la lectura en una matriz de char
sensorT.toCharArray (sensorPrintTemp, 5);
LCD.str_lcd (sensorPrintTemp, 8, 5, 1, blanco, blanco);
LCD.str_lcd ("Temp =", 1, 5, 1, negro, -1);
LCD.str_lcd (sensorPrintTemp, 8, 5, 1, negro, -1);
LCD.str_lcd ("C", 13, 5, 1, negro, -1);
convertir la lectura en una cadena
LCD.str_lcd ("Fecha =", 1, 7, 1, negro, -1);
sday int = now.day();
String ssday = String(sday);
convertir la lectura en una matriz de char
ssday.toCharArray (dayPrint, 3);
LCD.str_lcd (dayPrint, 8, 7, 1, blanco, blanco);
LCD.str_lcd (dayPrint, 8, 7, 1, negro, -1);
LCD.str_lcd ("/", 10, 7, 1, negro, -1);
convertir la lectura en una cadena
int smonth = now.month();
String ssmonth = String(smonth);
convertir la lectura en una matriz de char
ssmonth.toCharArray (monthPrint, 2);
LCD.str_lcd (monthPrint, 11, 7, 1, blanco, blanco);
LCD.str_lcd (monthPrint, 11, 7, 1, negro, -1);
LCD.str_lcd ("/", 13, 7, 1, negro, -1);
convertir la lectura en una cadena
int syear = now.year();
String ssyear = String(syear);
convertir la lectura en una matriz de char
ssyear.toCharArray (yearPrint, 5);
LCD.str_lcd (yearPrint, 14, 7, 1, blanco, blanco);
LCD.str_lcd (yearPrint, 14, 7, 1, negro, -1);
convertir la lectura en una cadena
LCD.str_lcd ("Hora =", 1, 9, 1, negro, -1);
shour int = now.hour();
String sshour = String(shour);
convertir la lectura en una matriz de char
sshour.toCharArray (hourPrint, 3);
LCD.str_lcd (hourPrint, 7, 9, 1, blanco, blanco);
LCD.str_lcd (hourPrint, 7, 9, 1, negro, -1);
LCD.str_lcd ("/", 9, 9, 1, negro, -1);
convertir la lectura en una cadena
smin int = now.minute();
String ssmin = String(smin)
convertir la lectura en una matriz de char
ssmin.toCharArray (minPrint, 3);
LCD.str_lcd (minPrint, 10, 9, 1, blanco, blanco);
LCD.str_lcd (minPrint, 10, 9, 1, negro, -1);
LCD.str_lcd ("/", 12, 9, 1, negro, -1);
convertir la lectura en una cadena
ssec int = now.second();
String sssec = String(ssec);
convertir la lectura en una matriz de char
sssec.toCharArray (secPrint, 3);
LCD.str_lcd (secPrint, 13, 9, 1, blanco, blanco);
LCD.str_lcd (secPrint, 13, 9, 1, negro, -1);
Si (ssec < 56) {}
LCD.line_lcd (0, ssec, 1, 1, azul);
LCD.line_lcd (0, ssec, 2, 2, azul);
LCD.line_lcd (0, ssec, 3, 3, azul);
LCD.line_lcd (0, ssec, 4, 4, azul);
LCD.line_lcd (0, ssec, 5, 5, azul);
}
Else {}
LCD.line_lcd (0, 60,1, 1, blanco);
LCD.line_lcd (0, 60,2, blanco 2,);
LCD.line_lcd (0, 60,3, 3, blanco);
LCD.line_lcd (0, 60,4, 4, blanco);
LCD.line_lcd (0, 60.5, 5, blanco);
}
Delay(1000);
LCD.clear_lcd(White);
}