Arduino Nano - Tutorial de 3 ejes acelerómetro Digital de 12 bits/8 bits MMA8452Q (3 / 4 paso)

Paso 3: código:

El código de arduino para MMMA8452Q puede descargarse desde el repositorio de github-ControlEverythingCommunity

Aquí está el enlace para el mismo:

https://github.com/ControlEverythingCommunity/MMA8...

La hoja de datos de MMA8452Q se puede encontrar aquí:

https://S3.amazonaws.com/controleverything.Media/c...

Incluimos la biblioteca Wire.h para facilitar la comunicación I2c del sensor con la placa Arduino.

También puede copiar el código desde aquí, se da como sigue:

Distribuido con una licencia de libre albedrío.

Se usa cualquier forma desea, beneficio o libre, siempre cabe en las licencias de sus obras anexas.

MMA8452Q

Este código está diseñado para trabajar con el módulo de Mini de I2C MMA8452Q_I2CS de ControlEverything.com.

https://www.controleverything.com/content/Accelor...

#include < Wire.h >

Dirección I2C MMA8452Q es 0x1C(28)

#define Addr 0x1C

void setup()

{

Inicializar la comunicación I2C como maestro

Wire.Begin();

Inicializar la comunicación Serial, juego velocidad en baudios = 9600

Serial.Begin(9600);

Iniciar transmisión I2C

Wire.beginTransmission(Addr);

Registro de control Select

Wire.Write(0x2A);

Modo de espera

Wire.Write(0x00);

Detener la transmisión I2C

Wire.endTransmission();

Iniciar transmisión I2C

Wire.beginTransmission(Addr);

Registro de control Select

Wire.Write(0x2A);

Modo activo

Wire.Write(0x01);

Detener la transmisión I2C

Wire.endTransmission();

Iniciar transmisión I2C

Wire.beginTransmission(Addr);

Registro de control Select

Wire.Write(0x0E);

Rango de +-2g

Wire.Write(0x00);

Detener la transmisión I2C

Wire.endTransmission();

Delay(300);

}

void loop()

{

unsigned int datos [7];

Solicitud de 7 bytes de datos

Wire.requestFrom (Addr, 7);

Leer 7 bytes de datos

Estado xAccl lsb, xAccl msb, lsb yAccl, yAccl msb, lsb zAccl, zAccl msb

if(Wire.Available() == 7)

{

datos [0] = Wire.read();

datos [1] = Wire.read();

datos [2] = Wire.read();

datos [3] = Wire.read();

datos [4] = Wire.read();

datos [5] = Wire.read();

datos [6] = Wire.read();

}

Convertir los datos en 12 bits

int xAccl = ((datos [1] * 256) + data[2]) / 16;

Si (xAccl > 2047)

{

xAccl-= 4096;

}

int yAccl = ((datos [3] * 256) + data[4]) / 16;

Si (yAccl > 2047)

{

yAccl-= 4096;

}

int zAccl = ((datos [5] * 256) + data[6]) / 16;

Si (zAccl > 2047)

{

zAccl-= 4096;

}

Salida de datos monitor serial

Serial.Print ("aceleración en el eje x:");

Serial.println(xAccl);

Serial.Print ("aceleración en el eje:");

Serial.println(yAccl);

Serial.Print ("aceleración en el eje z:");

Serial.println(zAccl);

Delay(500);

}

Artículos Relacionados

3 ejes acelerómetro Digital de 12 bits/8 bits Python Tutorial de frambuesa Pi MMA8452Q

3 ejes acelerómetro Digital de 12 bits/8 bits Python Tutorial de frambuesa Pi MMA8452Q

El MMA8452Q es un acelerómetro micro smart, baja potencia, tres ejes, capacitiva, con 12 bits de resolución. Opciones programables de usuario flexibles cuentan con la ayuda de funciones incorporadas en el acelerómetro, configurable a dos pines de int
3 ejes acelerómetro Digital de 12 bits/8 bits Java Tutorial de frambuesa Pi MMA8452Q

3 ejes acelerómetro Digital de 12 bits/8 bits Java Tutorial de frambuesa Pi MMA8452Q

El MMA8452Q es un acelerómetro micro smart, baja potencia, tres ejes, capacitiva, con 12 bits de resolución. Opciones programables de usuario flexibles cuentan con la ayuda de funciones incorporadas en el acelerómetro, configurable a dos pines de int
Frambuesa Pi - Tutorial de Python de acelerómetro de 3 ejes ADXL345

Frambuesa Pi - Tutorial de Python de acelerómetro de 3 ejes ADXL345

