Añadido sensor bmp

main
Gerardo 2024-09-30 23:17:14 +02:00
parent 7a256eb46f
commit 519b95a0f9
3 changed files with 77 additions and 1 deletions

View File

@ -10,6 +10,7 @@
#include "SensorTimer.h" #include "SensorTimer.h"
#include "SensorLcd.h" #include "SensorLcd.h"
#include "SensorBuzzer.h" #include "SensorBuzzer.h"
#include "SensorBMP180.h"
#include "SensorRF.h" #include "SensorRF.h"
#include "SensorSplitter.h" #include "SensorSplitter.h"

View File

@ -0,0 +1,75 @@
#ifndef SensorBMP180Def
#define SensorBMP180Def 1
#include "defines.h"
#include <Wire.h>
#include <Adafruit_BMP085.h>
//sensor virtual
class SensorBMP180: public DomoEspSensorReceiver
{
float t, p, a;//temperarura, presion, altura
int sda,scl;
Adafruit_BMP085 bmp;
public:
SensorBMP180()
{
t=p=a=0;
topic[0]=0;
}
void set(char* topic_id, int _sda, int _scl)
{
sda=_sda;
scl=_scl;
strcpy(topic, topic_id);
}
virtual void inicia()
{
//inicia------------------
Wire.begin( sda,scl);
int i=0;
while(!bmp.begin(), i<300)
{
i++;
delay(10);
}
if(i>=300)
{
#ifdef DEBUG_PS
Serial.println("---------------------------------LogBMP Error al inicializar bmp----------------------------------");
#endif
}
}
virtual float getVal()
{
return (float)p;
}
virtual void procesa(IMqttManager * man, int tiempo)
{
if(tiempo==2)
{
#ifdef DEBUG_PS
Serial.println("LogBMP ");
#endif
t= bmp.readTemperature();
p = bmp.readPressure();
a=bmp.readAltitude();
//loguea------------
//char buffer_t[MAXTOPICVAR];
//char buffer_p[MAXTOPICVAR];
sprintf(buffer_p, "%d", t);
sprintf(buffer_t, "%s/t/get",topic);
man->MqttSend(buffer_t, buffer_p);
sprintf(buffer_p, "%d", p);
sprintf(buffer_t, "%s/p/get",topic);
man->MqttSend(buffer_t, buffer_p);
sprintf(buffer_p, "%d", a);
sprintf(buffer_t, "%s/a/get",topic);
man->MqttSend(buffer_t, buffer_p);
}
}
};
#endif

View File

@ -45,7 +45,7 @@ class ConfAutomatismos: public DomoEspConfig
}; };
class ConfSpliter: public DomoEspConfig class ConfSpliter: public DomoEspConfig
{ {
SensorBMP180 bmp;
SensorDout luz; SensorDout luz;
SensorDout luz2; SensorDout luz2;