|
楼主 |
发表于 2012-4-13 10:30:47
|
显示全部楼层
MrLCL 发表于 2012-4-13 08:09
要么你采用差补的方法,要么你就比较复杂的PID,顺便提醒你,你得找个基准,作为水平的参考。能发一个L3G ...
初始化的时候采集一组数据作为基准的 ,下面是初始化
IIC_WriteReg(L3G4200D_ADDR,CTRL_REG1,0x1F); // CTRL_REG1 100Hz,带宽25,三轴都使能
IIC_WriteReg(L3G4200D_ADDR,CTRL_REG2,0x00); // CTRL_REG2 正常模式,高通滤波器截止频率为8HZ
IIC_WriteReg(L3G4200D_ADDR,CTRL_REG3,0x00); // CTRL_REG3 禁止Int1与Int2上的所有中断。这两个管脚此处没用
IIC_WriteReg(L3G4200D_ADDR,CTRL_REG4,0x20); // CTRL_REG4 输出范围2000dps,自测试关
IIC_WriteReg(L3G4200D_ADDR,CTRL_REG5,0x50); // CTRL_REG5 FIFO使能,高通滤波器使能
GyroFIFOMode(FIFO_STREAM_MODE); |
|