ADXL345 angle meter code doesn't work

Post here about your Arduino projects, get help - for Adafruit customers!

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
idancrav
 
Posts: 1
Joined: Sat Feb 25, 2023 2:36 pm

ADXL345 angle meter code doesn't work

Post by idancrav »

anyone knows why this doesn't work?

Code: Select all

#include <Wire.h>    
#include <Adafruit_Sensor.h>
#include <Adafruit_ADXL345_U.h>  
#include <LiquidCrystal_I2C.h>  

Adafruit_ADXL345_h adxlSensor = Adafruit_ADXL345();  
LiquidCrystal_I2C lcdDisplay(0x20, 16, 2);     

unsigned long timer = 0;    

void setup() {
  Serial.begin(9600);    
  lcdDisplay.begin();     
  lcdDisplay.backlight();    
  Wire.begin();     
  adxlSensor.begin();     

  Serial.print(F("ADXL345 status: "));
  if(adxlSensor.begin()) {
    Serial.println(F("Success!"));
  } else {
    Serial.println(F("Could not initialize ADXL345!"));
    while(1); // stop the program here
  }

  Serial.println(F("Calibrating ADXL345, please wait..."));
  adxlSensor.calibrate();  
  Serial.println(F("Calibration done!\n"));
}

void loop() {
  int xAccel, yAccel, zAccel;
  adxlSensor.readAccelerometer(&xAccel, &yAccel, &zAccel);  

  if ((millis() - timer) > 100) { 
    timer = millis();
    lcdDisplay.clear();
    lcdDisplay.print("X: ");
    lcdDisplay.print(xAccel);    
    lcdDisplay.setCursor(8, 0);
    lcdDisplay.print("Y: ");
    lcdDisplay.print(yAccel);    
    lcdDisplay.setCursor(0, 1);
    lcdDisplay.print("Z: ");
    lcdDisplay.print(zAccel);    
    delay(10);
  }
}

User avatar
sj_remington
 
Posts: 997
Joined: Mon Jul 27, 2020 4:51 pm

Re: ADXL345 angle meter code doesn't work

Post by sj_remington »

Please explain "doesn't work". What did you expect to happen, and what happened instead?

The code should display acceleration values. To calculate tilt angles, some math is required.

User avatar
adafruit_support_carter
 
Posts: 29150
Joined: Tue Nov 29, 2016 2:45 pm

Re: ADXL345 angle meter code doesn't work

Post by adafruit_support_carter »

Also, what is the liquid crystal display being used? What Arduino library is being used with the display?

Locked
Please be positive and constructive with your questions and comments.

Return to “Arduino”