Stap 4: Arduino Sketch
#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
char dayPrint [3];
char monthPrint [3];
char yearPrint [5];
Declaración de las cadenas de hora
char hourPrint [3];
char minPrint [3];
char secPrint [3];
bibliotheek del reloj DS1307
#include "RTClib.h"
RTC_DS1307 RTC;
int tarief = 0;
Bibliotheek del LCD de Siemens S55
#include "LM15SGFNZ07.h"
LM15SGFNZ07 lcd(2,3,4,5,6); config LCD-gegevensbestandconectivity
VOID Setup
{
LCD.init_lcd(); / / Inicia la pantalla LCD
LCD.contrast_lcd(0x100); nieuwe contrast instellen
LCD.clear_lcd(White); / / Pone la pantalla nl blanco
delay(100);
Wire.begin(); Inicia el protocolo draad
RTC.begin(); Inicia el reloj
mpl115a2.begin (); //Inicia el barómetro
}
void loop
{
DateTime nu = RTC.now (); //Pide el valor de la hora
zweven pressureKPA = 0, temperatureC = 0; definiëren van las variabelen del barómetro
pressureKPA = mpl115a2.getPressure (); //lee el valor de la presión
temperatureC = mpl115a2.getTemperature() + 3; //Lee el valor de la temp y Suma tres grados fout
LCD.str_lcd ("ESTACION METEO", 1, 1, 1, zwart, -1);
LCD.line_lcd (5, 90, 198, 198, zwart);
de lezing te converteren naar een tekenreeks
SensorP koord = String(pressureKPA);
de lezing omzetten in een char-matrix
sensorP.toCharArray (sensorPrintPress, 6);
LCD.str_lcd (sensorPrintPress, 8, 3, 1, wit, wit);
LCD.str_lcd ("Pbaro =" 1, 3, 1, zwart, -1);
LCD.str_lcd (sensorPrintPress, 8, 3, 1, zwart, -1);
LCD.str_lcd ("kPa", 15, 3, 1, zwart, -1);
de lezing te converteren naar een tekenreeks
SensorT koord = String(temperatureC);
de lezing omzetten in een char-matrix
sensorT.toCharArray (sensorPrintTemp, 5);
LCD.str_lcd (sensorPrintTemp, 8, 5, 1, wit, wit);
LCD.str_lcd ("Temp = ', 1, 5, 1, zwart, -1);
LCD.str_lcd (sensorPrintTemp, 8, 5, 1, zwart, -1);
LCD.str_lcd ("C", 13, 5, 1, zwart, -1);
de lezing te converteren naar een tekenreeks
LCD.str_lcd ("Fecha =", 1, 7, 1, zwart, -1);
int sday = now.day();
Ssday koord = String(sday);
de lezing omzetten in een char-matrix
ssday.toCharArray (dayPrint, 3);
LCD.str_lcd (dayPrint, 8, 7, 1, wit, wit);
LCD.str_lcd (dayPrint, 8, 7, 1, zwart, -1);
LCD.str_lcd ("/", 10, 7, 1, zwart, -1);
de lezing te converteren naar een tekenreeks
int smonth = now.month();
Ssmonth koord = String(smonth);
de lezing omzetten in een char-matrix
ssmonth.toCharArray (monthPrint, 2);
LCD.str_lcd (monthPrint, 11, 7, 1, wit, wit);
LCD.str_lcd (monthPrint, 11, 7, 1, zwart, -1);
LCD.str_lcd ("/", 13, 7, 1, zwart, -1);
de lezing te converteren naar een tekenreeks
int syear = now.year();
Ssyear koord = String(syear);
de lezing omzetten in een char-matrix
ssyear.toCharArray (yearPrint, 5);
LCD.str_lcd (yearPrint, 7, 14, 1, wit, wit);
LCD.str_lcd (yearPrint, 7, 14, 1, zwart, -1);
de lezing te converteren naar een tekenreeks
LCD.str_lcd ("Hora =", 1, 9, 1, zwart, -1);
int shour = now.hour();
Sshour koord = String(shour);
de lezing omzetten in een char-matrix
sshour.toCharArray (hourPrint, 3);
LCD.str_lcd (hourPrint, 7, 9, 1, wit, wit);
LCD.str_lcd (hourPrint, 7, 9, 1, zwart, -1);
LCD.str_lcd ("/", 9, 9, 1, zwart, -1);
de lezing te converteren naar een tekenreeks
int smin = now.minute();
Ssmin koord = String(smin)
de lezing omzetten in een char-matrix
ssmin.toCharArray (minPrint, 3);
LCD.str_lcd (minPrint, 10, 9, 1, wit, wit);
LCD.str_lcd (minPrint, 10, 9, 1, zwart, -1);
LCD.str_lcd ("/", 12, 9, 1, zwart, -1);
de lezing te converteren naar een tekenreeks
int ssec = now.second();
Sssec koord = String(ssec);
de lezing omzetten in een char-matrix
sssec.toCharArray (secPrint, 3);
LCD.str_lcd (secPrint, 9, 13, 1, wit, wit);
LCD.str_lcd (secPrint, 9, 13, 1, zwart, -1);
Als (ssec < 56) {}
LCD.line_lcd (0, ssec, 1, 1, blauw);
LCD.line_lcd (0, ssec, 2, 2, blauw);
LCD.line_lcd (0, ssec, 3, 3, blauw);
LCD.line_lcd (0, ssec, 4, 4, blauw);
LCD.line_lcd (0, ssec, 5, 5, blauw);
}
else {}
LCD.line_lcd (0, 60,1, 1, wit);
LCD.line_lcd (0, 60,2, 2, wit);
LCD.line_lcd (0, 60,3, 3, wit);
LCD.line_lcd (0, 60,4, 4, witte);
LCD.line_lcd (0, 60,5, 5, wit);
}
delay(1000);
LCD.clear_lcd(White);
}