agrobot_base/Firmware/Modulos/SerialService.h

83 lines
2.1 KiB
C

#include "Enuns.h"
#ifndef SerialService
#define SerialService
const char EndLine = '$';
const char BeginSensor = '#';
void EnviarDadosSerial(String Mensagem) {
Serial.println(Mensagem);
Serial.flush();
vTaskDelay(pdMS_TO_TICKS(10));
}
String MontarProtocoloVerificacao(T_Code D_Code) {
String Protocolo =
(String)D_Code + ";" +
(String)Chk +
EndLine;
return Protocolo;
}
String MontarProtocoloSensor(S_Code TipoSensor, String Componente, String Dados) {
String Protocolo =
BeginSensor +
(String)TipoSensor + ";" +
Componente + ";" +
Dados +
EndLine;
return Protocolo;
}
String MontarDadosProtocoloTeste(bool Testando, String Componente, String Resultado, String Comando, String Leitura) {
String Protocolo =
(Testando ? "1;" : "0;") +
Componente + ";" +
Resultado + ";" +
Comando + ";" +
Leitura +
EndLine;
return Protocolo;
}
String MontarDadosProtocoloRPM(float rpm, double potencia, StatusMotor aceleracao, Sentido sentido, bool revertendo) {
String Protocolo =
(String)rpm + ";" +
(String)potencia + ";" +
(String)aceleracao + ";" +
(String)sentido + ";" +
(revertendo ? "1" : "0");
return Protocolo;
}
String MontarDadosProtocoloDHT22(float temperatura, float umidade, float indiceCalor) {
String Protocolo =
(String)temperatura + ";" +
(String)umidade + ";" +
(String)indiceCalor;
return Protocolo;
}
String MontarDadosProtocoloEncoder(Sentido sentido, int angulo, bool ref0, bool ref90, bool ref270, bool referenciando, bool referenciado) {
String Protocolo =
(String)sentido + ";" +
(String)angulo + ";" +
(ref0 ? "1" : "0") + ";" +
(ref90 ? "1" : "0") + ";" +
(ref270 ? "1" : "0") + ";" +
(referenciando ? "1" : "0") + ";" +
(referenciado ? "1" : "0");
return Protocolo;
}
String MontarDadosProtocoloSensorGenerico(String dados1, String dados2 = "", String dados3 = "", String dados4 = "") {
String Protocolo =
dados1 + ";" +
dados2 + ";" +
dados3 + ";" +
dados4;
return Protocolo;
}
#endif