2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
TMP100 Moduł cyfrowego czujnika temperatury I2C MINI o wysokiej dokładności i niskim poborze mocy. TMP100 jest idealny do rozszerzonego pomiaru temperatury. To urządzenie zapewnia dokładność ±1°C bez konieczności kalibracji lub kondycjonowania sygnału komponentu zewnętrznego. Oto demonstracja z Arduino Nano.
Krok 1: Czego potrzebujesz.
1. Arduino Nano
2. TMP100
3. Kabel I²C
4. Tarcza I²C dla Arduino Nano
Krok 2: Połączenie:
Weź nakładkę I2C dla Arduino Nano i delikatnie wepchnij ją na piny Nano.
Następnie podłącz jeden koniec kabla I2C do czujnika TMP100, a drugi koniec do ekranu I2C.
Połączenia prezentuje powyższy obrazek.
Krok 3: Kod:
Kod Arduino dla TMP100 można pobrać z naszego repozytorium GitHub-Dcube Store
Oto link do tego samego:
github.com/DcubeTechVentures/TMP100..
Dołączamy bibliotekę Wire.h ułatwiającą komunikację I2c czujnika z płytką Arduino.
Możesz również skopiować kod stąd, jest on podany w następujący sposób:
// Rozprowadzane z wolną licencją.
// Używaj go w dowolny sposób, z zyskiem lub za darmo, pod warunkiem, że pasuje do licencji powiązanych z nim dzieł.
// TMP100
// Ten kod jest przeznaczony do współpracy z modułem TMP100_I2CS I2C Mini dostępnym w sklepie Dcube Store.
#włączać
// adres TMP100 I2C to 0x4F(79)
#define Addr 0x4F
pusta konfiguracja()
{
// Zainicjuj komunikację I2C jako MASTER
Wire.początek();
// Zainicjuj komunikację szeregową, ustaw szybkość transmisji = 9600
Serial.początek(9600);
// Rozpocznij transmisję I2C
Wire.beginTransmisja(Addr);
// Wybierz rejestr konfiguracji
Wire.write(0x01);
// Ustaw konwersję ciągłą, tryb komparatora, rozdzielczość 12-bitową
Wire.write(0x60);
// Zatrzymaj transmisję I2C
Wire.endTransmission();
opóźnienie(300);
}
pusta pętla()
{
dane int bez znaku[2];
// Rozpocznij transmisję I2C
Wire.beginTransmisja(Addr);
// Wybierz rejestr danych
Wire.write(0x00);
// Zatrzymaj transmisję I2C
Wire.endTransmission();
// Poproś o 2 bajty danych
Wire.requestFrom(Addr, 2);
// Odczytaj 2 bajty danych
// cTemp msb, cTemp lsb
if(Przewód.dostępny() == 2)
{
dane[0] = Przewód.odczyt();
dane[1] = Drut.odczyt();
}
// Konwertuj dane
float cTemp = (((dane[0] * 256) + (dane[1] & 0xF0)) / 16) * 0,0625;
pływak fTemp = cTemp * 1,8 + 32;
// Dane wyjściowe do monitora szeregowego
Serial.print("Temperatura w stopniach Celsjusza: ");
druk.seryjny(cTemp);
Serial.println("C");
Serial.print("Temperatura w stopniach Fahrenheita: ");
Serial.print(fTemp);
Serial.println(" F");
opóźnienie (500);
}
Krok 4: Aplikacje:
Różne aplikacje wykorzystujące cyfrowy czujnik temperatury TMP100 o niskim poborze mocy i wysokiej dokładności obejmują monitorowanie temperatury zasilania, ochronę termiczną urządzeń peryferyjnych komputera, zarządzanie baterią, a także urządzenia biurowe.