|
发表于 2014-4-10 13:05:26
|
显示全部楼层
平均法对数据
- /*均值滤波*/
- void Data_Filter(int16 Acc_Buf[3],int16 Gyro_Buf[3])
- {
- unsigned char num;
- int16 Ax_Temp=0,Ay_Temp=0,Az_Temp=0,Gx_Temp=0,Gy_Temp=0,Gz_Temp=0;
- int32 Ax_Sum=0,Ay_Sum=0,Az_Sum=0,Gx_Sum=0,Gy_Sum=0,Gz_Sum=0;
- for(num=0;num<20;num++)
- {
- READ_MPU6050(Acc_Buf,Gyro_Buf);
- Ax_Temp = Acc_Buf[0];
- Ay_Temp = Acc_Buf[1];
- Az_Temp = Acc_Buf[2];
- Gx_Temp = Gyro_Buf[0];
- Gy_Temp = Gyro_Buf[1];
- Gz_Temp = Gyro_Buf[2];
- Ax_Sum += Ax_Temp;
- Ay_Sum += Ay_Temp;
- Az_Sum += Az_Temp;
- Gx_Sum += Gx_Temp;
- Gy_Sum += Gy_Temp;
- Gz_Sum += Gz_Temp;
- }
- Ax = Ax_Sum / 20 - ax_offest;
- Ay = Ay_Sum / 20 - ay_offest;
- Az = Az_Sum / 20 - az_offest;
- Gx = Gx_Sum / 20 - gx_offest;
- Gy = Gy_Sum / 20 - gy_offest;
- Gz = Gz_Sum / 20 - gz_offest;
- }
复制代码
我也做了 |
|