2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
TMP100 Yüksək Dəqiqlik, Aşağı Güc, Rəqəmsal Temperatur Sensoru I2C MINI modulu. TMP100 uzun temperatur ölçülməsi üçün idealdır. Bu cihaz, kalibrləmə və ya xarici komponent siqnal kondisioneri tələb etmədən ± 1 ° C dəqiqlik təqdim edir. Budur Arduino Nano ilə nümayiş.
Addım 1: Nə Lazımdır..
1. Arduino Nano
2. TMP100
3. I²C Kabel
4. Arduino Nano üçün I²C Shield
Addım 2: Bağlantı:
Arduino Nano üçün bir I2C qalxanı götürün və Nanonun sancaqlarından yumşaq bir şəkildə itələyin.
Sonra I2C kabelinin bir ucunu TMP100 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:
TMP100 üçün Arduino kodu GitHub depomuzdan-Dcube Mağazamızdan yükləyə bilərsiniz
İşdə bunun üçün bağlantı:
github.com/DcubeTechVentures/TMP100..
Sensorun Arduino lövhəsi ilə I2c əlaqəsini asanlaşdırmaq üçün Wire.h kitabxanasına daxildir.
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.
// TMP100
// Bu kod Dcube Store -da mövcud olan TMP100_I2CS I2C Mini Modulu ilə işləmək üçün hazırlanmışdır.
#daxil edin
// TMP100 I2C ünvanı 0x4F (79)
#Addr 0x4F təyin edin
boş quraşdırma ()
{
// I2C ünsiyyətini MASTER olaraq başladın
Wire.begin ();
// Serial rabitəni işə salın, baud dərəcəsini = 9600 olaraq təyin edin
Serial.begin (9600);
// I2C ötürülməsinə başlayın
Wire.beginTransmission (Addr);
// Konfiqurasiya qeydini seçin
Wire.write (0x01);
// Davamlı çevrilmə, müqayisə rejimi, 12 bitlik qətnamə təyin edin
Wire.write (0x60);
// I2C ötürülməsini dayandırın
Wire.endTransmission ();
gecikmə (300);
}
boşluq döngəsi ()
{
imzasız int məlumatları [2];
// I2C ötürülməsinə başlayın
Wire.beginTransmission (Addr);
// Məlumat qeydini seçin
Wire.write (0x00);
// I2C ötürülməsini dayandırın
Wire.endTransmission ();
// 2 bayt məlumat tələb edin
Wire.requestFrom (Addr, 2);
// 2 bayt məlumat oxuyun
// cTemp msb, cTemp lsb
əgər (Tel.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
// Məlumatları çevirin
float cTemp = (((data [0] * 256) + (data [1] & 0xF0)) / 16) * 0.0625;
float fTemp = cTemp * 1.8 + 32;
// Məlumatların serial monitora çıxarılması
Serial.print ("Selsi temperaturu:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Fahrenheitdəki temperatur:");
Serial.print (fTemp);
Serial.println ("F");
gecikmə (500);
}
Addım 4: Tətbiqlər:
TMP100 aşağı gücü, yüksək dəqiqlikli rəqəmsal temperatur sensörünü özündə cəmləşdirən müxtəlif tətbiqlər arasında Güc Təchizatı İstiliyinin Monitorinqi, Kompüterin Periferik Termal Qorunması, Batareya İdarəçiliyi və ofis maşınları var.