post my code, thanks a lot!!
temperature & humidity & CO2 display LCD and save to mysql
#include <DHT.h>
#include <Ethernet.h>
#include <SPI.h>
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); // RX, TX
unsigned char hexdata[9] = {0xFF,0x01,0x86,0x00,0x00,0x00,0x00,0x00,0x79};
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip (192,168,0,150);
EthernetClient client;
#define DHTPIN 2
#define DHTTYPE
DHT dht(DHTPIN, DHTTYPE);
long previousMillis = 0;
unsigned long currentMillis = 0;
long interval = 250000;
float t = 0;
float h = 0;
String data;
static long CO2;
void setup() {
client.stop();
Serial.begin(9600);
while (!Serial) {
}
mySerial.begin(9600);
lcd.begin(16, 2);
lcd.backlight();
dht.begin();
h = (float) dht.readHumidity();
t = (float) dht.readTemperature();
data = "";
}
void loop(){
lcd.clear();
digitalWrite(LED3, HIGH);
mySerial.write(hexdata,9);
delay(300);
currentMillis = millis();
if(currentMillis - previousMillis > interval) {
previousMillis = currentMillis;
h = (float) dht.readHumidity();
t = (float) dht.readTemperature();
}
mySerial.write(hexdata,9);
delay(500);
for(int i=0,j=0;i<9;i++)
{
if (mySerial.available()>=0)
{
long hi,lo;
int ch=mySerial.read();
if(i==2){ hi=ch; }
if(i==3){ lo=ch; }
if(i==8) {
CO2=hi*256+lo;
Serial.print("CO2 concentration: ");
Serial.print(CO2);
Serial.println("ppm");
}
}
}
//--------LCD Display
lcd.setCursor(0, 0); //Display CO2 Title
lcd.print("CO2:");
lcd.setCursor(8, 0); //Display CO2 Value
lcd.print(CO2);
lcd.setCursor(13, 0); //Display ppm
lcd.print("ppm");
lcd.setCursor(0, 1); //Display Temperature Title
lcd.print("T:");
lcd.setCursor(2, 1); //Display Temperature Value
lcd.print(t);
lcd.setCursor(6, 1); //Display C
lcd.print("C");
lcd.setCursor(9, 1); //Display Humidity Title
lcd.print("H:");
lcd.setCursor(11, 1); //Display Humidity Value
lcd.print(h);
lcd.setCursor(15, 1); //Display %
lcd.print("%");
//--------
data = "temp1=" + String(t) + "&hum1=" + String(h) + "&co2=" + String(CO2);
Ethernet.begin(mac,ip);
if (client.connect("192.168.0.105",80))
client.println("POST /add.php HTTP/1.1");
client.println("Host: 192.168.0.105");
client.println("Content-Type: application/x-www-form-urlencoded");
client.print("Content-Length: ");
client.println(data.length());
client.println();
client.print(data);
//----mysql save
digitalWrite(LED2, HIGH);
delay(500);
digitalWrite(LED2, LOW);
}
if (client.connected()) {
client.stop();
}
delay(30000);
}