2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
STS21 Rəqəmsal Temperatur Sensoru, üstün performans və yerdən qənaət edən ayaq izi təqdim edir. Rəqəmsal, I2C formatında kalibrlənmiş, xətti siqnallar verir. Bu sensorun istehsalı STS21 -in üstün performansı və etibarlılığı ilə əlaqəli CMOSens texnologiyasına əsaslanır. STS21 -in qətnaməsi əmrlə dəyişdirilə bilər, aşağı batareya aşkar edilə bilər və bir məbləğ əlaqə etibarlılığını artırmağa kömək edir. İşdə Particle Photon ilə qarşılıqlı əlaqəsinin nümayişidir.
Addım 1: Nə Lazımdır..
1. Foton hissəcikləri
2. STS21
3. I²C Kabel
4. Partikül Foton üçün I²C Qalxanı
Addım 2: Bağlantı:
Hissəcik fotonu üçün bir I2C qalxanı götürün və zərrəcik foton sancaqlarının üzərinə itələyin.
Sonra I2C kabelinin bir ucunu STS21 sensoruna, digər ucunu isə I2C ekranına bağlayın.
Bağlantılar yuxarıdakı şəkildə göstərilmişdir.
Addım 3: Kod:
STS21 üçün hissəcik kodunu GitHub depomuzdan- Dcube Mağazasından yükləyə bilərsiniz.
İşdə bunun üçün bağlantı:
github.com/DcubeTechVentures/STS21
Hissəcik kodu üçün application.h və spark_wiring_i2c.h olan iki kitabxanadan istifadə etdik. Sensorla I2C əlaqəsini asanlaşdırmaq üçün Spark_wiring_i2c kitabxanası lazımdır.
Kodu buradan da kopyalaya bilərsiniz, belə verilir:
// Azad iradə lisenziyası ilə paylanmışdır.
// İstənilən şəkildə, mənfəət və ya pulsuz istifadə edin, əlaqəli əsərlərinin lisenziyalarına uyğun gəlir.
// STS21
// Bu kod Dcube Store -da mövcud olan STS21_I2CS I2C Mini Modulu ilə işləmək üçün hazırlanmışdır.
#daxil edin
#daxil edin
// STS21 I2C ünvanı 0x4A (74)
#0x4A əlavə edin
float cTemp = 0.0;
boş quraşdırma ()
{
// Dəyişən təyin edin
Particle.variable ("i2cdevice", "STS21");
Particle.variable ("cTemp", cTemp);
// I2C ünsiyyətini MASTER olaraq başladın
Wire.begin ();
// Serial ünsiyyətə başlayın, baud dərəcəsini = 9600 olaraq təyin edin
Serial.begin (9600);
gecikmə (300);}
boşluq döngəsi ()
{
imzasız int məlumatları [2];
// I2C ötürülməsinə başlayın
Wire.beginTransmission (əlavə);
// Heç bir saxlama ustası seçin
Wire.write (0xF3);
// I2C Transmissiyasını bitirin
Wire.endTransmission ();
gecikmə (500);
// 2 bayt məlumat tələb edin
Wire.requestFrom (addr, 2);
// 2 bayt məlumat oxuyun
əgər (Tel.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
// Məlumatları çevirin
int rawtmp = data [0] * 256 + data [1];
int dəyəri = rawtmp & 0xFFFC;
cTemp = -46.85 + (175.72 * (dəyər / 65536.0));
float fTemp = cTemp * 1.8 + 32;
// Göstərişlər panelinə məlumat çıxarın
Particle.publish ("Selsi İstiliyi:", String (cTemp));
Particle.publish ("Fahrenheitdəki temperatur:", String (fTemp));
gecikmə (1000);
}
Addım 4: Tətbiqlər:
STS21 Rəqəmsal Temperatur Sensoru yüksək dəqiqlikdə temperatur monitorinqi tələb edən sistemlərdə işlədilə bilər. Müxtəlif kompüter avadanlıqlarına, tibbi cihazlara və sənaye nəzarət sistemlərinə yüksək dəqiqliklə temperaturun ölçülməsi şərti ilə daxil edilə bilər.