Мазмұны:
Бейне: Arduino Nano-MMA8452Q 3 осьтік 12 биттік/8 биттік цифрлық акселерометр оқулығы: 4 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
MMA8452Q-ақылды, қуаты аз, үш осі бар, сыйымдылығы 12 микротехникалық акселерометр, ажыратымдылығы 12 бит. Қолданбалы бағдарламаланатын икемді опциялар акселерометрге ендірілген функциялардың көмегімен қамтамасыз етілген, олар екі үзу түйреуішіне теңшеледі. Онда ± 2g/± 4g/± 8g пайдаланушы таңдауға болатын толық шкаласы бар, жоғары сүзгіден өткен сүзілген деректер, сонымен қатар нақты уақытта қол жетімді сүзгіленбеген деректер бар. Міне, оның демонстрациясы Arduino nano -мен.
1 -қадам: Сізге не керек..
1. Ардуино Нано
2. MMA8452Q
3. I²C кабелі
4. Arduino Nano үшін I²C қалқаны
2 -қадам: Қосылу:
Arduino Nano үшін I2C қалқанын алып, оны нано түйреуіштерінен ақырын басыңыз.
Содан кейін I2C кабелінің бір ұшын MMA8452Q сенсорына, екінші ұшын I2C қалқанына қосыңыз.
Қосылымдар жоғарыдағы суретте көрсетілген.
3 -қадам: код:
MMMA8452Q үшін arduino кодын біздің github репозиторийінен жүктеуге болады- DCUBE дүкені.
Міне сілтеме.
Біз сенсордың Arduino тақтасымен I2c байланысын жеңілдету үшін Wire.h кітапханасын қосамыз.
Сіз кодты осы жерден көшіре аласыз, ол келесі түрде берілген:
// Ерікті лицензиямен таратылды.
// Оны қалаған жолмен пайдаланыңыз немесе тегін, егер ол онымен байланысты жұмыстардың лицензиясына сәйкес келсе.
// MMA8452Q
// Бұл код MMA8452Q_I2CS I2C шағын модулімен жұмыс жасауға арналған.
#қосу
// MMA8452Q I2C мекенжайы - 0x1C (28)
#Adr 0x1C анықтаңыз
жарамсыз орнату ()
{
// I2C байланысын MASTER ретінде баптаңыз
Wire.begin ();
// Сериялық байланысты орнатыңыз, жіберу жылдамдығы = 9600
Serial.begin (9600);
// I2C берілуін бастау
Wire.beginTransmission (Addr);
// Басқару регистрін таңдаңыз
Wire.write (0x2A);
// StandBy режимі
Wire.write (0x00);
// I2C берілуін тоқтату
Wire.endTransmission ();
// I2C берілуін бастау
Wire.beginTransmission (Addr);
// Басқару регистрін таңдаңыз
Wire.write (0x2A);
// Белсенді режим
Wire.write (0x01);
// I2C берілуін тоқтату
Wire.endTransmission ();
// I2C берілуін бастау
Wire.beginTransmission (Addr);
// Басқару регистрін таңдаңыз
Wire.write (0x0E);
// Ауқымды +/- 2g етіп орнатыңыз
Wire.write (0x00);
// I2C берілуін тоқтату
Wire.endTransmission ();
кешіктіру (300);
}
бос цикл ()
{
қол қойылмаған int деректері [7];
// 7 байт деректерді сұрау
Wire.requestFrom (Addr, 7);
// 7 байт деректерді оқу
// staus, xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
егер (Wire.available () == 7)
{
деректер [0] = Wire.read ();
деректер [1] = Wire.read ();
деректер [2] = Wire.read ();
деректер [3] = Wire.read ();
деректер [4] = Wire.read ();
деректер [5] = Wire.read ();
деректер [6] = Wire.read ();
}
// Деректерді 12 битке түрлендіру
int xAccl = ((деректер [1] * 256) + деректер [2]) / 16;
егер (xAccl> 2047)
{
xAccl -= 4096;
}
int yAccl = ((деректер [3] * 256) + деректер [4]) / 16;
егер (yAccl> 2047)
{
yAccl -= 4096;
}
int zAccl = ((деректер [5] * 256) + деректер [6]) / 16;
егер (zAccl> 2047)
{
zAccl -= 4096;
}
// Деректерді сериялық мониторға шығару
Serial.print («X осінде үдеу:»);
Serial.println (xAccl);
Serial.print («Y осінде үдеу:»);
Serial.println (yAccl);
Serial.print («Z осінде үдеу:»);
Serial.println (zAccl);
кешіктіру (500);
}
4 -қадам: Өтініштер:
MMA8452Q әр түрлі қосымшаларға ие, оған электронды компас қосымшалары, портрет/пейзаж, жоғары/төмен, солға/оңға, артқа/алдыңғы позиция идентификаторы, ноутбук, электронды оқырман, ноутбуктің құлдырауы мен құлауды анықтау кіреді. бағдарларды анықтау, оның ішінде виртуалды шындық пен ойынның 3D пайдаланушылардың позициясы туралы кері байланыс, қадамдық қадамдарды санау, HDD үшін құлаудың түсуін анықтау, GPS резервтік көшірмесі және тағы басқалар сияқты нақты уақыттағы белсенділікті талдау.
Ұсынылған:
Raspberry Pi - ADXL345 3 осьті акселерометр Python оқулығы: 4 қадам
Raspberry Pi-ADXL345 3 осьті акселерометр Python оқулығы: ADXL345-бұл кішкентай, жұқа, ультра қуатты, 3 осьті акселерометр, жоғары ажыратымдылықта (13 биттік) ± 16 г дейін. Сандық шығыс деректері 16 биттік қосалқы ретінде форматталған және I2 C сандық интерфейсі арқылы қол жетімді. Ол өлшейді
Raspberry Pi - ADXL345 3 осьті акселерометр Java оқулығы: 4 қадам
Raspberry Pi-ADXL345 3 осьті акселерометр Java оқулығы: ADXL345-бұл кішкентай, жұқа, ультра қуатты, 3 осьті акселерометр, жоғары ажыратымдылықпен (13 биттік) ± 16 г дейін. Сандық шығыс деректері 16 биттік қосалқы ретінде форматталған және I2 C сандық интерфейсі арқылы қол жетімді. Ол өлшейді
Arduino Nano - BH1715 цифрлық жарық сенсоры оқулығы: 4 қадам
Arduino Nano - BH1715 цифрлық ортадағы жарық сенсорының оқулығы: BH1715 - бұл I²C шинасы бар интерфейсі бар цифрлық жарық сенсоры. BH1715 әдетте мобильді құрылғылар үшін СКД мен пернетақта жарығының қуатын реттеу үшін қоршаған жарық туралы мәліметтерді алу үшін қолданылады. Бұл құрылғы 16-разрядты ажыратымдылық пен реттеуді ұсынады
3 осьтік акселерометр LIS2HH12 модулі: 10 қадам (суреттермен)
3 осьтік акселерометр LIS2HH12 модулі: Бұл нұсқаулық arduino бағдарламалық қамтамасыз ету мен дәнекерлеу тәжірибесі бар бастапқы деңгей болып саналады. LIS2HH12 модулін Tiny9 жасаған. Tiny9 - бұл DIY қаптауыштарға, компанияларға немесе өнертапқыштарға арналған сенсорлық модульдерді сатумен айналысатын жаңа компания. Ана жерде
DIY MusiLED, Windows және Linux бір рет басу арқылы синхронды музыкалық жарықдиодты шамдар (32 биттік және 64 биттік). Қайта құру оңай, пайдалану оңай, портқа оңай: 3 қадам
DIY MusiLED, Windows және Linux бір рет басу арқылы синхронды музыкалық жарықдиодты шамдар (32 биттік және 64 биттік). Қайта құру, пайдалану оңай, портқа оңай. Бұл жоба Arduino тақтасына 18 жарықдиодты (6 қызыл + 6 көк + 6 сары) қосуға және компьютердің дыбыстық картасының нақты уақыттағы сигналдарын талдауға және оларды таратуға көмектеседі. жарық диодтары оларды соққы әсеріне қарай жарықтандырады (тұзақ, биік қалпақ, соққы)