ዝርዝር ሁኔታ:

Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Java Tutorial: 4 ደረጃዎች
Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Java Tutorial: 4 ደረጃዎች

ቪዲዮ: Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Java Tutorial: 4 ደረጃዎች

ቪዲዮ: Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Java Tutorial: 4 ደረጃዎች
ቪዲዮ: Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Java Tutorial 2024, ህዳር
Anonim
Image
Image

MMA8452Q ብልጥ ፣ ዝቅተኛ ኃይል ፣ ሶስት ዘንግ ፣ አቅም ያለው ፣ ማይክሮሜሽን ያለው የፍጥነት መለኪያ ከ 12 ቢት ጥራት ጋር ነው። ተጣጣፊ የተጠቃሚ መርሃ ግብር አማራጮች በሁለት የፍጥነት መለኪያ ውስጥ በተካተቱ ተግባራት እርዳታ ይሰጣሉ ፣ ለሁለት ማቋረጫ ፒኖች ይዋቀራሉ። ባለከፍተኛ ማለፊያ ማጣሪያ በተጣራ ውሂብ እንዲሁም ያልተጣራ ውሂብ በእውነተኛ-ጊዜ የሚገኝ ተጠቃሚ ሊመረጥ የሚችል ሙሉ sca 2g/± 4g/± 8g አለው። የጃቫ ኮድን በመጠቀም ከሮዝቤሪ ፓይ ጋር የእሱ ማሳያ እዚህ አለ።

ደረጃ 1: እርስዎ የሚፈልጉት..

ምንድን ነው የሚፈልጉት..!!
ምንድን ነው የሚፈልጉት..!!

1. Raspberry Pi

2. ኤምኤምኤ8452 ኪ

3. I²C ኬብል

4. I²C ጋሻ ለ Raspberry Pi

5. የኤተርኔት ገመድ

ደረጃ 2: ግንኙነቶች

ግንኙነቶች ፦
ግንኙነቶች ፦
ግንኙነቶች ፦
ግንኙነቶች ፦
ግንኙነቶች ፦
ግንኙነቶች ፦
ግንኙነቶች ፦
ግንኙነቶች ፦

ለራስቤሪ ፓይ የ I2C ጋሻ ይውሰዱ እና በቀስታ በ raspberry pips ፒፒዎች ላይ ይግፉት።

ከዚያ የ I2C ገመዱን አንድ ጫፍ ከ MMA8452Q ዳሳሽ እና ሌላውን ከ I2C ጋሻ ጋር ያገናኙ።

እንዲሁም የኢተርኔት ገመዱን ከፓይ ጋር ያገናኙ ወይም የ WiFi ሞጁሉን መጠቀም ይችላሉ።

ግንኙነቶች ከላይ በስዕሉ ላይ ይታያሉ።

ደረጃ 3 ኮድ

ኮድ ፦
ኮድ ፦

የ MMA8452Q የጃቫ ኮድ ከእኛ GitHub ማከማቻ- Dcube መደብር ማውረድ ይችላል

ለተመሳሳይ አገናኝ እዚህ አለ

github.com/DcubeTechVentures/MMA8452Q

ለጃቫ ኮድ የ pi4j ቤተ -መጽሐፍትን ተጠቀምን ፣ በፒስቤሪ ፒ ላይ ፒ 4 ን ለመጫን ደረጃዎች እዚህ ተገልፀዋል-

pi4j.com/install.html

እንዲሁም ኮዱን ከዚህ መገልበጥ ይችላሉ ፣ እሱ እንደሚከተለው ተሰጥቷል

// በነፃ ፈቃድ ፈቃድ ተሰራጭቷል።

// በተጓዳኝ ሥራዎቹ ፈቃዶች ውስጥ የሚስማማ ከሆነ በፈለጉት ፣ በትርፍም ሆነ በነጻ ይጠቀሙበት።

// MMA8452Q

