Цена:
Трехосевой акселерометр Bosch BMA220 представляет собой компактную плату с датчиком ускорения и интерфейсом SPI и I2C, предназначенную для потребительского рынка. Он позволяет измерять ускорения по трем перпендикулярным осям и, таким образом, измерять наклон, движение, удары и вибрацию в мобильных телефонах, карманных компьютерах, компьютерных периферийных устройствах, человеко-машинных интерфейсах, функциях виртуальной реальности и игровых контроллерах. Трехосевой акселерометр объединяет множество функций, которые облегчают его использование, особенно в области приложений обнаружения движения, таких как определение ориентации устройства, игры, HMI и управление браузером меню. Он легко настраивается, чтобы предоставить разработчику полную гибкость при интеграции датчика в его систему.
Пример исходного кода для ArduinoIDE.
#include "Wire.h"
byte Version[3];
int8_t x_data;
int8_t y_data;
int8_t z_data;
void setup()
{
Serial.begin(9600);
Wire.begin();
Wire.beginTransmission(0x0A); // address of the accelerometer
// low pass filter, range settings
Wire.write(0x20);
Wire.write(0x05);
Wire.endTransmission();
}
void AccelerometerInit()
{
Wire.beginTransmission(0x0A); // address of the accelerometer
// reset the accelerometer
Wire.write(0x04); // Y data
Wire.endTransmission();
Wire.requestFrom(0x0A,1); // request 6 bytes from slave device #2
while(Wire.available()) // slave may send less than requested
{
Version[0] = Wire.read(); // receive a byte as characte
}
x_data=(int8_t)Version[0]>>2;
Wire.beginTransmission(0x0A); // address of the accelerometer
// reset the accelerometer
Wire.write(0x06); // Y data
Wire.endTransmission();
Wire.requestFrom(0x0A,1); // request 6 bytes from slave device #2
while(Wire.available()) // slave may send less than requested
{
Version[1] = Wire.read(); // receive a byte as characte
}
y_data=(int8_t)Version[1]>>2;
Wire.beginTransmission(0x0A); // address of the accelerometer
// reset the accelerometer
Wire.write(0x08); // Y data
Wire.endTransmission();
Wire.requestFrom(0x0A,1); // request 6 bytes from slave device #2
while(Wire.available()) // slave may send less than requested
{
Version[2] = Wire.read(); // receive a byte as characte
}
z_data=(int8_t)Version[2]>>2;
Serial.print("X=");
Serial.print(x_data); // print the character
Serial.print(" ");
Serial.print("Y=");
Serial.print(y_data); // print the character
Serial.print(" ");
Serial.print("Z=");
Serial.println(z_data);
}
void loop()
{
AccelerometerInit();
delay(100);
}
г. Москва, Пятницкое ш. д. 18, пав. 566
zakaz@compacttool.ru
8-495-752-55-22
Информация представленная на данном информационном ресурсе преследует исключительно рекламные цели и не является договором-офертой !
© Все права защищены 2015 - 2024г https://compacttool.ru