Raspberry Pi - ADXL345 3-Axis versnellingsmeter het leerprogramma van Java (3 / 4 stap)

Stap 3: Code:


De java-code voor ADXL345 kan worden gedownload van onze github archief-ControlEverythingCommunity

Hier is de link voor hetzelfde:

https://github.com/ControlEverythingCommunity/ADXL...

Het gegevensblad van ADXL345 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:

http://pi4j.com/install.html

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.

ADXL345

Deze code is ontworpen om te werken met de ADXL345_I2CS I2C Mini Module beschikbaar vanaf ControlEverything.com.

https://www.controleverything.com/content/Accelor...

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 ADXL345

{

openbare statische nietige leiding (Koord args[]) gooit uitzondering

{

I2C bus maken

I2CBus Bus = I2CFactory.getInstance(I2CBus.BUS_1);

Krijg I2C apparaat, apparaat I2C adres is 0x53(83)

I2CDevice apparaat = Bus.getDevice(0x53);

Selecteer bandbreedte tarief info

Normale modus, Output gegevenssnelheid = 100 Hz

Device.write (0x2C, (byte) 0x0A);

Selecteer Power control register

Auto-slaap onbruikbaar

Device.write (0x2D, (byte) 0x08);

Selecteer formaat gegevensregister

Zelftest handicap, 4-draads interface, volledige resolutie, bereik = +/-2g

Device.write (0x31, (byte) 0x08);

Thread.Sleep(500);

Lees 6 bytes aan gegevens

xAccl lsb, xAccl msb yAccl lsb, msb van de yAccl, zAccl lsb, msb zAccl

[] bytegegevens = nieuwe byte [6];

gegevens [0] = (byte)device.read(0x32);

gegevens [1] = (byte)device.read(0x33);

gegevens [2] = (byte)device.read(0x34);

gegevens [3] = (byte)device.read(0x35);

gegevens [4] = (byte)device.read(0x36);

gegevens [5] = (byte)device.read(0x37);

De gegevens converteren naar 10-bits

int. xAccl = ((gegevens [1] & 0x03) * 256 + (gegevens [0] & 0xFF));

if(xAccl > 511)

{

xAccl-= 1024;

}

int. yAccl = ((gegevens [3] & 0x03) * 256 + (gegevens [2] & 0xFF));

if(yAccl > 511)

{

yAccl-= 1024;

}

int. zAccl = ((gegevens [5] & 0x03) * 256 + (gegevens [4] & 0xFF));

if(zAccl > 511)

{

zAccl-= 1024;

}

Uitvoergegevens naar scherm

System.out.printf ("versnelling van de x-as: %d %n", xAccl);

System.out.printf ("versnelling van de y-as: %d %n", yAccl);

System.out.printf ("versnelling in de z-as: %d %n", zAccl);

}

}

Gerelateerde Artikelen

Raspberry Pi - TMP007 infrarood thermozuil Sensor het leerprogramma van Java

Raspberry Pi - TMP007 infrarood thermozuil Sensor het leerprogramma van Java

TMP007 is een infrarood thermozuil sensor die de temperatuur van een object meet zonder het zijn in contact met het. De uitgezonden door het object op de sensor vlak Infrarood energie wordt geabsorbeerd door de thermozuil geïntegreerd in de sensor. D
Raspberry Pi - TSL45315 Sensor voor omgevingslicht het leerprogramma van Java

Raspberry Pi - TSL45315 Sensor voor omgevingslicht het leerprogramma van Java

TSL45315 is een digitale sensor voor omgevingslicht. Het benadert menselijk oog reactie onder verschillende lichtomstandigheden. De apparaten hebben driemaal selecteerbare integratie en bieden een directe 16-bits lux output via een I2C bus interface.
Raspberry Pi - SI7021-Humidiy & Temperatuur Sensor het leerprogramma van Java

Raspberry Pi - SI7021-Humidiy & Temperatuur Sensor het leerprogramma van Java

SI7021 is een vochtigheid en temperatuursensor die kan worden toegepast op I2C communicatieprotocol. Het heeft een monolithische CMOS IC integratie van vochtigheid en temperatuur sensor elementen, een analoog-digitaalomzetter enz. Opgenomen met zeer
Raspberry Pi - SHT30 vochtigheid & Temperatuur Sensor het leerprogramma van Java

Raspberry Pi - SHT30 vochtigheid & Temperatuur Sensor het leerprogramma van Java

SHT30 digitale vochtigheids- en temperatuursensor biedt superieure prestaties en een ruimtebesparende voetafdruk. Het biedt gekalibreerde, gelineariseerde signalen in digitale, I2C-indeling. Fabricage van deze sensor is gebaseerd op CMOSens technolog
Raspberry Pi - ADXL345 3-Axis versnellingsmeter Python Tutorial

