2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
TCN75A este un senzor de temperatură serial cu două fire încorporat cu convertor de temperatură în digital. Este încorporat cu registre programabile de utilizator care oferă flexibilitate pentru aplicațiile de detectare a temperaturii. Setările de înregistrare permit utilizatorilor să configureze modul de economisire a energiei, modul de oprire, modul de fotografiere etc. Senzorul are o interfață serială compatibilă i2c care poate facilita conectarea a până la opt dispozitive într-o singură magistrală serială. Iată demonstrația sa cu arduino nano.
Pasul 1: De ce ai nevoie..
1. Arduino Nano
2. TCN75A
3. Cablu I²C
4. Scut I²C pentru Arduino Nano
Pasul 2: Conexiune:
Luați un scut I2C pentru Arduino Nano și împingeți-l ușor peste pinii Nano.
Apoi conectați capătul cablului I2C la senzorul TCN75A și celălalt capăt la ecranul I2C.
Conexiunile sunt afișate în imaginea de mai sus.
Pasul 3: Cod:
Codul Arduino pentru TCN75A poate fi descărcat din depozitul nostru Github-Magazin DCUBE.
Iată linkul pentru același lucru:
github.com/DcubeTechVentures/TCN75A/blob/master/Arduino/TCN75A.ino
Includem biblioteca Wire.h pentru a facilita comunicarea I2c a senzorului cu placa Arduino. De asemenea, puteți copia codul de aici, acesta este dat după cum urmează:
// Distribuit cu o licență de liberă voință.
// Folosiți-l în orice mod doriți, profit sau gratuit, cu condiția să se încadreze în licențele lucrărilor sale asociate.
// TCN75A
// Acest cod este proiectat să funcționeze cu TCN75A_I2CS I2C Mini Module
#include
// Adresa TCN75A I2C este 0x48 (72)
#define Addr 0x48
configurare nulă ()
{
// Inițializați comunicarea I2C ca Master
Wire.begin ();
// Inițializați comunicarea serială, setați rata de transmisie = 9600
Serial.begin (9600);
// Porniți transmisia I2C
Wire.beginTransmission (Addr);
// Selectați registrul de configurare
Wire.write (0x01);
// Rezoluție ADC pe 12 biți
Wire.write (0x60);
// Opriți transmisia I2C
Wire.endTransmission ();
întârziere (300);
}
bucla nulă ()
{
date int nesemnate [2];
// Porniți transmisia I2C
Wire.beginTransmission (Addr);
// Selectați registrul de date
Wire.write (0x00);
// Opriți transmisia I2C
Wire.endTransmission ();
// Solicitați 2 octeți de date
Wire.requestFrom (Addr, 2);
// Citiți 2 octeți de date
// temp msb, temp lsb
if (Wire.available () == 2)
{
date [0] = Wire.read ();
date [1] = Wire.read ();
}
// Convertiți datele în 12 biți
int temp = (((date [0] * 256) + (date [1] & 0xF0)) / 16);
dacă (temp> 2047)
{
temp - = 4096;
}
float cTemp = temp * 0,0625;
float fTemp = (cTemp * 1,8) + 32;
// Ieșire date pe monitorul serial
Serial.print ("Temperatura în grade Celsius:");
Serial.print (cTemp); Serial.println ("C");
Serial.print ("Temperatura în Fahrenheit:");
Serial.print (fTemp);
Serial.println ("F");
întârziere (1000);
}
Pasul 4: Aplicații:
TCN75A este un senzor de temperatură care poate fi utilizat pe computere personale și servere. Poate fi implementat și în sisteme de divertisment, echipamente de birou, unități de disc hars și alte periferice pentru PC. Acest senzor își găsește și aplicația în echipamentele de comunicații de date.