ADI 技术
直播中

康振清

7年用户 185经验值
私信 关注
[问答]

ADXL345读取出设备ID为0XE5是正确的但读出的x,y,z高八位数据

读取出设备ID为0XE5是正确的 ,但是读出的x,y,z高八位数据((DATAX1_ADDR))  不是0X00就是0XFF, 这个正常吗 ,使用的13位 右对齐


  BUF[0] = ADXL345_RD_Reg(DATAX0_ADDR);//低八位数据位x
       delay_us(1);   
    BUF[1] = ADXL345_RD_Reg(DATAX1_ADDR);//高八位
       delay_us(10);
      
    BUF[2] = ADXL345_RD_Reg(DATAY0_ADDR);//y
       delay_us(1);   
    BUF[3] = ADXL345_RD_Reg(DATAY1_ADDR);
       delay_us(10);
      
    BUF[4] = ADXL345_RD_Reg(DATAZ0_ADDR);//z
       delay_us(1);   
    BUF[5] = ADXL345_RD_Reg(DATAZ1_ADDR);   
       delay_us(10);

回帖(2)

康振清

2018-9-21 14:56:35
temp = (BUF[1] << 8) + BUF[0];
2、符号位4位是不是要不0 要不f?
举报

刘悦竹

2018-9-21 15:13:20
右对齐,高4位都是符号位,不是全0就是全1。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分