Tabla de contenido:
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-13 06:57
El sensor de temperatura digital STS21 ofrece un rendimiento superior y ocupa poco espacio. Proporciona señales calibradas y linealizadas en formato digital I2C. La fabricación de este sensor se basa en la tecnología CMOSens, que se atribuye al rendimiento superior y la fiabilidad del STS21. La resolución de STS21 se puede cambiar mediante un comando, se puede detectar batería baja y una suma de verificación ayuda a mejorar la confiabilidad de la comunicación. Aquí está su demostración de cómo interactuar con Arduino nano.
Paso 1: ¡¡Lo que necesitas …
1. Arduino Nano
2. STS21
3. Cable I²C
4. Escudo I²C para Arduino Nano
Paso 2: Conexión:
Tome un protector I2C para Arduino Nano y empújelo suavemente sobre los pines de Nano.
Luego, conecte un extremo del cable I2C al sensor STS21 y el otro extremo al blindaje I2C.
Las conexiones se muestran en la imagen de arriba.
Paso 3: Código:
El código Arduino para STS21 se puede descargar desde nuestro repositorio GitHub-Dcube Store.
Aquí está el enlace para el mismo:
github.com/DcubeTechVentures/STS21…
Incluimos biblioteca Wire.h para facilitar la comunicación I2c del sensor con la placa Arduino.
También puede copiar el código desde aquí, se proporciona de la siguiente manera:
// Distribuido con licencia de libre albedrío.
// Úselo de la forma que desee, lucrativa o gratuita, siempre que encaje en las licencias de sus obras asociadas.
// STS21
// Este código está diseñado para funcionar con el Mini Módulo STS21_I2CS I2C disponible en Dcube Store.
#incluir
// La dirección STS21 I2C es 0x4A (74)
#define addr 0x4A
configuración vacía ()
{
// Inicializar la comunicación I2C como MASTER
Wire.begin ();
// Inicie la comunicación en serie, establezca la velocidad en baudios = 9600
Serial.begin (9600);
retraso (300);
}
bucle vacío ()
{
datos int sin firmar [2];
// Iniciar transmisión I2C
Wire.beginTransmission (dirección);
// Seleccionar maestro sin retención
Wire.write (0xF3);
// Fin de la transmisión I2C
Wire.endTransmission ();
retraso (300);
// Solicita 2 bytes de datos
Wire.requestFrom (dirección, 2);
// Leer 2 bytes de datos
if (Cable disponible () == 2)
{
datos [0] = Wire.read ();
datos [1] = Wire.read ();
}
// Convertir los datos
int rawtmp = datos [0] * 256 + datos [1];
valor int = rawtmp & 0xFFFC;
cTemp doble = -46,85 + (175,72 * (valor / 65536,0));
fTemp doble = cTemp * 1.8 + 32;
// Salida de datos al monitor en serie
Serial.print ("Temperatura en grados Celsius:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Temperatura en Fahrenheit:");
Serial.print (fTemp);
Serial.println ("F");
retraso (300);
}
Paso 4: Aplicaciones:
El sensor de temperatura digital STS21 se puede utilizar en sistemas que requieren un control de temperatura de alta precisión. Se puede incorporar en varios equipos informáticos, equipos médicos y sistemas de control industrial con el requisito de medir la temperatura con una precisión competente.