Moduł MMA7455jest akceleratorem – miernikiem przyspieszenia.
Materiały:
Schemat:
Płytka (zdjęcie):
- MMA7455
Specyfikacja:
- MMA7455
- interfejs I2C
- Power LED
- Zasilanie: +3.3 V
- wymiary PCB: 25x13x10 mm
Przykładowy kod (Arduino Uno):
#include <Wire.h> #define ADDRESS 0x1D //Address for Accelerometer //REGISTERS #define MODE_CONTROL 0x16 //Mode control register #define X_OUT 0x06 //8 bit register containing value for X #define Y_OUT 0x07 //8 bit register containing value for Y #define Z_OUT 0x08 //8 bit register containing value for Z #define SETUP 0x05 //MESUREMENT MODE, 2g //required setup function void setup() { Wire.begin(); Serial.begin(9600); I2C_Write(MODE_CONTROL, SETUP); } //required loop function void loop() { Serial.print("X: "); Serial.print(I2C_Read(X_OUT)); Serial.print(" Y: "); Serial.print(I2C_Read(Y_OUT)); Serial.print(" Z: "); Serial.println(I2C_Read(Z_OUT)); delay(100); } //function to write byte data into a register void I2C_Write(byte REG, byte data) { Wire.beginTransmission(ADDRESS); //device address 0x1D Wire.write(REG); //0x16 Wire.write(data); //measurement mode,2g Wire.endTransmission(); } //function to read byte data from a register byte I2C_Read(byte REG){ byte val = 0x00; Wire.beginTransmission(ADDRESS); Wire.write(REG); Wire.endTransmission(); Wire.requestFrom(ADDRESS, 1); if(Wire.available() > 0) { val = Wire.read(); } Wire.endTransmission(); return val; }