Mudanças entre as edições de "Sensores"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 10: Linha 10:
  
 
// Use software SPI: CS, DI, DO, CLK
 
// Use software SPI: CS, DI, DO, CLK
 +
 +
// Arduino Uno:
 
//Adafruit_MAX31856 maxthermo = Adafruit_MAX31856(10, 11, 12, 13);
 
//Adafruit_MAX31856 maxthermo = Adafruit_MAX31856(10, 11, 12, 13);
//Adafruit_MAX31856 maxthermo = Adafruit_MAX31856(15, 13, 12,14);
 
  
// use hardware SPI, just pass in the CS pin
+
//NODEMCU 1.0 ESP8266-12E:
 +
// MAX-31856 /  NODEMCU 1.0 ESP8266-12E
 +
//    CS    /  GPIO 10 - SD3
 +
//    SDI    /  GPIO 4  - D2
 +
//    SDO    /  GPIO 5  - D1
 +
//    SCK    /  GPIO 16 - D0
 +
//Adafruit_MAX31856 maxthermo = Adafruit_MAX31856(10,4,5,16);
 +
 
 +
// Use hardware SPI, just pass in the CS pin
 
// MAX-31856 /  NODEMCU 1.0 ESP8266-12E
 
// MAX-31856 /  NODEMCU 1.0 ESP8266-12E
 
//    CS    /  GPIO 15 - D8
 
//    CS    /  GPIO 15 - D8
Linha 19: Linha 28:
 
//    SDO    /  GPIO 12 - D6
 
//    SDO    /  GPIO 12 - D6
 
//    SCK    /  GPIO 14 - D5
 
//    SCK    /  GPIO 14 - D5
 
 
Adafruit_MAX31856 maxthermo = Adafruit_MAX31856(15);
 
Adafruit_MAX31856 maxthermo = Adafruit_MAX31856(15);
  

Edição das 14h41min de 3 de maio de 2020


Código

Código para teste do sensor MAX-31856 usando a placa NodeMCU 1.0 com chip esp8266-12E


#include <Adafruit_MAX31856.h>

// Use software SPI: CS, DI, DO, CLK

// Arduino Uno:
//Adafruit_MAX31856 maxthermo = Adafruit_MAX31856(10, 11, 12, 13);

//NODEMCU 1.0 ESP8266-12E:
// MAX-31856 /  NODEMCU 1.0 ESP8266-12E
//    CS     /  GPIO 10 - SD3
//    SDI    /  GPIO 4  - D2
//    SDO    /  GPIO 5  - D1
//    SCK    /  GPIO 16 - D0
//Adafruit_MAX31856 maxthermo = Adafruit_MAX31856(10,4,5,16);

// Use hardware SPI, just pass in the CS pin
// MAX-31856 /  NODEMCU 1.0 ESP8266-12E
//    CS     /  GPIO 15 - D8
//    SDI    /  GPIO 13 - D7
//    SDO    /  GPIO 12 - D6
//    SCK    /  GPIO 14 - D5
Adafruit_MAX31856 maxthermo = Adafruit_MAX31856(15);

void setup() {
  Serial.begin(115200);
  Serial.println("MAX31856 thermocouple test");

  maxthermo.begin();

  maxthermo.setThermocoupleType(MAX31856_TCTYPE_K);

  Serial.print("Thermocouple type: ");
  switch (maxthermo.getThermocoupleType() ) {
    case MAX31856_TCTYPE_B: Serial.println("B Type"); break;
    case MAX31856_TCTYPE_E: Serial.println("E Type"); break;
    case MAX31856_TCTYPE_J: Serial.println("J Type"); break;
    case MAX31856_TCTYPE_K: Serial.println("K Type"); break;
    case MAX31856_TCTYPE_N: Serial.println("N Type"); break;
    case MAX31856_TCTYPE_R: Serial.println("R Type"); break;
    case MAX31856_TCTYPE_S: Serial.println("S Type"); break;
    case MAX31856_TCTYPE_T: Serial.println("T Type"); break;
    case MAX31856_VMODE_G8: Serial.println("Voltage x8 Gain mode"); break;
    case MAX31856_VMODE_G32: Serial.println("Voltage x8 Gain mode"); break;
    default: Serial.println("Unknown"); break;
  }
}

void loop() {
  Serial.print("Cold Junction Temp: "); 
  Serial.println(maxthermo.readCJTemperature());

  Serial.print("Thermocouple Temp: ");
  Serial.println(maxthermo.readThermocoupleTemperature());
  // Check and print any faults
  uint8_t fault = maxthermo.readFault();
  if (fault) {
    if (fault & MAX31856_FAULT_CJRANGE) Serial.println("Cold Junction Range Fault");
    if (fault & MAX31856_FAULT_TCRANGE) Serial.println("Thermocouple Range Fault");
    if (fault & MAX31856_FAULT_CJHIGH)  Serial.println("Cold Junction High Fault");
    if (fault & MAX31856_FAULT_CJLOW)   Serial.println("Cold Junction Low Fault");
    if (fault & MAX31856_FAULT_TCHIGH)  Serial.println("Thermocouple High Fault");
    if (fault & MAX31856_FAULT_TCLOW)   Serial.println("Thermocouple Low Fault");
    if (fault & MAX31856_FAULT_OVUV)    Serial.println("Over/Under Voltage Fault");
    if (fault & MAX31856_FAULT_OPEN)    Serial.println("Thermocouple Open Fault");
  }
  delay(1000);
}