2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
TCN75A-ikki simli ketma-ket harorat sensori, harorat-raqamli konvertor bilan jihozlangan. U haroratni sezish uchun moslashuvchanlikni ta'minlaydigan foydalanuvchi dasturlashtiriladigan registrlari bilan birlashtirilgan. Ro'yxatdan o'tish sozlamalari foydalanuvchilarga quvvatni tejash rejimini, o'chirish rejimini, bitta tortishish rejimini va boshqalarni sozlash imkonini beradi. Sensor i2c mos keluvchi ketma -ket interfeysga ega, bu bitta ketma -ket avtobusda sakkiztagacha qurilmani ulashni osonlashtiradi. Mana, uning arduino nano bilan namoyishi.
1 -qadam: Sizga nima kerak.. !
1. Arduino Nano
2. TCN75A
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 TCN75A sensoriga, ikkinchi uchini esa I2C ekraniga ulang.
Ulanishlar yuqoridagi rasmda ko'rsatilgan.
3 -qadam: Kod:
TCN75A uchun Arduino kodini bizning Github omboridan-DCUBE do'konidan yuklab olish mumkin.
Mana shu havola:
github.com/DcubeTechVentures/TCN75A/blob/master/Arduino/TCN75A.ino
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.
// TCN75A
// Bu kod TCN75A_I2CS I2C Mini moduli bilan ishlash uchun mo'ljallangan
#qo'shing
// TCN75A I2C manzili - 0x48 (72)
#aniqlang Addr 0x48
bo'sh o'rnatish ()
{
// I2C muloqotini usta sifatida boshlang
Wire.begin ();
// Seriyali aloqani ishga tushiring, bod tezligi = 9600 ni o'rnating
Serial.begin (9600);
// I2C uzatishni boshlang
Wire.beginTransmission (Addr);
// Konfiguratsiya registrini tanlang
Wire.write (0x01);
// 12 bitli ADC o'lchamlari
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
// temp msb, temp lsb
agar (Wire.available () == 2)
{
ma'lumotlar [0] = Wire.read ();
ma'lumotlar [1] = Wire.read ();
}
// Ma'lumotni 12 bitga aylantiring
int temp = (((ma'lumotlar [0] * 256) + (ma'lumotlar [1] & 0xF0)) / 16);
agar (harorat> 2047)
{
harorat -= 4096;
}
float cTemp = temp * 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 (1000);
}
4 -qadam: Ilovalar:
TCN75A - bu shaxsiy kompyuterlar va serverlarda ishlatilishi mumkin bo'lgan harorat sensori, uni ko'ngilochar tizimlar, ofis uskunalari, hars -disklar va boshqa shaxsiy kompyuter qurilmalarida ham ishlatish mumkin.