连续读出ADXL345内部加速度数据,地址范围0x32~0x37

//连续读出ADXL345内部加速度数据,地址范围0x32~0x37

//

//*********************************************************

void Multiple_read_ADXL345(void)

{   uchar i;

ADXL345_Start();                          //起始信号

ADXL345_SendByte(SlaveAddress);           //发送设备地址+写信号

ADXL345_SendByte(0x32);                   //发送存储单元地址,从0x32开始

ADXL345_Start();                          //起始信号

ADXL345_SendByte(SlaveAddress+1);         //发送设备地址+读信号

for (i=0; i<6; i++)                      //连续读取6个地址数据,存储中BUF

{

BUF[i] = ADXL345_RecvByte();          //BUF[0]存储0x32地址中的数据

if (i == 5)

{

ADXL345_SendACK(1);                //最后一个数据需要回NOACK

}

else

{

ADXL345_SendACK(0);                //回应ACK

}

}

ADXL345_Stop();                          //停止信号

Delay5ms();

}

(0)

相关推荐