Raspberry Pi - ADXL345 3-Axis versnellingsmeter Python Tutorial

De ADXL345 is een kleine, dunne, ultralow macht, 3-axis versnellingsmeter met hoge resolutie (13-bits) meting bij tot ±16 g. digitale uitgang gegevens is opgemaakt als aanvulling van de 16-bits tweeën en is toegankelijk via I2 C digitale interface. I
Raspberry Pi CPS120 Druk Sensor het leerprogramma van Java

Raspberry Pi CPS120 Druk Sensor het leerprogramma van Java

CPS120 is een hoge kwaliteit en lage kosten capacitieve absolute druksensor met volledig gecompenseerd uitvoer. Het verbruikt zeer minder stroom en bestaat uit een ultra kleine Micro-Electro-mechanische Sensor(MEMS) voor meting van de druk. Een sigma
Raspberry Pi A1332 Precision Hall - Effect hoek Sensor het leerprogramma van Java

Raspberry Pi A1332 Precision Hall - Effect hoek Sensor het leerprogramma van Java

A1332 is een 360° contactloze hoge resolutie programmeerbare magnetische hoek positie sensor. Het is ontworpen voor digitale systemen via een I2C-interface. Het is gebouwd op circulaire verticale Hall (CVH) technologie en een programmeerbare micropro
Raspberry Pi - TMP100 Temperatuur Sensor het leerprogramma van Java

Raspberry Pi - TMP100 Temperatuur Sensor het leerprogramma van Java

TMP100 hoog-nauwkeurigheid, Low-Power, digitale temperatuur Sensor I2C MINI module. De TMP100 is ideaal voor uitgebreide temperatuurmeting. Dit apparaat biedt een nauwkeurigheid van ± 1 ° C zonder kalibratie of externe component signaal conditioning.
Raspberry Pi - PCA9536 Input/Uitgangsuitbreiding het leerprogramma van Java

Raspberry Pi - PCA9536 Input/Uitgangsuitbreiding het leerprogramma van Java

De PCA9536 is een 8-pins CMOS-apparaat dat een 4-bits parallelle Input/Output (GPIO)-uitbreiding voor algemene doeleinden voor I2C-bus/SMBus toepassingen bevat. Het bestaat uit een 4-bits configuratie register aan het doel van input of output selecti
Raspberry Pi - HIH6130 I2C vochtigheid & Temperatuur Sensor het leerprogramma van Java

Raspberry Pi - HIH6130 I2C vochtigheid & Temperatuur Sensor het leerprogramma van Java

HIH6130 is een vochtigheid en temperatuursensor met digitale uitgang. Deze sensoren bieden een nauwkeurigheidsniveau van ±4% RH. Met toonaangevende langetermijnstabiliteit, waar temperatuur-gecompenseerd digitale I2C, toonaangevende betrouwbaarheid,
Raspberry Pi - TMD26721 infrarood digitale nabijheid Detector het leerprogramma van Java

Raspberry Pi - TMD26721 infrarood digitale nabijheid Detector het leerprogramma van Java

TMD26721 is een digitale nabijheid van Infrarood detector die een volledige nabijheid detectiesysteem en digitale interface logica in een enkele oppervlakte bevestiging van de 8-pins module biedt. De detectie van nabijheid bevat verbeterde signal-to-
Raspberry Pi STS21 Temperatuur Sensor het leerprogramma van Java

Raspberry Pi STS21 Temperatuur Sensor het leerprogramma van Java

STS21 digitale temperatuursensor biedt superieure prestaties en een ruimtebesparende voetafdruk. Het biedt gekalibreerde, gelineariseerde signalen in digitale, I2C-indeling. Fabricage van deze sensor is gebaseerd op CMOSens technologie, die aan de su
Raspberry Pi - BH1715 digitale Ambient Light Sensor het leerprogramma van Java

Raspberry Pi - BH1715 digitale Ambient Light Sensor het leerprogramma van Java

De BH1715 is een digitale Ambient Light Sensor met een I²C bus interface. De BH1715 wordt vaak gebruikt om de ambient licht gegevens voor het aanpassen van de LCD-scherm en toetsenbord achtergrondverlichting macht voor mobiele apparaten te verkrijgen
Raspberry Pi MCP9803 Temperatuur Sensor het leerprogramma van Java

Raspberry Pi MCP9803 Temperatuur Sensor het leerprogramma van Java

MCP9803 is een hoge nauwkeurigheid van de 2-draads temperatuursensor. Ze zijn vastgelegd met de gebruiker - programmeerbare registers, die de temperatuur sensing toepassingen vergemakkelijken. Deze sensor is geschikt voor zeer geavanceerde multi-zone