Boa noite galera,
Estou tentando utilizar o sensor de temperatura MAX6675 com ESP32 LORA e estou obtendo erro na compilação assim que carrego no código a biblioteca do MAX6675. Alguém já utilizou e pode me apoiar?
Desde já agradeço,
Segue o código para análise:
#include <max6675.h>
#define tamanhoDoVetorDeEntrada 10  //numero de pontos de coleta
#define      n     40               //número de pontos da média móvel 
double averageAnalogRead();
long movingAverage();
int thermoDO = 34;
int thermoCS = 22;
int thermoCLK = 23;
double temperatura;
MAX6675 thermocouple(thermoCLK, thermoCS, thermoDO);
/*****************VARIAVEIS DE TRATAMENTO DE LEITURA DA TEMPERATURA**************/
double vetorDeSaida[tamanhoDoVetorDeEntrada - 2];
double       numbers[n];           //vetor com os valores para média móvel
/***********************************************/
void setup() {
  Serial.begin(9600);
  Serial.println("Texte MAX6675");
}
void loop() {
  // put your main code here, to run repeatedly:
  temperatura = averageAnalogRead();
  //Serial.print("C = ");
  Serial.println(temperatura);
  temperatura < 32 ? Serial.println("NÃO") : Serial.println("SIM");
  delay(1000);
}
double averageAnalogRead() {
  //Funcão para realizar coletas de dados e após média, acumular em média movel.
  double inputArray[tamanhoDoVetorDeEntrada];
  double maxValue, minValue, mediaTemp;
  double media;
  int posicaoMax = 0, posicaoMin = 0, k = 0;
  //float vetorDeSaida[tamanhoDoVetorDeEntrada-2];
  for (int i = 0; i < tamanhoDoVetorDeEntrada; i++) {
    inputArray = thermocouple.readCelsius();
    delay(2);
  }
  for (int i = 1; i < tamanhoDoVetorDeEntrada; i++) {
    if (i == 1) {
      maxValue = inputArray[0];
      minValue = inputArray[0];
    }
    if (maxValue < inputArray) {
      maxValue = inputArray;
      posicaoMax = i;
    } else {
      minValue = inputArray;
      posicaoMin = i;
    }
  }
  for (int i = 0; i < tamanhoDoVetorDeEntrada; i++) {
    if (i == 0)    k = 0;
    if ((i == posicaoMin) || (i == posicaoMax)) {
      continue;
    }
    vetorDeSaida[k] = inputArray;
    k++;
  }
  mediaTemp = 0;
  for (int i = 0; i < tamanhoDoVetorDeEntrada - 2; i++) {
    mediaTemp += vetorDeSaida;
  }
  media = mediaTemp / (tamanhoDoVetorDeEntrada - 2);
  //std::cout<<media/(tamanhoDoVetorDeEntrada-2)<< std::endl;
  /***********INICIO DA MÉDIA MÓVEL**************/
  double      original,           //recebe o valor da média das temperaturas lidas
              filtrado;           //recebe o valor original filtrado
  original = media;
  for (int i = n - 1; i > 0; i--)
    numbers = numbers; //desloca os elementos do vetor de média móvel
  numbers[0] = original;       //posição inicial do vetor recebe a leitura original
  long acc = 0;                //acumulador para somar os pontos da média móvel
  for (int i = 0; i < n; i++)
    acc += numbers; //faz a somatória do número de pontos
  return acc / n;          //retorna a média móvel
}
Erro apresentado 
Erro compilando para a placa ESP32 Dev Module
			
									
									
						Utilizar MAX6675 com ESP32 lora
- 
				FabricioMM
- Membro
- Mensagens: 3
- Registrado em: 27/Mai/2019, 19:35
Re: Utilizar MAX6675 com ESP32 lora
Olá Hudson, eu estou tendo o mesmo problema, estou achando que não é compatível com a placa pois o mesmo código carrega normalmente no arduino uno, espero que tenha resolvido se sim poste a sua solução, Obrigado.
			
									
									
						- 
				FabricioMM
- Membro
- Mensagens: 3
- Registrado em: 27/Mai/2019, 19:35
Re: Utilizar MAX6675 com ESP32 lora
Estou tendo o mesmo tipo de erro, o programa carrega no arduíno porém no esp32 ainda não consegui, estou pensando em carregar no arduino e enviar para o esp via rx tx.
			
									
									
						Re: Utilizar MAX6675 com ESP32 lora
Problema na compatibilidade da biblioteca, vc vai precisar editar a biblioteca ou usar essa biblioteca aqui do esp32learning
http://www.esp32learning.com/code/esp32 ... xample.php
coloquei em anexo também
			
									
									
						http://www.esp32learning.com/code/esp32 ... xample.php
coloquei em anexo também
