xh;ADXL345_Rread(addrxl,&xl);ADXL345_Rread(addrxh,&xh);x=(short)(((uint16_t)xh<<8)+xl);printf("X:%d\r\n",x);}//读取Y轴数据voidADXL345_YTest(void){shortY;uint8_taddrYl=0x34;uint8_taddr
ADXL345支持SPI和I2C两种通讯方式,本例程采用的是I2C方式连接,官方推荐的I2C连接电路如下图示:从图中可以看出ADXL345的连接比较简单,外围器件只需要2个电容。若SDO/ALTADDRESS接地,则ADXL345的地址为0x53(不含最低位);若SDO/ALTADDRESS接高,则ADXL345的地址为0x1D(不含最低位); ADXL345的初始化步骤为:上电 --...
ADXL345_write(DATA_FORMAT,0x2B);//中断低电平有效,13位全分辨率模式,16g量程ADXL345_write(POWER_CTL,0x28);//链接使能,测量模式ADXL345_write(INT_ENABLE,0x00);//不使用中断ADXL345_write(OFSX,0x00); ADXL345_write(OFSY,0x00); ADXL345_write(OFSZ,0x00); } }voidADXL345_read_XYZ(short*x,...
上面的例子是以加速度传感器ADXL345芯片为例,其他芯片在使用I2C通信时,可能有细微的不同,但基本上都是这几种状态组合起来的。 2)stm32的I2C总线使用 Stm32带了硬件I2C,下面我们就使用stm32的硬件i2c读取加速度传感器ADXL345的数值。 我们仍然以串口的工程为基础,在它上面添加设置,如下图,选择I2C1接口,其他都默认...
ADXL345 从电路图中可以看到ADXL345芯片的ADDR地址线接在3.3V上,所以ADXL345的器件地址是:0x1D(不包含最低位),因此写入为:0x3A,读取为:0x3B 3. 软件设计 3.1 STM32CubeMX设置 RCC设置外接HSE,时钟设置为72M PC0/PC1设置为GPIO推挽输出模式、上拉、高速、默认输出电平为高电平 ...
通过这两步的连线,得到adxl345的读写地址为:写:0x3A 读:0x3B 二、CubeMX配置I2C 首先,我们选择一个可用的I2C 接下来,开启该I2C即可。 三、adxl345的读取操作 3.1 读取adxl345的设备id 阅读芯片手册可得读取0x00地址,我们可以得到他的设备id,并且这个地址只能读,如果得到的数据为0xE5 ...
ADXL345传感器是一种基于iMEMS技术的高性能3轴数字输出加速度传感器。其特点包括高分辨率,可变量程,高灵敏度,超低功耗以及小尺寸封装,使其在各种应用中脱颖而出。该传感器支持标准的I2C或SPI数字接口,并集成有32级FIFO存储和丰富的运动状态检测功能,适合需要高效数据处理和低功耗应用的场合。在具体应用...
本节我们介绍I2C总线,并使用stm32的I2C总线来访问加速度传感器ADXL345。 1)I2C基础知识 I2C总线通信比较适合设备内部各芯片间的通信,它只需要两根信号线。 I2C可以挂载多个主机和从机,通信总是由主机发起。每个从机都有唯一的地址,主机通过地址决定访问哪个从机。
ADXL345是ADI公司推出的3轴、数字输出的高精度加速度传感器,具备13位的分辨率,可选±2/4/8/16g的测量范围,能精确捕捉不到1.0°的倾斜角度变化。其具有标准的I2C或SPI数字接口,内置32级FIFO存储,以及多种状态检测和灵活中断机制等功能。在实际应用中,ADXL345的接线和使用方法需参照其官方文档和...
本设计由STM32F103C8T6单片机核心板+ADXL345重力加速度模块+压力限位开关+MQ135有害气体检测模块+蜂鸣器报警电路+WiFi模块电路+GPS模块电路+DHT11温湿度+电源电路组成。 1、通过ADXL345重力加速度检测井盖角度是否倾斜。 2、通过压力限位开关检测井盖是否移动,即如果压力限位开关弹开即井盖被移动,否则不被移动。 3、...