Obsah:
Video: Arduino Nano-výukový program 3-osového 12-bitového/8-bitového digitálneho akcelerometra MMA8452Q: 4 kroky
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:56
MMA8452Q je inteligentný, trojosový, kapacitný, mikroosý akcelerometer s malým výkonom a 12 bitovým rozlíšením. Flexibilné programovateľné možnosti pre používateľov sú k dispozícii pomocou vstavaných funkcií v akcelerometri, konfigurovateľných na dva kolíky prerušenia. Má užívateľsky voliteľné plné stupnice ± 2 g/± 4 g/± 8 g s filtrovanými údajmi filtrovanými horným prechodom a nefiltrovanými údajmi, ktoré sú k dispozícii v reálnom čase. Tu je jeho ukážka s Arduino nano.
Krok 1: Čo potrebujete.. !
1. Arduino Nano
2. MMA8452Q
3. Kábel I²C
4. I²C štít pre Arduino Nano
Krok 2: Pripojenie:
Vezmite štít I2C pre Arduino Nano a jemne ho zatlačte cez kolíky Nano.
Potom pripojte jeden koniec kábla I2C k senzoru MMA8452Q a druhý koniec k štítu I2C.
Pripojenia sú znázornené na obrázku vyššie.
Krok 3: Kód:
Arduino kód pre MMMA8452Q si môžete stiahnuť z nášho úložiska github- DCUBE Store.
Tu je odkaz.
Ponúkame knižnicu Wire.h na uľahčenie komunikácie senzora I2c s doskou Arduino.
Odtiaľto môžete tiež skopírovať kód, ktorý je nasledujúci:
// Distribuované s licenciou slobodnej vôle.
// Používajte ho akýmkoľvek spôsobom chcete, so ziskom alebo zadarmo, za predpokladu, že sa zmestí do licencií k ním pridruženým dielam.
// MMA8452Q
// Tento kód je navrhnutý tak, aby fungoval s mini modulom MMA8452Q_I2CS I2C.
#zahrnúť
// Adresa I2C MMA8452Q je 0x1C (28)
#define Addr 0x1C
neplatné nastavenie ()
{
// Inicializujte komunikáciu I2C ako MASTER
Wire.begin ();
// Inicializujte sériovú komunikáciu, nastavte prenosovú rýchlosť = 9600
Serial.begin (9600);
// Spustite prenos I2C
Wire.beginTransmission (Addr);
// Vyberte riadiaci register
Wire.write (0x2A);
// Pohotovostný režim
Wire.write (0x00);
// Zastavte prenos I2C
Wire.endTransmission ();
// Spustite prenos I2C
Wire.beginTransmission (Addr);
// Vyberte riadiaci register
Wire.write (0x2A);
// Aktívny režim
Wire.write (0x01);
// Zastavte prenos I2C
Wire.endTransmission ();
// Spustite prenos I2C
Wire.beginTransmission (Addr);
// Vyberte riadiaci register
Wire.write (0x0E);
// Nastaviť rozsah na +/- 2g
Wire.write (0x00);
// Zastavte prenos I2C
Wire.endTransmission ();
oneskorenie (300);
}
prázdna slučka ()
{
nepodpísané int údaje [7];
// Požiadajte o 7 bajtov údajov
Wire.requestFrom (Addr, 7);
// Prečítajte 7 bajtov údajov
// staus, xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
ak (Wire.available () == 7)
{
data [0] = Wire.read ();
údaje [1] = Wire.read ();
údaje [2] = Wire.read ();
údaje [3] = Wire.read ();
údaje [4] = Wire.read ();
údaje [5] = Wire.read ();
údaje [6] = Wire.read ();
}
// Previesť údaje na 12-bitové
int xAccl = ((údaje [1] * 256) + údaje [2]) / 16;
ak (xAccl> 2047)
{
xAccl -= 4096;
}
int yAccl = ((údaje [3] * 256) + údaje [4]) / 16;
ak (yAccl> 2047)
{
yAccl -= 4096;
}
int zAccl = ((údaje [5] * 256) + údaje [6]) / 16;
ak (zAccl> 2047)
{
zAccl -= 4096;
}
// Výstup údajov na sériový monitor
Serial.print ("Zrýchlenie v osi X:");
Serial.println (xAccl);
Serial.print ("Zrýchlenie v osi Y:");
Serial.println (yAccl);
Serial.print ("Zrýchlenie v osi Z:");
Serial.println (zAccl);
oneskorenie (500);
}
Krok 4: Aplikácie:
MMA8452Q má rôzne aplikácie, ktoré zahŕňajú aplikácie E-Compass, detekciu statickej orientácie, ktorá zahŕňa portrét/krajinu, hore/dole, vľavo/vpravo, identifikáciu polohy zozadu/spredu, notebook, elektronickú čítačku a detekciu pádu a voľného pádu notebooku, v reálnom čase detekcia orientácie vrátane virtuálnej reality a hier 3D spätná väzba o polohe užívateľa, analýza aktivít v reálnom čase, ako je počítanie krokov krokomerom, detekcia pádu voľného pádu pre pevný disk, zálohovanie GPS s mŕtvym zúčtovaním a mnoho ďalších.
Odporúča:
Spracovanie zvuku a digitálneho signálu Bluetooth: Rámec Arduino: 10 krokov
Spracovanie zvuku a digitálneho signálu Bluetooth: Rámec Arduino: Zhrnutie Keď premýšľam o Bluetooth, myslím na hudbu, ale bohužiaľ väčšina mikrokontrolérov nedokáže prehrávať hudbu cez Bluetooth. Raspberry Pi môže, ale je to počítač. Chcem vyvinúť rámec založený na Arduine pre mikrokontroléry na prehrávanie zvuku cez Bluet
Základy akcelerometra MPU6050+gyroskopu: 3 kroky
Základy senzora akcelerometra MPU6050+gyroskopu: MPU6050 je veľmi užitočný senzor. CPU 6050 je IMU: Inerciálna meracia jednotka (IMU) je elektronické zariadenie, ktoré meria a hlási špecifickú silu, uhlovú rýchlosť a niekedy aj orientáciu tela. tela, pomocou kombinácie
Projekt digitálneho kompasu Arduino: 3 kroky
Projekt digitálneho kompasu Arduino: Dobrý deň! V tomto návode uvidíte, ako si môžete vytvoriť digitálny kompas pomocou Arduina a IDE pre spracovanie. Je to celkom jednoduchý, ale zaujímavý a chladne vyzerajúci projekt Arduino. Demo ukážku tohto tutoriálu si môžete pozrieť na videu
Rover ovládaný gestami pomocou akcelerometra a páru vysielač-prijímač RF: 4 kroky
Rover ovládaný gestami pomocou akcelerometra a dvojice RF prijímača a vysielača: Hej, niekedy ste chceli postaviť rover, ktorý by ste mohli ovládať jednoduchými gestami, ale nikdy by ste nenašli odvahu pustiť sa do zložitosti spracovania obrazu a prepojenia webovej kamery s vašim mikrokontrolér, nehovoriac o kopci
Arduino Nano a Visuino: Previesť zrýchlenie na uhol z akcelerometra a gyroskopu Snímač MPU6050 I2C: 8 krokov (s obrázkami)
Arduino Nano a Visuino: Previesť zrýchlenie na uhol z akcelerometra a gyroskopu Senzor MPU6050 I2C: Pred chvíľou som zverejnil návod, ako môžete k Arduino Nano pripojiť akcelerometer, gyroskop a snímač kompasu MPU9250 a naprogramovať ho pomocou Visuina na odosielanie paketových údajov a zobrazenie. na rozsahu a vizuálnych nástrojoch. Akcelerometer odosiela X, Y,