Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
LM75BIMM - termal qo'riqchi bilan jihozlangan raqamli harorat sensori va uning 400 kGts gacha ishlashini qo'llab -quvvatlaydigan ikkita simli interfeysga ega. Bu dasturlashtiriladigan chegara va hysteris bilan yuqori haroratga ega.
Ushbu qo'llanmada LM75BIMM sensor modulining arduino nano bilan o'zaro aloqasi tasvirlangan. Harorat qiymatlarini o'qish uchun I2c adapterli arduino ishlatilgan, bu I2C adapteri sensor moduliga ulanishni oson va ishonchli qiladi.
1 -qadam: Uskuna kerak:
Maqsadga erishish uchun bizga kerak bo'lgan materiallar quyidagi apparat komponentlarini o'z ichiga oladi:
1. LM75BIMM
2. Arduino Nano
3. I2C kabeli
4. Arduino nano uchun I2C qalqoni
2 -qadam: Uskuna ulanishi:
Uskuna ulanish bo'limi asosan sensor va arduino nano o'rtasida zarur bo'lgan simi ulanishlarini tushuntiradi. To'g'ri ulanishni ta'minlash har qanday tizimda kerakli chiqish uchun ishlashning asosiy zarurati hisoblanadi. Shunday qilib, kerakli ulanishlar quyidagilar:
LM75BIMM I2C ustida ishlaydi. Sensorning har bir interfeysini qanday ulash kerakligini ko'rsatadigan simlar sxemasi.
Qutidan tashqari, taxta I2C interfeysi uchun tuzilgan, shuning uchun agar siz agnostik bo'lsangiz, biz ushbu ulanishni ishlatishni maslahat beramiz.
Sizga faqat to'rtta sim kerak! Vcc, Gnd, SCL va SDA pinlari uchun faqat to'rtta ulanish kerak va ular I2C kabeli yordamida ulangan.
Bu ulanishlar yuqoridagi rasmlarda ko'rsatilgan.
3 -qadam: Haroratni o'lchash kodi:
Endi arduino kodidan boshlaylik.
Sensor modulini arduino bilan ishlatganda, biz Wire.h kutubxonasini o'z ichiga olamiz. "Wire" kutubxonasida sensorlar va arduino kartalari o'rtasida i2c aloqasini osonlashtiradigan funktsiyalar mavjud.
Foydalanuvchining qulayligi uchun butun arduino kodi quyida keltirilgan:
#qo'shing
// LM75BIMM I2C manzili - 0x49 (73)
#aniqlang Addr 0x49
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 ishlash, normal ishlash
Wire.write (0x00);
// I2C uzatishni to'xtating
Wire.endTransmission ();
kechikish (300);
}
bo'sh halqa ()
{
imzosiz int ma'lumotlari [2];
// I2C uzatishni boshlang
Wire.beginTransmission (Addr);
// Harorat ma'lumotlari registrini 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
// temp msb, temp lsb
agar (Wire.available () == 2)
{
ma'lumotlar [0] = Wire.read ();
ma'lumotlar [1] = Wire.read ();
}
// Ma'lumotni 9 bitga aylantiring
int temp = (ma'lumotlar [0] * 256 + (ma'lumotlar [1] & 0x80)) / 128;
agar (harorat> 255)
{
harorat -512;
}
float cTemp = temp * 0,5;
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 (1000);
}
Tel kutubxonasida Wire.write () va Wire.read () buyruqlarni yozish va sensor chiqishini o'qish uchun ishlatiladi.
Arduino IDE seriyali monitorida sensorning chiqishini ko'rsatish uchun Serial.print () va Serial.println () ishlatiladi.
Sensorning chiqishi yuqoridagi rasmda ko'rsatilgan.
4 -qadam: Ilovalar:
LM75BIMM bazaviy stantsiyalar, elektron sinov uskunalari, ofis elektronikasi, shaxsiy kompyuterlar yoki haroratni nazorat qilish ishlashi uchun muhim bo'lgan boshqa tizimlarni o'z ichiga olgan bir qator ilovalar uchun ideal. Shuning uchun, bu sensor juda yuqori haroratga sezgir tizimlarning ko'pchiligida hal qiluvchi rol o'ynaydi.