66 lines
1.3 KiB
C
66 lines
1.3 KiB
C
|
|
#include "SerialService.h"
|
||
|
|
#include "Pinout.h"
|
||
|
|
#include "Utils.h"
|
||
|
|
|
||
|
|
#ifndef SensorPressaoModel
|
||
|
|
#define SensorPressaoModel
|
||
|
|
|
||
|
|
class SensorPressao {
|
||
|
|
public:
|
||
|
|
|
||
|
|
SensorPressao(String _modID, String _id) {
|
||
|
|
Mod_ID = _modID;
|
||
|
|
_ID = _id;
|
||
|
|
}
|
||
|
|
|
||
|
|
// Definições
|
||
|
|
String Mod_ID = "";
|
||
|
|
String _ID;
|
||
|
|
S_Code _componente = sPRS;
|
||
|
|
PinoModel _pino;
|
||
|
|
|
||
|
|
double leitura = 0;
|
||
|
|
|
||
|
|
bool Iniciado = false;
|
||
|
|
bool Checando = false;
|
||
|
|
|
||
|
|
void Inicializar() {
|
||
|
|
if (Iniciado) {
|
||
|
|
EnviarDadosSerial(Mod_ID, MontarProtocoloSensor(sCFG, _ID, "1"));
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
leitura = 0;
|
||
|
|
|
||
|
|
_pino.Conectar(); // Conecta o pino antes de criar a tarefa
|
||
|
|
|
||
|
|
Iniciado = true;
|
||
|
|
EnviarDadosSerial(Mod_ID, MontarProtocoloSensor(sCFG, _ID, "1"));
|
||
|
|
}
|
||
|
|
|
||
|
|
void Desligar() {
|
||
|
|
if (!Iniciado) {
|
||
|
|
EnviarDadosSerial(Mod_ID, MontarProtocoloSensor(sCFG, _ID, "0"));
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
_pino.Desconectar(); // Desconecta o pino
|
||
|
|
|
||
|
|
Iniciado = false;
|
||
|
|
EnviarDadosSerial(Mod_ID, MontarProtocoloSensor(sCFG, _ID, "0"));
|
||
|
|
}
|
||
|
|
|
||
|
|
void AferirPressao() {
|
||
|
|
leitura = _pino.get();
|
||
|
|
}
|
||
|
|
|
||
|
|
void RequisitarDados() {
|
||
|
|
AferirPressao();
|
||
|
|
|
||
|
|
//EnviarDadosSerial(Mod_ID, MontarProtocoloSensor(sPRS, _ID, MontarDadosProtocoloPressao(Iniciado, leitura)));
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
};
|
||
|
|
|
||
|
|
#endif
|