El ADXL345 es una potencia pequeña, delgada, ultra bajo, acelerómetro de 3 ejes con alta resolución (13 bits) medición hasta ±16 g. salida Digital datos tiene el formato como complementan dos 16-bit y es accesible a través de la interfaz digital I2 C
Arduino con el motor servo de acelerómetro

Arduino con el motor servo de acelerómetro

Aplicación de control de motor de ADXL345 acelerómetro 2 servo.Paso 1: Código de ArduinoControl de motor de servo ADXL345 acelerómetro 2#include < Wire.h >#include < Servo.h >Servo myservox;Servo myservoy;#define dispositivo (0x53)#define TO_R
Arduino Nano - Tutorial de Sensor Digital de luz ambiental BH1715

Arduino Nano - Tutorial de Sensor Digital de luz ambiental BH1715

El BH1715 es un Sensor de luz ambiente digital con una interfaz de bus I²C. El BH1715 es utilizado para obtener los datos de luz ambientales para ajustar la potencia de luz de fondo LCD y teclado para dispositivos móviles. Este dispositivo ofrece una
Arduino Nano - Tutorial de Sensor de temperatura TMP100

Arduino Nano - Tutorial de Sensor de temperatura TMP100

TMP100 High-Accuracy, módulo Digital Sensor de temperatura I2C MINI de baja potencia. El TMP100 es ideal para medición de temperatura extendido. Este dispositivo ofrece una precisión de ±1 ° C sin necesidad de calibración o componente externo de seña
Arduino Nano - Tutorial de Sensor de luz ambiental TSL45315

Arduino Nano - Tutorial de Sensor de luz ambiental TSL45315

TSL45315 es un sensor digital de luz ambiental. Aproxima la respuesta del ojo humano en una variedad de condiciones de iluminación. Los dispositivos tienen tres tiempos de integración seleccionable y proporcionan una salida directa de 16-bit de lux a
Arduino Nano - Tutorial de Sensor de temperatura SI7050

Arduino Nano - Tutorial de Sensor de temperatura SI7050

SI7050 es un sensor de temperatura digital que trabaja en protocolo de comunicación I2C y ofrece alta exactitud sobre el toda tensión y temperatura. Esta alta precisión del sensor es atribuida por el procesamiento de señales novela y diseño analógico
Arduino Nano - Tutorial de Sensor de temperatura TCN75A

Arduino Nano - Tutorial de Sensor de temperatura TCN75A

TCN75A es un sensor de temperatura serial de dos hilos constituido convertidor de temperatura en digital. Se incorpora con registros programables de usuario que proporcionan flexibilidad para aplicaciones de detección de temperatura. La configuración
Arduino Nano - Tutorial de Sensor de temperatura y la humedad SHT30

Arduino Nano - Tutorial de Sensor de temperatura y la humedad SHT30

Sensor de temperatura y humedad Digital SHT30 ofrece un rendimiento superior y una huella de ahorro de espacio. Proporciona señales calibradas, lineal en formato digital, I2C. Fabricación de este sensor se basa en tecnología CMOSens, que atribuye a l
3 axis Arduino acelerómetro / inclinómetro (inclinación del rodillo / Yaw)

3 axis Arduino acelerómetro / inclinómetro (inclinación del rodillo / Yaw)

de las mentes en http://arduinotronics.blogspot.com/Hace años vi un gadget el tablero limpio de un Jeep que tenía dos cuadros de un Jeep en la unidad. Condujo, las dos imágenes moverse, mostrando inclinación y ángulos, con la idea de ayudaría a evita
Controlador de Bluetooth juegos con acelerómetro y Arduino

Controlador de Bluetooth juegos con acelerómetro y Arduino

Todo el mundo le gusta jugar juegos en PC :) ¿Consolas de juegos llevan al siguiente nivel y es más diversión que hacer uno mismo? Aquí hemos construido una consola de juegos con acelerómetro, Arduino y Bluetooth. El acelerómetro en la consola de jue
Uso de un acelerómetro y un giroscopio con Arduino

Uso de un acelerómetro y un giroscopio con Arduino

he comprado recientemente una combinación de 3 ejes acelerómetro y giroscopio de 2 ejes de Sparkfun y quería publicar parte del código utiliza para conseguirlo ya está en marcha.  Estoy pensando en usarlo en un Arduino basado en controlador MIDI que
Base de Arduino Nano Hexbug araña robótica de escarabajo

Base de Arduino Nano Hexbug araña robótica de escarabajo

La Idea:Para construir una araña robótica programable basada en escarabajo Hexbug, equipado con el siguiente conjunto de sensores:[video]Sensor de distancia ultrasónicoObstáculo infrarrojo sensores y equiposGiroscopioAcelerómetroPuntero láserEl robot