Stap 3: Code:
De java-code voor TMD26721 kan worden gedownload van onze github archief-ControlEverythingCommunity
Hier is de link voor hetzelfde:
https://github.com/ControlEverythingCommunity/TMD2...
Het gegevensblad van TMD26721 kan hier worden gevonden:
https://S3.amazonaws.com/controleverything.Media/c...
We hebben pi4j bibliotheek voor java code gebruikt, de stappen te installeren pi4j op de raspberry pi is hier beschreven:
U kunt ook de code kopiëren vanaf hier, het wordt als volgt gegeven:
Gedistribueerd met een licentie van de vrije wil.
Gebruik het elke manier wilt u, op de winst of het gratis, mits het past in de licenties van de bijbehorende werken.
TMD26721
Deze code is ontworpen om te werken met de TMD26721_I2CS I2C Mini Module beschikbaar vanaf ControlEverything.com.
https://www.controleverything.com/content/Proximi...
importeren van com.pi4j.io.i2c.I2CBus;
importeren van com.pi4j.io.i2c.I2CDevice;
importeren van com.pi4j.io.i2c.I2CFactory;
importeren van java.io.IOException;
openbare klasse TMD26721
{
openbare statische nietige leiding (Koord args[]) gooit uitzondering
{
I2C bus maken
I2CBus bus = I2CFactory.getInstance(I2CBus.BUS_1);
Krijg I2C apparaat, TMD26721 I2C adres is 0x39(57)
I2CDevice apparaat = bus.getDevice(0x39);
Selecteer nabijheid tijd registreren of met opdracht registreren
PTijdsblok = 2.73 ms
Device.write (0x02 | 0x80, (byte) 0xFF);
Selecteer wachten tijd registreren of met opdracht registreren
Wtime = 2.73 ms
Device.write (0x03 | 0x80, (byte) 0xFF);
Selecteer puls graaf Registreer of met opdracht registreren
Pulse graaf = 32
Device.write (0x0E | 0x80, (byte) 0x20);
Besturingselement SELECT met opdracht registreren of
100 mA LED sterkte, proximtiy maakt gebruik van CH1 diode, 1 x PGAIN, 1 x AGAIN
Device.write (0x0F | 0x80, (byte) 0x20);
Selecteer inschakelen register of met opdracht registreren
Instellen Power ON, nabijheid en wachten ingeschakeld
Device.write (0x00 | 0x80, (byte) 0x0D);
Thread.Sleep(800);
2 bytes aan gegevens van adres 0x18(24) leest
nabijheid van lsb, msb van de nabijheid
[] bytegegevens = nieuwe byte [2];
Device.Read (0x18 | 0x80, gegevens, 0, 2);
De gegevens converteren
int nabijheid = (((gegevens [1] & 0xFF) * 256) + (gegevens [0] & 0xFF));
Uitvoergegevens naar scherm
System.out.printf ("nabijheid van het apparaat: %d %n", nabijheid);
}
}