我坚持这种奇怪的行为,我在我的项目中使用MPU6050模块 当我读到WHO_AM_I寄存器时,我得到0x68值,我也禁用了SLEEP 当我写一些配置寄存器&读它我得到正确的数据,这意味着我的I2C通信工作正常
现在的问题是,当我尝试读取陀螺仪或Acc数据时,我总是得到零 我不知道出了什么问题你能告诉我这可能是什么原因吗?
我正在使用以下代码
读取传感器值 GyroX.byte[1] = ReadByte(MPU6050_RA_GYRO_XOUT_L);
//Delay();
GyroX.byte[0] = ReadByte(MPU6050_RA_GYRO_XOUT_H);
//Delay();
GyroY.byte[0] = ReadByte(MPU6050_RA_GYRO_YOUT_H);
//Delay();
GyroY.byte[1] = ReadByte(MPU6050_RA_GYRO_YOUT_L);
//Delay();
GyroZ.byte[0] = ReadByte(MPU6050_RA_GYRO_ZOUT_H);
//Delay();
GyroZ.byte[1] = ReadByte(MPU6050_RA_GYRO_ZOUT_L);
//Delay();
AccX.byte[0] = ReadByte(MPU6050_RA_ACCEL_XOUT_H);
//Delay();
AccX.byte[1] = ReadByte(MPU6050_RA_ACCEL_XOUT_L);
//Delay();
AccY.byte[0] = ReadByte(MPU6050_RA_ACCEL_YOUT_H);
//Delay();
AccY.byte[1] = ReadByte(MPU6050_RA_ACCEL_YOUT_L);
//Delay();
AccZ.byte[0] = ReadByte(MPU6050_RA_TEMP_OUT_H);
//Delay();
AccZ.byte[1] = ReadByte(MPU6050_RA_TEMP_OUT_L);
谢谢大家
答案 0 :(得分:0)
确保以下引脚连接到具有下述额定值的电容器,如数据表中所示。
REGOUT:稳压滤波电容连接。稳压器滤波电容(引脚10),陶瓷,X7R,0.1μF±10%,2V。
CPOUT:电荷泵电容连接。电荷泵电容(引脚20),陶瓷,X7R,2.2nF±10%,50V。