2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
TMP100 I2C MINI-module met hoë akkuraatheid, lae krag, digitale temperatuur sensor. Die TMP100 is ideaal vir uitgebreide temperatuurmeting. Hierdie toestel bied 'n akkuraatheid van ± 1 ° C sonder om kalibrasie of kondisionering van eksterne komponente te vereis. Hier is die demonstrasie met 'n java -kode met behulp van Raspberry Pi.
Stap 1: wat u nodig het..
1. Framboos Pi
2. TMP100
3. I²C -kabel
4. I²C -skild vir Framboos Pi
5. Ethernet -kabel
Stap 2: Verbinding:
Neem 'n I2C skild vir framboos pi en druk dit liggies oor die gpio penne van framboos pi.
Koppel dan die een kant van die I2C -kabel aan die TMP100 -sensor en die ander kant aan die I2C -skild.
Koppel ook die Ethernet -kabel aan die pi, of u kan 'n WiFi -module gebruik.
Verbindings word op die foto hierbo getoon.
Stap 3: Kode:
Die java-kode vir TMP100 kan afgelaai word vanaf ons GitHub-bewaarplek- Dcube Store.
Hier is die skakel vir dieselfde:
github.com/DcubeTechVentures/TMP100…
Ons het pi4j -biblioteek gebruik vir java -kode, die stappe om pi4j op framboos pi te installeer word hier beskryf:
pi4j.com/install.html
U kan die kode ook hiervandaan kopieer; dit word soos volg gegee:
// Versprei met 'n vrywillige lisensie.
// Gebruik dit op enige manier wat u wil, wins of gratis, mits dit in die lisensies van die gepaardgaande werke pas.
// TMP100
// Hierdie kode is ontwerp om te werk met die TMP100_I2CS I2C Mini Module wat beskikbaar is in Dcube Store.
invoer com.pi4j.io.i2c. I2CBus;
voer com.pi4j.io.i2c. I2CD -toestel in;
invoer com.pi4j.io.i2c. I2CFactory;
invoer java.io. IOException;
openbare klas TMP100
{
openbare statiese leegte hoof (String argumente ) gooi uitsondering
{
// Skep I2C -bus
I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1);
// Kry I2C -toestel, TMP100 I2C -adres is 0x4F (79)
I2CD -toestel = Bus.getDevice (0x4F);
// Kies konfigurasie register
// Deurlopende omskakeling, vergelykingsmodus, resolusie van 12 bis
device.write (0x01, (byte) 0x60);
Draad.slaap (500);
// Lees 2 grepe data
// temp msb, temp lsb
byte data = nuwe byte [2];
device.read (0x00, data, 0, 2);
// Skakel die data om na 12-bis
int temp = ((data [0] & 0xFF) * 256 + (data [1] & 0xF0)) / 16;
as (temp> 2047)
{
temp -= 4096;
}
dubbel cTemp = temp * 0,0625;
dubbel fTemp = cTemp * 1.8 + 32;
// Uitset data na die skerm
System.out.printf ("Temperatuur in Celsius: %.2f C %n", cTemp);
System.out.printf ("Temperatuur in Fahrenheit: %.2f F %n", fTemp);
}
}
Stap 4: Aansoeke:
Verskeie toepassings wat TMP100 lae temperatuur, hoë akkuraatheid digitale temperatuursensor bevat, sluit in monitering van kragtoevoer, perifere termiese beskerming teen rekenaar, batterybestuur sowel as kantoormasjiene.