2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
Digitálny snímač teploty STS21 ponúka vynikajúci výkon a priestorovo úspornú stopu. Poskytuje kalibrované linearizované signály v digitálnom formáte I2C. Výroba tohto senzora je založená na technológii CMOSens, ktorá sa pripisuje vynikajúcemu výkonu a spoľahlivosti STS21. Rozlíšenie STS21 je možné zmeniť príkazom, je možné zistiť vybitie batérie a kontrolný súčet pomáha zlepšiť spoľahlivosť komunikácie. Tu je ukážka jeho prepojenia s Arduino nano.
Krok 1: Čo potrebujete.. !
1. Arduino Nano
2. STS21
3. Kábel I²C
4. I²C štít pre Arduino Nano
Krok 2: Pripojenie:
Vezmite štít I2C pre Arduino Nano a jemne ho zatlačte cez kolíky Nano.
Potom pripojte jeden koniec kábla I2C k senzoru STS21 a druhý koniec k štítu I2C.
Pripojenia sú znázornené na obrázku vyššie.
Krok 3: Kód:
Kód Arduino pre STS21 je možné stiahnuť z nášho úložiska GitHub-Dcube Store.
Tu je odkaz na to isté:
github.com/DcubeTechVentures/STS21…
Ponúkame knižnicu Wire.h na uľahčenie komunikácie senzora I2c s doskou Arduino.
Odtiaľto môžete tiež skopírovať kód, ktorý je nasledujúci:
// Distribuované s licenciou slobodnej vôle.
// Používajte ho akýmkoľvek spôsobom chcete, so ziskom alebo zadarmo, za predpokladu, že sa zmestí do licencií k ním pridruženým dielam.
// STS21
// Tento kód je navrhnutý tak, aby fungoval s mini modulom STS21_I2CS I2C dostupným v obchode Dcube Store.
#zahrnúť
// Adresa STS21 I2C je 0x4A (74)
#define addr 0x4A
neplatné nastavenie ()
{
// Inicializujte komunikáciu I2C ako MASTER
Wire.begin ();
// Spustite sériovú komunikáciu, nastavte prenosovú rýchlosť = 9600
Serial.begin (9600);
oneskorenie (300);
}
prázdna slučka ()
{
int data bez znamienka [2];
// Spustite prenos I2C
Wire.beginTransmission (addr);
// Vyberte bez podržania predlohy
Wire.write (0xF3);
// Koniec prenosu I2C
Wire.endTransmission ();
oneskorenie (300);
// Požiadajte o 2 bajty údajov
Wire.requestFrom (addr, 2);
// Prečítajte 2 bajty údajov
ak (Wire.available () == 2)
{
data [0] = Wire.read ();
údaje [1] = Wire.read ();
}
// Previesť údaje
int rawtmp = údaje [0] * 256 + údaje [1];
int hodnota = rawtmp & 0xFFFC;
dvojnásobok cTemp = -46,85 + (175,72 * (hodnota / 65536,0));
dvojnásobok fTemp = cTemp * 1,8 + 32;
// Výstup údajov na sériový monitor
Serial.print ("Teplota v stupňoch Celzia:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Teplota vo Fahrenheite:");
Serial.print (fTemp);
Serial.println ("F");
oneskorenie (300);
}
Krok 4: Aplikácie:
Digitálny snímač teploty STS21 je možné použiť v systémoch, ktoré vyžadujú vysoko presné monitorovanie teploty. Môže byť začlenený do rôznych počítačových zariadení, zdravotníckych zariadení a priemyselných riadiacich systémov s požiadavkou na meranie teploty s dostatočnou presnosťou.