Средняя температура двумя датчиками | DHT11 и BME280 | arduino

DeaDPlayeR DDPR
Offline
Зарегистрирован: 29.10.2016

Добрый вечер,

Помогите пожайлуста сделать среднюю температуру двумя датчиками

Вот код

int temp = 0;
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#include "DHT.h"
#define DHTPIN 2
DHT dht(DHTPIN, DHT11);
#include <SPI.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BMP280.h>
#define BMP_SCK 13
#define BMP_MISO 12
#define BMP_MOSI 11 
#define BMP_CS 10
Adafruit_BMP280 bme;
LiquidCrystal_I2C lcd(0x26,20,2);
int page = 0;
int butt = 0;
void setup() {
    lcd.init();
    lcd.backlight();
    Serial.begin(9600);
    dht.begin();
    if (!bme.begin()) {
    while (1);
  }
  pinMode(8, INPUT);
  }
void loop(){

  if(digitalRead(8) == HIGH && butt == 0) 
  { 
  page ++;
  butt = 1;
  lcd.clear();
  
  if(page > 2) // Если номер режима превышает требуемого
  { // то отсчет начинается с нуля
  page = 0;
  }
  }

  if(digitalRead(8) == LOW && butt == 1)
  {
  butt = 0;
  }
    if (page == 0){
    lcd.setCursor(0,0); //Выбор курсора (Символ,Строка)
    lcd.print(dht.readHumidity()); //Выводим на дисплей влажность
    lcd.print(" % "); //Выводим проценты
    lcd.setCursor(0,1);
    temp = dht.readTemperature()+bme.readTemperature()/2;
    lcd.print(temp); //Температура
    lcd.print(" *C"); //Цельсиус
    }
    if (page == 1){
    lcd.setCursor(0,0); //Выбор курсора (Символ,Строка)
    lcd.print("Pressure = ");
    lcd.print(bme.readPressure()*0.007500637554192); //Давление
    lcd.print(" mmhg"); // мм.рт.ст.
    lcd.setCursor(0,1);
    lcd.print("Altitude = ");
    lcd.print(bme.readAltitude(1013.25)); //Высота над уровнем воды
    lcd.print(" metr"); //Метры
    }
    if (page== 2){
    lcd.setCursor(0,0);
    lcd.print("BMP280 temp=");
    lcd.print(bme.readTemperature());
    lcd.setCursor(0,1);
    lcd.print("DHT11 temp=");
    lcd.print(dht.readTemperature());
    }
  }

Зарание спасибо.

bwn
Offline
Зарегистрирован: 25.08.2014

В той строке, где temp = ......, начальную школу вспомнить не пытались и порядок выполнения арифметических операций.))))

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

bwn пишет:

начальную школу вспомнить не пытались 

А разве Клапауций не запретил ещё?

bwn
Offline
Зарегистрирован: 25.08.2014

ЕвгенийП пишет:

bwn пишет:

начальную школу вспомнить не пытались 

А разве Клапауций не запретил ещё?

Тсссс! Он хде то рядом.