我一直试图使用MPU-6050 (特别是GY-521)与Arduino Nano v3.0,但我没有得到任何读数,当我试图用VCC和GND连接到Arduino上的数字引脚的MPU-6050。
当我把VCC和GND连接到Arduino上的5V或3V3和GND时,我可以从陀螺仪/加速度计中得到读数。当我把它们连接到数字引脚上时,我会得到读数,但它们都是零,即使传感器受到震动,值也保持在零。我在数字引脚设置中使用的代码如下:
pinMode(powerpin, OUTPUT);
pinMode(groundpin, OUTPUT);
digitalWrite(powerpin, HIGH);
digitalWrite(groundpin, LOW);当我用相同的引脚给加速度计ADXL377供电时,我就可以得到没有问题的读数。这是一个问题,电流的数额,可以通过数字引脚?看来纳米上的数字引脚最多可以吐出40 3mA,而MPU-6050只需要3mA,所以我假设电流不是问题。任何帮助都会很好。
发布于 2015-04-01 18:21:01
我也有同样的问题,这就是为什么它是一个问题。首先,低连接到GND是一个好主意。另一件事:当你把你的引脚设置得很高时:
pinMode(powerpin, OUTPUT);
digitalWrite(powerpin, HIGH);过一段时间它会涨得很高,所以你应该在以下几个方面加些延迟:
pinMode(powerpin, OUTPUT);
digitalWrite(powerpin, HIGH);
delay(10);
Wire.begin();
Wire.beginTransmission(0x68);
Wire.write(0x6B); // PWR_MGMT_1 register
Wire.write(0); // set to zero (wakes up the MPU-6050)
Wire.endTransmission(true);所以你需要得到能量然后唤醒设备。Ab.10毫秒是一个很好的价值。
在此之后,你可以正常阅读(如果你不经常阅读的话,最好是睡觉设备)。
https://stackoverflow.com/questions/29371430
复制相似问题