2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
TMP100 yuqori aniqlik, kam quvvatli, raqamli harorat sensori I2C MINI moduli. TMP100 haroratni o'lchash uchun ideal. Bu qurilma kalibrlashni yoki tashqi komponent signal signalizatsiyasini talab qilmasdan ± 1 ° C aniqlikni taqdim etadi. Bu erda Arduino Nano bilan namoyish.
1 -qadam: Sizga nima kerak.. !
1. Arduino Nano
2. TMP100
3. I²C kabeli
4. Arduino Nano uchun I²C qalqoni
2 -qadam: Ulanish:
Arduino Nano uchun I2C qalqonini oling va uni muloyimlik bilan Nano pinlariga suring.
Keyin I2C kabelining bir uchini TMP100 sensoriga, ikkinchi uchini esa I2C ekraniga ulang.
Ulanishlar yuqoridagi rasmda ko'rsatilgan.
3 -qadam: Kod:
TMP100 uchun Arduino kodini bizning GitHub omboridan-Dcube do'konidan yuklab olish mumkin
Mana shu havola:
github.com/DcubeTechVentures/TMP100..
Sensorning Arduino platasi bilan I2c aloqasini osonlashtirish uchun biz Wire.h kutubxonasini o'z ichiga olamiz.
Siz bu erdan kodni nusxalashingiz mumkin, u quyidagicha berilgan:
// Ixtiyoriy litsenziya bilan tarqatilgan.
// Agar xohlasangiz, foyda yoki tekin ishlating, agar u tegishli asarlar litsenziyalariga mos kelsa.
// TMP100
// Bu kod Dcube do'konida mavjud bo'lgan TMP100_I2CS I2C Mini moduli bilan ishlash uchun mo'ljallangan.
#qo'shing
// TMP100 I2C manzili - 0x4F (79)
#Adr 0x4F ni aniqlang
bo'sh o'rnatish ()
{
// I2C aloqasini MASTER sifatida boshlang
Wire.begin ();
// Serial aloqani ishga tushiring, bod tezligi = 9600
Serial.begin (9600);
// I2C uzatishni boshlang
Wire.beginTransmission (Addr);
// Konfiguratsiya registrini tanlang
Wire.write (0x01);
// Uzluksiz konvertatsiyani, taqqoslash rejimini, 12 bitli aniqlikni o'rnating
Wire.write (0x60);
// I2C uzatishni to'xtating
Wire.endTransmission ();
kechikish (300);
}
bo'sh halqa ()
{
imzosiz int ma'lumotlari [2];
// I2C uzatishni boshlang
Wire.beginTransmission (Addr);
// Ma'lumotlar reestrini tanlang
Wire.write (0x00);
// I2C uzatishni to'xtating
Wire.endTransmission ();
// 2 bayt ma'lumotni so'rang
Wire.requestFrom (Addr, 2);
// 2 bayt ma'lumotni o'qing
// cTemp msb, cTemp lsb
agar (Wire.available () == 2)
{
ma'lumotlar [0] = Wire.read ();
ma'lumotlar [1] = Wire.read ();
}
// Ma'lumotni aylantirish
float cTemp = (((ma'lumotlar [0] * 256) + (ma'lumotlar [1] & 0xF0)) / 16) * 0.0625;
float fTemp = cTemp * 1.8 + 32;
// Ma'lumotlarni ketma -ket monitorga chiqarish
Serial.print ("Selsiy bo'yicha harorat:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Farengeytdagi harorat:");
Serial.print (fTemp);
Serial.println ("F");
kechikish (500);
}
4 -qadam: Ilovalar:
TMP100 past quvvatli, yuqori aniqlikdagi raqamli harorat sensori o'z ichiga olgan turli xil ilovalarga quvvat manbai harorati monitoringi, kompyuter atrofidagi termal himoya, batareyani boshqarish, shuningdek ofis mashinalari kiradi.