溫度即時繪圖

#include <LiquidCrystal_I2C.h>

#include <SoftwareSerial.h>

#include <Wire.h>

#include <OneWire.h>

#include <DallasTemperature.h>

LiquidCrystal_I2C lcd(0x3F,16,2);

#define ONE_WIRE_BUS 2

SoftwareSerial BT(6,9); // TX:10, RX:11\

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&oneWire);

byte serialA;

int y ;

float x ;

float M ;

float m = 50 ;

void setup(){

Serial.begin(115200);

BT.begin(115200);

sensors.begin();

lcd.init();

lcd.backlight();

Serial.println(" t , T");

}

void loop (){

sensors.requestTemperatures();

y = 55 + sensors.getTempCByIndex(0) ;

x = sensors.getTempCByIndex(0) ;

if (x < m) { m = x; }

if (x > M) { M = x; }

lcd.setCursor(0,0);

lcd.print("Now:");

lcd.setCursor(5,0);

lcd.print(sensors.getTempCByIndex(0), 1);

lcd.print((char) 0xDF);

lcd.print("C");

lcd.setCursor(0,1);

lcd.print(M,1);

lcd.print((char) 0xDF);

lcd.print("C");

lcd.setCursor(8,1);

lcd.print(m,1);

lcd.print((char) 0xDF);

lcd.print("C");

Serial.print(millis()/1000.00, 2);

Serial.print(" , ");

Serial.println(x);

byte Data[3];

Data[0]='a';

Data[1]=y/256;

Data[2]=y%256;

serialA=BT.read();

if (serialA == 49){

for(int j=0;j<=2;j++){

BT.write(Data[j]);

serialA = 0;

}

}

}