Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
STS21 skaitmeninis temperatūros jutiklis pasižymi puikiu našumu ir taupo vietą. Jis teikia kalibruotus, linijinius signalus skaitmeniniu I2C formatu. Šio jutiklio gamyba grindžiama CMOSens technologija, kuri priskiriama puikiam STS21 veikimui ir patikimumui. STS21 skiriamąją gebą galima pakeisti komandomis, galima nustatyti išsikrovusią bateriją, o kontrolinė suma padeda pagerinti ryšio patikimumą. Čia parodomas jo sąsajos su „Arduino nano“demonstravimas.
1 žingsnis: ko jums reikia..
1. „Arduino Nano“
2. STS21
3. I²C kabelis
4. „I²C Shield“, skirtas „Arduino Nano“
2 veiksmas: prijungimas:
Paimkite „Arduino Nano“I2C skydą ir švelniai stumkite jį per „Nano“kaiščius.
Tada vieną I2C kabelio galą prijunkite prie STS21 jutiklio, o kitą - prie I2C skydo.
Sujungimai parodyti aukščiau esančiame paveikslėlyje.
3 žingsnis: kodas:
STS21 „Arduino“kodą galite atsisiųsti iš mūsų „GitHub“saugyklos-„Dcube“parduotuvės.
Čia yra nuoroda į tą patį:
github.com/DcubeTechVentures/STS21…
Įtraukiame „Wire.h“biblioteką, kad palengvintume jutiklio I2c ryšį su „Arduino“plokšte.
Taip pat galite nukopijuoti kodą iš čia, jis pateikiamas taip:
// Platinama su laisvos valios licencija.
// Naudokite bet kokiu būdu, pelningai ar nemokamai, jei jis atitinka susijusių darbų licencijas.
// STS21
// Šis kodas skirtas dirbti su „STC21_I2CS I2C Mini“moduliu, kurį galima įsigyti „Dcube Store“.
#įtraukti
// STS21 I2C adresas yra 0x4A (74)
#define addr 0x4A
negaliojanti sąranka ()
{
// Inicijuoti I2C komunikaciją kaip MASTER
Wire.begin ();
// Pradėkite nuoseklųjį ryšį, nustatykite duomenų perdavimo spartą = 9600
Serial.begin (9600);
vėlavimas (300);
}
tuštumos kilpa ()
{
nepasirašyti int duomenys [2];
// Pradėti I2C perdavimą
Wire.beginTransmission (addr);
// Pasirinkite nelaikymo šabloną
Wire.write (0xF3);
// Baigti I2C perdavimą
Wire.endTransmission ();
vėlavimas (300);
// Prašyti 2 baitų duomenų
Wire.requestFrom (addr, 2);
// Skaityti 2 baitus duomenų
jei (Wire.available () == 2)
{
duomenys [0] = Wire.read ();
duomenys [1] = Wire.read ();
}
// Konvertuoti duomenis
int rawtmp = duomenys [0] * 256 + duomenys [1];
int vertė = rawtmp & 0xFFFC;
dvigubas cTemp = -46,85 + (175,72 * (vertė / 65536,0));
dvigubas fTemp = cTemp * 1,8 + 32;
// Duomenų išvedimas į serijinį monitorių
Serial.print ("Temperatūra Celsijaus laipsniais:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Temperatūra Farenheitu:");
Serial.print (fTemp);
Serial.println ("F");
vėlavimas (300);
}
4 žingsnis: programos:
STS21 skaitmeninis temperatūros jutiklis gali būti naudojamas sistemose, kuriose reikia didelio tikslumo temperatūros stebėjimo. Jis gali būti integruotas į įvairią kompiuterinę įrangą, medicinos įrangą ir pramonines valdymo sistemas, reikalaujant tiksliai išmatuoti temperatūrą.