|
小弟的L3G4200D陀螺仪初始化如下:
writeRegister(L3G4200D_Address, CTRL_REG1, 0x0F);
writeRegister(L3G4200D_Address, CTRL_REG2, 0x00);
writeRegister(L3G4200D_Address, CTRL_REG3, 0x08);
writeRegister(L3G4200D_Address, CTRL_REG4, 0x10);
writeRegister(L3G4200D_Address, CTRL_REG5, 0x00);
读取的数据代码如下:
int xMSB = readRegister(L3G4200D_Address, 0x29);
int xLSB = readRegister(L3G4200D_Address, 0x28);
int yMSB = readRegister(L3G4200D_Address, 0x2B);
int yLSB = readRegister(L3G4200D_Address, 0x2A);
int zMSB = readRegister(L3G4200D_Address, 0x2D);
int zLSB = readRegister(L3G4200D_Address, 0x2C);
静止不动时串口打印输出如下:
0 31 0 37 255 189
0 21 0 19 255 212
0 19 0 28 255 220
0 19 0 23 255 202
0 8 0 38 255 207
0 34 0 39 255 205
0 28 0 24 255 197
0 19 0 10 255 217
0 16 0 43 255 196
0 25 0 44 255 205
0 13 0 26 255 220
0 1 0 18 255 212
0 17 0 32 255 200
0 24 0 37 255 217
0 30 0 32 255 215
0 16 0 42 255 227
0 13 0 20 255 198
0 2 0 35 255 232
0 22 0 29 255 194
0 27 0 34 255 231
0 14 0 29 255 199
请问这个数据正常么?如果处理后按照
x = ((xMSB << 8) | xLSB);
这种显示,出来的数据变化貌似非常不对……
请各位达人指点下是数据问题还是我初始化或者别的地方有误?
谢谢! |
阿莫论坛20周年了!感谢大家的支持与爱护!!
你熬了10碗粥,别人一桶水倒进去,淘走90碗,剩下10碗给你,你看似没亏,其实你那10碗已经没有之前的裹腹了,人家的一桶水换90碗,继续卖。说白了,通货膨胀就是,你的钱是挣来的,他的钱是印来的,掺和在一起,你的钱就贬值了。
|