丁丁

ADXL345的调试

0
阅读(4211)

ADXL345的调试技巧

在上一节里我介绍到我用IIC接口来读取数据,有了IIC的读取函数,就可以对ADXL345进行测试了。先来一个读取ID,并将ID发送到串口助手,如果ID读取正确,那么IIC接口就基本上没有问题了。

首先建立ADXL345的结构体

#define ADXL345_SLA  0X53

tI2CM_DEVICE ADXL345={ADXL345_SLA,0X00,(void *)0,0};

//向ADXL345里面写数据

void write_adxl345_reg(unsigned long uladdr,unsigned char cmd_data)

{

         unsigned long ulStatus;

         I2CM_DeviceDataSet(&ADXL345,uladdr,&cmd_data,1);

         I2CM_DataSend(&ADXL345);

        

         ulStatus = I2CM_DataSend(&ADXL345);

         I2CM_Error(ulStatus);

}

//读取ADXL345寄存器里的数据

unsigned char read_adxl345_reg(unsigned long uladdr)

{

         unsigned long ulStatus;

         unsigned char cmd_data;

         I2CM_DeviceDataSet(&ADXL345,uladdr,&cmd_data,1);

         I2CM_DataRecv(&ADXL345);

         ulStatus = I2CM_DataSend(&ADXL345);

         I2CM_Error(ulStatus);

         return(cmd_data);

}

ADXL345的读ID程序如下:

Uchar ADXL345_Read_ID;

 

ADXL345_Read_ID= read_adxl345_reg(0x00);

If(ADXL345_Read_ID==0Xe5)

{

         uartPuts(" Congratulation!Your ID is correct and the ID is : 0xe5 \r\n");

}

Else

{

         uartPuts(“Sorry! Your ID is not right ! Please check the hardware or your software!”)

}

这样,就可以在串口终端看到提示信息了,如果ID读取正确,就可以开始下一步的工作啦!