当前位置: 首页 > news >正文

ESP32驱动读取ADXL345三轴加速度传感器实时数据

ESP32读取ADXL345三轴加速度传感器实时数据

    • ADXL345三轴加速度传感器简介
    • ADXL345模块原理图与引脚说明
    • ESP32读取ADXL345程序
    • 实验结果

ADXL345三轴加速度传感器简介

ADXL345是一款由Analog Devices公司推出的三轴数字加速度计,分辨率高(13位),测量范围达± 16g,可通过SPI(3线或4线)或I2C数字接口访问。ADXL345非常适合移动设备应用。它可以在倾斜检测应用中测量静态重力加速度,还可以测量运动或冲击导致的动态加速度。其高分辨率(3.9mg/LSB),能够测量不到1.0°的倾斜角度变化。
该器件提供多种特殊检测功能。活动和非活动检测功能通过比较任意轴上的加速度与用户设置的阈值来检测有无运动发生。敲击检测功能可以检测任意方向的单振和双振动作。自由落体检测功能可以检测器件是否正在掉落。这些功能可以独立映射到两个中断输出引脚中的一个。集成式存储器管理系统采用一个32级先进先出(FIFO)缓冲器,可用于存储数据,从而将主机处理器负荷降至最低,并降低整体系统功耗。
在这里插入图片描述

ADXL345模块原理图与引脚说明

在这里插入图片描述
ADXL345模块原理图在这里插入图片描述
ADXL345芯片引脚定义在这里插入图片描述
ADXL345传感器接线
由于SDO引脚下拉到GND,当使用SPI通信时为3线式。由于原理图中CS引脚已经上拉,默认为IIC通信模式,要使用SPI通信模式,CS引脚需要外部控制器下拉。
本测试实验中使用默认的IIC通信方式,ESP32开发板GPIO4接ADXL345的SDA,GPIO5接SCL
在这里插入图片描述
在这里插入图片描述

ESP32读取ADXL345程序

Arduino IDE库管理器中搜索安装如图Adafruit ADXL345库,会一并安装好相关依赖库Adafruit BusIO,Adafruit_Sensor和Adafruit_ADXL345_U库,或单独搜索安装依赖库。
在这里插入图片描述

#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_ADXL345_U.h>// 创建ADXL345对象
Adafruit_ADXL345_Unified accel = Adafruit_ADXL345_Unified(12345);void setup() {Serial.begin(115200);// 初始化I2C总线,设置SDA为GPIO4,SCL为GPIO5Wire.begin(4, 5);// 初始化传感器if (!accel.begin()) {Serial.println("无法找到ADXL345传感器");while (1);}Serial.println("ADXL345传感器初始化成功");// 设置测量范围accel.setRange(ADXL345_RANGE_16_G);
}void loop() {sensors_event_t event;accel.getEvent(&event);// 打印加速度数据Serial.print("X: "); Serial.print(event.acceleration.x); Serial.print("  ");Serial.print("Y: "); Serial.print(event.acceleration.y); Serial.print("  ");Serial.print("Z: "); Serial.print(event.acceleration.z); Serial.println("  ");delay(500);
}

实验结果

打开串口监视器,复位ESP32开发板,若传感器正常,接线无误,则会打印出ADXL345初始化成功,并读取到X、Y、Z三轴的加速度值,摇晃传感器数值会发生相应变化。若传感器或接线不正常,则会打印出提示无法找到ADXL345传感器。
在这里插入图片描述

相关文章:

  • 一键直达:用n8n打造谷歌邮箱到Telegram的实时通知流
  • 贪心算法day10(无重叠区间)
  • 信息系统项目管理师-工具名词解释(中)
  • [Lc] 最长公共子序列 | Fenwick Tree(树状数组):处理动态前缀和
  • Linux 415 XSHELL(需解决) no enable repos 配置静态IP
  • 【无标题】win7和win11双系统共存
  • groovy运行poi包处理xlsx文件报NoClassDefFoundError
  • linux下编译grpc
  • OpenJUMP:一个开源的桌面地理信息系统(GIS)软件
  • IDEA远程Debug调试
  • 拓扑光子学:光世界的“量子霍尔革命”
  • QT继承Widget对象如何绘制圆角矩形
  • Qt 自定义控件
  • 说说什么是幂等性?
  • 小事务架构下的业务完整性保障:基于业务处理记录与补偿机制的技术实现
  • 两类中断控制器处理流程_链式和层级
  • 深度大脑:AI大模型的设计与运行原理
  • Profibus DP转Modbus RTU网关配置秘籍
  • 云服务模式全知道:IaaS、PaaS、SaaS与DaaS深度解析
  • 【小白训练日记——2025/4/15】
  • 云南巧家警方抓获一名网逃人员:带70余万现金“隐居”山洞,昼伏夜出
  • 工人日报评一些旅行社不收记者律师:“拒客黑名单”暴露心虚病
  • 南京信息工程大学商学院讲师李玮玮逝世,终年45岁
  • 长三角议事厅·周报|服务业扩大开放:长三角六城联动新探索
  • 错失两局领先浪费赛点,王楚钦不敌雨果无缘世界杯男单决赛
  • 北京:义务教育阶段入学将积极为多孩家庭长幼随学创造条件