while(1)
{
if(t%10==0)//每100ms读取一次
{
//得到X,Y,Z轴的加速度值(原始值)
ADXL345_Read_Average(&x,&y,&z,10); //读取X,Y,Z三个方向的加速度值
Adxl_Show_Num(60+48,170,x,0); //显示加速度原始值
Adxl_Show_Num(60+48,190,y,0);
Adxl_Show_Num(60+48,210,z,0);
//得到角度值,并显示
angx=ADXL345_Get_Angle(x,y,z,1);
angy=ADXL345_Get_Angle(x,y,z,2);
angz=ADXL345_Get_Angle(x,y,z,0);
Adxl_Show_Num(60+48,230,angx,1); //显示角度值
Adxl_Show_Num(60+48,250,angy,1);
Adxl_Show_Num(60+48,270,angz,1);
}
key=KEY_Scan(0);
if(key==KEY_UP)
{
LED1=0;//绿灯亮,提示校准中
ADXL345_AUTO_Adjust((char*)&x,(char*)&y,(char*)&z);//自动校准
LED1=1;//绿灯灭,提示校准完成
}
delay_ms(10);
t++;
if(t==20)
{
t=0;
LED0=!LED0;
}
}
光盘源码里有上边一段程序,
其中
//得到X,Y,Z轴的加速度值(原始值)
ADXL345_Read_Average(&x,&y,&z,10); //读取X,Y,Z三个方向的加速度值
Adxl_Show_Num(60+48,170,x,0); //显示加速度原始值
Adxl_Show_Num(60+48,190,y,0);
Adxl_Show_Num(60+48,210,z,0);
也就是说得出的是ADXL的原始值,
1、这个原始值和加速度g,有什么关系?
2、 如果想测量动态的加速度,该怎么修改呢?
|