Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-23 15:02
MMA8452Q er et smart, laveffekt, tre-akset, kapasitivt, mikromaskinert akselerometer med 12 bits oppløsning. Fleksible brukerprogrammerbare alternativer tilbys ved hjelp av innebygde funksjoner i akselerometeret, som kan konfigureres til to avbruddspinner. Den har brukervalgbare hele skalaer på ± 2g/± 4g/± 8g med høypassfilterfiltrerte data, så vel som ikke-filtrerte data tilgjengelig i sanntid. Her er demonstrasjonen med bringebær pi ved hjelp av java -kode.
Trinn 1: Hva du trenger..
1. Bringebær Pi
2. MMA8452Q
3. I²C -kabel
4. I²C Shield for Raspberry Pi
5. Ethernet -kabel
Trinn 2: Tilkoblinger:
Ta et I2C -skjold for bringebærpi og skyv det forsiktig over gpio -pinnene til bringebærpi.
Koble deretter den ene enden av I2C -kabelen til MMA8452Q -sensoren og den andre enden til I2C -skjoldet.
Koble også Ethernet -kabelen til pi eller du kan bruke en WiFi -modul.
Tilkoblinger er vist på bildet ovenfor.
Trinn 3: Kode:
Java-koden for MMA8452Q kan lastes ned fra vårt GitHub-depot- Dcube Store
Her er lenken til det samme:
github.com/DcubeTechVentures/MMA8452Q
Vi har brukt pi4j bibliotek for java -kode, trinnene for å installere pi4j på bringebær pi er beskrevet her:
pi4j.com/install.html
Du kan også kopiere koden herfra, den er gitt som følger:
// Distribuert med en fri viljelisens.
// Bruk den slik du vil, profitt eller gratis, forutsatt at den passer inn i lisensene til de tilhørende verkene.
// MMA8452Q
// Denne koden er designet for å fungere med MMA8452Q_I2CS I2C Mini Module tilgjengelig i Dcube Store.
importer com.pi4j.io.i2c. I2CBus;
importer com.pi4j.io.i2c. I2CDenhet;
importer com.pi4j.io.i2c. I2CFactory;
importer java.io. IOException;
offentlig klasse MMA8452Q
{
public static void main (String args ) kaster Unntak
{
// Lag I2C -buss
I2CBus -buss = I2CFactory.getInstance (I2CBus. BUS_1);
// Få I2C -enhet, MMA8452Q I2C -adresse er 0x1C (28)
I2CDevice -enhet = bus.getDevice (0x1C);
// Send standby -kommando
device.write (0x2A, (byte) 0x00);
// Send aktiv kommando
device.write (0x2A, (byte) 0x01);
// Angi rekkevidde til +/- 2g
device.write (0x0E, (byte) 0x00);
Tråd. Sover (500);
// Les 7 byte med data fra adresse 0x00 (0)
// Status, X msb, X lsb, Y msb, Y lsb, Z msb, Z lsb
byte data = ny byte [7];
device.read (0x00, data, 0, 7);
// Konverter verdiene
int xAccl = (((data [1] & 0xFF) * 256) + (data [2] & 0xFF)) / 16;
hvis (xAccl> 2047)
{
xAccl = xAccl - 4096;
}
int yAccl = (((data [3] & 0xFF) * 256) + (data [4] & 0xFF)) / 16;
hvis (yAccl> 2047)
{
yAccl = yAccl - 4096;
}
int zAccl = (((data [5] & 0xFF) * 256) + (data [6] & 0xFF)) / 16;
hvis (zAccl> 2047)
{
zAccl = zAccl - 4096;
}
// Utdata til skjermen
System.out.printf ("X-akse: %d %n", xAccl);
System.out.printf ("Y-akse: %d %n", yAccl);
System.out.printf ("Z-akse: %d %n", zAccl);
}
}
Trinn 4: Søknader:
MMA8452Q har forskjellige applikasjoner som inkluderer E-Kompass-applikasjoner, Statisk orienteringsdeteksjon som inneholder portrett/landskap, opp/ned, venstre/høyre, bak/front posisjonidentifikasjon, bærbar PC, e-leser og bærbar Tumble og Freefall Detection, sanntid orienteringsdeteksjon, inkludert virtuell virkelighet og spill 3D-tilbakemeldinger fra brukerposisjoner, aktivitetsanalyse i sanntid som skrittellersteller, fritt fallgjenkjenning for harddisk, død-beregning av GPS-sikkerhetskopiering og mye mer.
Anbefalt:
Raspberry Pi - TMD26721 Infrarød digital nærhetsdetektor Java Opplæring: 4 trinn
Raspberry Pi-TMD26721 Infrarød digital nærhetsdetektor Java Opplæring: TMD26721 er en infrarød digital nærhetsdetektor som gir et komplett nærhetsdeteksjonssystem og digital grensesnittlogikk i en enkelt 8-pinners overflatemonteringsmodul. Nærhetsdeteksjonen inkluderer forbedret signal-til-støy og nøyaktighet. En proff
Raspberry Pi - ADXL345 3 -akset akselerometer Python -opplæring: 4 trinn
Raspberry Pi-ADXL345 3-akset akselerometer Python-opplæring: ADXL345 er et lite, tynt, ultralavt, 3-akset akselerometer med høy oppløsning (13-biters) måling på opptil ± 16 g. Digitale utdata er formatert som 16-biters tokomplement og er tilgjengelig via I2 C digitalt grensesnitt. Den måler
Raspberry Pi - ADXL345 3 -akset akselerometer Java Opplæring: 4 trinn
Raspberry Pi-ADXL345 3-akset akselerometer Java-opplæring: ADXL345 er et lite, tynt, ultralavt, 3-akset akselerometer med høy oppløsning (13-biters) måling på opptil ± 16 g. Digitale utdata er formatert som 16-biters tokomplement og er tilgjengelig via I2 C digitalt grensesnitt. Den måler
Raspberry Pi MCP9803 Temperatursensor Java Opplæring: 4 trinn
Raspberry Pi MCP9803 Temperatursensor Java Opplæring: MCP9803 er en 2-leders temperatursensor med høy nøyaktighet. De er utformet med brukerprogrammerbare registre som letter temperaturfølere. Denne sensoren er egnet for svært sofistikert flersonet temperaturovervåkingssystem. Her
Raspberry Pi - MPL3115A2 Java Precision Altimeter Sensor Java Opplæring: 4 trinn
Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Java Tutorial: MPL3115A2 bruker en MEMS -trykksensor med et I2C -grensesnitt for å gi nøyaktige trykk-/høyde- og temperaturdata. Sensorutgangene digitaliseres med en høyoppløselig 24-biters ADC. Intern behandling fjerner kompensasjonsoppgaver fra