Hola, alguien que me pueda ayudar, por favor. Compré un termopar tipo K de -60°C a 1250°C. Al hacer la conexión del módulo MAX6675 con el ArduinoMega, este arroja valores de 0°C.
Espero y me puedan aconsejar.
Anexo el código y una foto de la conexión.
#include <SPI.h>
// Definir los pines para la comunicación SPI con el MAX6675
#define MAX6675_SCK 52
#define MAX6675_CS 53
#define MAX6675_SO 50
void setup() {
Serial.begin(9600); // Inicializar la comunicación serial
// Configurar los pines para la comunicación SPI
pinMode(MAX6675_CS, OUTPUT);
pinMode(MAX6675_SO, INPUT);
pinMode(MAX6675_SCK, OUTPUT);
// Configurar el pin de selección de chip (CS) en alto por defecto
digitalWrite(MAX6675_CS, HIGH);
}
void loop() {
// Leer la temperatura del termopar
float temperatura = leerTermopar();
// Imprimir la temperatura en el Monitor Serie
Serial.print("Temperatura: ");
Serial.print(temperatura);
Serial.println(" °C");
delay(1000); // Esperar 1 segundo antes de la próxima lectura
}
float leerTermopar() {
digitalWrite(MAX6675_CS, LOW); // Habilitar la lectura de datos
delay(1); // Esperar un breve momento para que el MAX6675 se prepare para enviar datos
// Leer los datos del termopar
int dato = 0;
for (int i = 14; i >= 0; i--) {
digitalWrite(MAX6675_SCK, LOW); // Iniciar la conversión
delayMicroseconds(1);
digitalWrite(MAX6675_SCK, HIGH); // Hacer un pulso de reloj
delayMicroseconds(1);
bitWrite(dato, i, digitalRead(MAX6675_SO)); // Leer el bit y almacenarlo en la variable 'dato'
}
digitalWrite(MAX6675_CS, HIGH); // Deshabilitar la lectura de datos
// Comprobar si hay un error de conexión
if (bitRead(dato, 2)) {
Serial.println("Error: Termopar desconectado");
return NAN; // Devolver un valor no numérico (NaN)
}
// Descartar los bits irrelevantes (los bits 0 y 1)
dato >>= 3;
// Convertir los datos a temperatura (cada cuenta representa 0.25 grados Celsius)
float temperatura = dato * 0.25;
return temperatura;
}
psdt:
- El cable morado es el SO -> 50
- El cable azul es el CS -> 53
- El cable verde es el CLK ->52
- El cable blanco es el Gnd
- El cable gris es el 5V



