Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
Buna ziua, Salutari bune.. !!
I (Somanshu Choudhary), în numele Dcube, se aventurează să măsoare temperatura folosind Arduino nano, este una dintre aplicațiile protocolului I2C să citească datele analogice ale senzorului de temperatură TMP-112.
Pasul 1: Prezentare generală
- TMP-112 este un senzor de temperatură.
- Fișă tehnică Link:
Pasul 2: De ce aveți nevoie / linkuri
- Arduino Nano
- Scut I²C pentru Arduino Nano
- Cablu USB de tip A la Micro tip B lung de 6 picioare
- Cablu I²C
- TMP112 Senzor de temperatură I²C ±.5 ° C Mini-modul I²C pe 12 biți
Pasul 3: Diagrama circuitului
Pasul 4: Programare
#include
configurare nulă ()
{
// Adresa I2C a TMP112
#define TMP_ADDR 0x48
// Alăturați-vă I2c Bus ca master
Wire.begin ();
// Începeți comunicarea în serie
Serial.begin (9600);
// Începeți transmisia
Wire.beginTransmission (TMP_ADDR);
// Selectați ENABLE register
Wire.write (0x01);
// Selectați funcționarea normală
Wire.write (0x60A0);
// Încheiați transmisia și eliberați magistrala I2C
Wire.endTransmission ();
}
bucla nulă ()
{
// Începeți transmisia
Wire.beginTransmission (TMP_ADDR);
// Selectați Registrele de date
Wire.write (0X00);
// Încheie transmisia
Wire.endTransmission ();
întârziere (500);
// Solicitați 2 octeți, mai întâi Msb
Wire.requestFrom (TMP_ADDR, 2);
// Citiți cei doi octeți
while (Wire.available ())
{
// scoate gunoiul
Serial.flush ();
int msb = Wire.read ();
int lsb = Wire.read ();
Wire.endTransmission ();
// Conversia datelor în valori brute
int rawtmp = msb << 8 | lsb;
valoare int = rawtmp >> 4;
ans dublu = valoare * 0,0625;
// Imprimare
Serial.print ("valoare celsius:");
Serial.println (ans);
}
}
Pasul 5:
Am făcut tot posibilul să-l faci pe al tău;-)
Pentru întrebări suplimentare Simțiți-vă liber să vizitați site-ul nostru:
www.dcubetechnologies.com