发新帖我要提问
123
返回列表
打印

为什么ADXL345的读数不正确?

[复制链接]
楼主: 与时俱进
手机看帖
扫描二维码
随时随地手机跟帖
41
郝英杰| | 2015-11-23 16:12 | 只看该作者 回帖奖励 |倒序浏览
与时俱进 发表于 2014-2-14 10:23
多字节数据读写的字节顺序搞错了。

楼主您好,我最近在用ADXL345做课程设计,用的I2C,现在有几个问题麻烦请教您。
我直接读取DATAX0~DATAZ1的数据,操作如下:
GravityData.Xout = (u16)I2C_ReadByte(DATAX1);
GravityData.Xout <<= 8;
GravityData.Xout += (u16)I2C_ReadByte(DATAX0);
我把这个GravityData.Xout数据直接通过串口打印,但是输出的数据只有正,没有负,我是13位分辨率,16g模式,数据手册说高四位为符号位,但我不知道怎么处理的好

使用特权

评论回复
42
郝英杰| | 2015-11-23 16:14 | 只看该作者
与时俱进 发表于 2014-2-14 10:23
多字节数据读写的字节顺序搞错了。

而且在这个模式下,敏感度是3.9mg/LSB,这个3.9是用1/256即1/2^8来得到的,13位分辨率不应该是1/2^13吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则