初级会员

- 积分
- 170
- 金钱
- 170
- 注册时间
- 2012-7-12
- 在线时间
- 5 小时
|

楼主 |
发表于 2013-8-11 10:46:48
|
显示全部楼层
我在国外的MWC上也看到了同样的问题:
void ACC_init () {
i2c_writeReg(MPU6050_ADDRESS, 0x1C, 0x10); //ACCEL_CONFIG -- AFS_SEL=2 (Full Scale = +/-8G) ; ACCELL_HPF=0 //note something is wrong in the spec.
//note: something seems to be wrong in the spec here. With AFS=2 1G = 4096 but according to my measurement: 1G=2048 (and 2048/8 = 256)
//confirmed here: http://www.multiwii.com/forum/vi ... &start=10#p7480
#if defined(FREEIMUv04)
acc_1G = 255;
#else
acc_1G = 512;
#endif
这是MWC开源飞控作者的代码,他的加速度计的量程选择的是+-8g,理论上1G对应的ADC输出值为4096,但他实际的测量输出值也只有2048,跟我的问题基本上一样。现在我只能这么理解了:加速度的ADC为15位或者是国外所说的“I have found that the MPU-6050 accelerometer sensitivity is half that stated in the datasheet for all ranges; ie 1g output is ~1024, ~2048, ~4096 and ~8192 for ranges 16, 8, 4 and 2 g respectively.” |
|