Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
Sveiki, Sveiki.. !!
Aš (Somanshu Choudhary) „Dcube tech“įmonių, ketinančių matuoti temperatūrą, naudodamas „Arduino nano“, vardu, yra viena iš I2C protokolo programų, skirtų skaityti analoginius temperatūros jutiklio TMP-112 duomenis.
1 žingsnis: apžvalga
- TMP-112 yra temperatūros jutiklis.
- DUOMENŲ LAPAS Nuoroda:
2 žingsnis: ko jums reikia / nuorodos
- Arduino Nano
- „I²C“skydas „Arduino Nano“
- USB kabelis nuo A tipo iki mikro tipo B 6 pėdų ilgio
- I²C kabelis
- TMP112 I²C temperatūros jutiklis ±.5 ° C 12 bitų I²C mini modulis
3 žingsnis: grandinės schema
4 žingsnis: programavimas
#įtraukti
negaliojanti sąranka ()
{
// TMP112 I2C adresas
#define TMP_ADDR 0x48
// Prisijunkite prie „I2c Bus“kaip pagrindinis
Wire.begin ();
// Pradėti serijinį ryšį
Serial.begin (9600);
// Pradėti perdavimą
Wire.beginTransmission (TMP_ADDR);
// Pasirinkite ĮJUNGTI registrą
Wire.write (0x01);
// Pasirinkite įprastą veikimą
Wire.write (0x60A0);
// Baigti perdavimą ir atleisti I2C magistralę
Wire.endTransmission ();
}
tuštumos kilpa ()
{
// Pradėti perdavimą
Wire.beginTransmission (TMP_ADDR);
// Pasirinkite duomenų registrus
Wire.write (0X00);
// Baigti perdavimą
Wire.endTransmission ();
vėlavimas (500);
// Prašykite 2 baitų, pirmiausia Msb
Wire.requestFrom (TMP_ADDR, 2);
// Perskaitykite du baitus
o (Wire.available ())
{
// išvežti šiukšles
Serial.flush ();
int msb = Wire.read ();
int lsb = Wire.read ();
Wire.endTransmission ();
// Duomenų konvertavimas neapdorotomis vertėmis
int rawtmp = msb << 8 | lsb;
int vertė = rawtmp >> 4;
dvigubas ans = vertė * 0,0625;
// Spausdinimo išvestis
Serial.print ("Celsijaus reikšmė:");
Serial.println (ans);
}
}
5 veiksmas:
Aš padariau viską, ką padariau tu;-)
Dėl papildomų klausimų nedvejodami apsilankykite mūsų svetainėje:
www.dcubetechnologies.com