// ይህ ኮድ በ Dcube መደብር ውስጥ ከሚገኘው MMA8452Q_I2CS I2C Mini ሞዱል ጋር አብሮ ለመስራት የተነደፈ ነው።

አስመጣ com.pi4j.io.i2c. I2CBus;

አስመጪ com.pi4j.io.i2c. I2CDevice;

አስመጪ com.pi4j.io.i2c. I2CFactory;

ማስመጣት java.io. IOException;

የህዝብ መደብ MMA8452Q

{

የሕዝብ የማይንቀሳቀስ ባዶ ባዶ (String args ) Exception ን ይጥላል

{

// I2C አውቶቡስ ይፍጠሩ

I2CBus አውቶቡስ = I2CFactory.getInstance (I2CBus. BUS_1);

// I2C መሣሪያን ያግኙ ፣ MMA8452Q I2C አድራሻ 0x1C (28) ነው

I2CDevice መሣሪያ = bus.getDevice (0x1C);

// የተጠባባቂ ትዕዛዝ ይላኩ

መሣሪያ። ይፃፉ (0x2A ፣ (ባይት) 0x00);

// ንቁ ትዕዛዝ ይላኩ

መሣሪያ። ይፃፉ (0x2A ፣ (ባይት) 0x01);

// ክልል እስከ +/- 2 ግ ያዘጋጁ

መሣሪያ። ይፃፉ (0x0E ፣ (ባይት) 0x00);

ክር። እንቅልፍ (500);

// 7 ባይት መረጃን ከአድራሻ 0x00 (0) ያንብቡ

// ሁኔታ ፣ ኤክስ msb ፣ X lsb ፣ Y msb ፣ Y lsb ፣ Z msb ፣ Z lsb

ባይት ውሂብ = አዲስ ባይት [7];

መሣሪያ። ንባብ (0x00 ፣ ውሂብ ፣ 0 ፣ 7);

// እሴቶችን ይለውጡ

int xAccl = (((ውሂብ [1] & 0xFF) * 256) + (ውሂብ [2] & 0xFF)) / 16;

ከሆነ (xAccl> 2047)

{

xAccl = xAccl - 4096;

}

int yAccl = (((ውሂብ [3] & 0xFF) * 256) + (ውሂብ [4] & 0xFF)) / 16;

ከሆነ (yAccl> 2047)

{

yAccl = yAccl - 4096;

}

int zAccl = (((ውሂብ [5] & 0xFF) * 256) + (ውሂብ [6] & 0xFF)) / 16;

ከሆነ (zAccl> 2047)

{

zAccl = zAccl - 4096;

}

// የውፅዓት ውሂብ ወደ ማያ ገጽ

System.out.printf ("X-Axis: %d %n", xAccl);

System.out.printf ("Y-Axis: %d %n", yAccl);

System.out.printf ("Z-Axis: %d %n", zAccl);

}

}

ደረጃ 4: ማመልከቻዎች

MMA8452Q ኢ-ኮምፓስ አፕሊኬሽኖችን ፣ የቁም/የመሬት ገጽታ ፣ የላይ/ታች ፣ ግራ/ቀኝ ፣ የኋላ/የፊት አቀማመጥ መታወቂያ ፣ ማስታወሻ ደብተር ፣ ኢ-አንባቢ ፣ እና የላፕቶፕ ትምብል እና ፍሪፖት ማግኘትን ፣ እውነተኛ ጊዜን ያካተተ የስታቲካል አቅጣጫን ማወቅን የሚያካትቱ የተለያዩ መተግበሪያዎች አሉት። ምናባዊ እውነታን እና የጨዋታ 3-ል የተጠቃሚ አቀማመጥ ግብረመልስን ፣ የአቅጣጫ ፍለጋን ፣ እንደ ፔዶሜትር የእርምጃ ቆጠራን ፣ ለኤችዲዲ የነፃ መውደቅ መፈለጊያ ፣ የሞተ ግምት የጂፒኤስ ምትኬን እና ሌሎችንም ጨምሮ።

የሚመከር: