Official Hobby Components Online Store | Buy Electronic Kits, Components, Boards, Shields, Modules

MPU-6050 GY-521 liest nicht? Häufige I2C-Probleme lösen

MPU-6050 GY-521 liest nicht? Häufige I2C-Probleme lösen

By Official Hobby Components Online Store | Buy Electronic Kits, Components, Boards, Shields, Modules | Published: 2026-10-15

Category: Tipps & Pflege

Fehlerbehebung bei einem GY-521 MPU-6050, der über I2C keine Daten liefert: Verkabelung prüfen, einen I2C-Scanner ausführen, Adresse 0x68 bestätigen und Probleme mit dem 3.3V-Pegel beheben.

Kurze Antwort

Wenn Ihr MPU-6050 keine Daten zurückgibt, führen Sie zuerst einen I2C-Scanner aus, um zu bestätigen, dass die Adresse 0x68 ist. Wenn der Scanner nichts findet, prüfen Sie die SDA/SCL-Verkabelung und die Stromversorgung und verifizieren Sie dann die Logikpegel: Das GY-521-Modul erwartet 3.3V I2C, daher benötigen Sie mit einem 5V Arduino einen Pegelwandler oder Pull-ups auf 3.3V. Wenn der Scanner 0x68 sieht, aber Lesevorgänge fehlschlagen, liegt das Problem meist an der Bibliothekskonfiguration oder fehlenden Pull-ups.

Stelle sicher, dass der GY-521 korrekt angeschlossen und mit Strom versorgt ist

Das GY-521 Breakout hat vier wesentliche Pins: VCC, GND, SDA, SCL. Versorgen Sie es mit 3.3 V, wenn Ihr Board dies bereitstellt; der Regler und das Level Shifting des Moduls sind minimal, und 5 V an VCC können den MPU-6050 beschädigen. Verbinden Sie SDA mit dem SDA-Pin Ihres Mikrocontrollers und SCL mit SCL. Bei einem Arduino Nano V3.0 ist SDA A4 und SCL A5. Bei einem WeMos D1 mini ist SDA D2 und SCL D1. Halten Sie die Kabel kurz und sicher—lose Jumper sind eine häufige Ursache für unregelmäßige Messwerte.

Wenn Sie ein 5V-Board wie das Arduino Nano verwenden, sind die I2C-Leitungen des GY-521 nicht 5V-tolerant. Sie müssen entweder einen Pegelwandler verwenden oder das Modul mit 3.3V betreiben und sicherstellen, dass die Pull-ups auf 3.3V und nicht auf 5V gehen. Viele GY-521-Boards enthalten 4.7k-Pull-ups zu VCC; wenn VCC 5V beträgt, setzen diese Pull-ups den MPU-6050 auf SDA/SCL 5V aus. Prüfen Sie Ihr Modul auf integrierte Pull-up-Widerstände und ziehen Sie deren Entfernung in Betracht, wenn Sie mit 5V versorgen, wobei dies eine heikle Arbeit ist.

  • Betreiben Sie den GY-521 mit 3.3 V, nicht mit 5 V.
  • Beim Arduino Nano: SDA=A4, SCL=A5.
  • Beim WeMos D1 mini: SDA=D2, SCL=D1.
  • Verwenden Sie einen Pegelwandler für 5V-Platinen.

Führen Sie einen I2C-Scanner aus, um zu prüfen, ob der Sensor reagiert

Ein I2C-Scanner-Sketch scannt alle Adressen und meldet jedes Gerät, das antwortet. Laden Sie einen Standard-Scanner auf Ihr Board, öffnen Sie den seriellen Monitor bei 9600 oder 115200 Baud und suchen Sie nach einem Gerät bei 0x68. Die Standardadresse des MPU-6050 ist 0x68, wenn AD0 low ist; wird AD0 auf high gezogen, wird die Adresse zu 0x69. Wenn der Scanner nichts findet, liegt das Problem an der Verkabelung, der Stromversorgung oder den Pull-ups. Wenn er 0x68 findet, aber Ihre Sensor-Bibliothek fehlschlägt, liegt das Problem wahrscheinlich im Code oder in den Bibliothekseinstellungen.

Wenn der Scanner 0x68 anzeigt, Sie aber trotzdem keine Daten erhalten, versuchen Sie den Beispielsketch aus der von Ihnen verwendeten Bibliothek (z. B. Adafruit_MPU6050 oder MPU6050_tockn). Stellen Sie sicher, dass Sie die richtige begin()-Funktion aufrufen und dass die I2C-Adresse in Ihrem Code mit 0x68 übereinstimmt. Einige Bibliotheken verwenden standardmäßig 0x68, bei anderen müssen Sie sie angeben. Prüfen Sie außerdem, ob Sie auf Boards mit mehreren Bussen nicht einen anderen I2C-Bus verwenden (Wire vs. Wire1).

  • Scanner findet 0x68: Verkabelung und Stromversorgung sind in Ordnung; konzentrieren Sie sich auf den Code.
  • Scanner findet 0x69: AD0 ist hoch; Adresse im Code anpassen.
  • Scanner findet nichts: Prüfen Sie SDA/SCL, Stromversorgung und Pull-up-Widerstände.

Behebung von 0x68-Konflikten und Pull-up-Widerstandsproblemen

Wenn der Scanner 0x68 erkennt, aber Ihr Code trotzdem fehlschlägt, verwendet möglicherweise ein anderes Gerät am Bus dieselbe Adresse. Häufige I2C-Geräte wie einige OLED-Displays oder andere Sensoren können ebenfalls unter 0x68 liegen. Trennen Sie andere I2C-Geräte und testen Sie den MPU-6050 allein. Wenn er allein funktioniert, liegt ein Adresskonflikt vor. Sie können die Adresse des MPU-6050 auf 0x69 ändern, indem Sie AD0 auf High ziehen, aber das erfordert einen freien Pin oder eine Lötbrücke.

Fehlende oder falsche Pull-up-Widerstände können ebenfalls zu Fehlern führen. Das GY-521 enthält normalerweise 4.7k-Pull-ups zu VCC. Wenn Sie mit 3.3V versorgen, sind diese Pull-ups für 3.3V-Logik korrekt. Wenn Sie einen Pegelwandler verwenden, stellen Sie sicher, dass die Hochseite Pull-ups zu 5V und die Niedrigseite zu 3.3V hat; viele Pegelwandler enthalten diese. Wenn Sie die Pull-ups des Moduls entfernt haben oder einen nackten MPU-6050-Chip verwenden, fügen Sie externe 4.7k-Widerstände von SDA und SCL zu 3.3V hinzu.

  • Trennen Sie andere I2C-Geräte, um Adresskonflikte auszuschließen.
  • Ziehen Sie AD0 nach oben, um die Adresse in 0x69 zu ändern.
  • Fügen Sie externe 4.7k-Pull-ups hinzu, falls Ihr Modul keine besitzt.

Wann Sie innehalten und einen anderen Ansatz wählen sollten

Wenn Sie Verkabelung, Stromversorgung, Adresse und Pull-ups überprüft haben und der Scanner immer noch nichts findet, könnte das Modul beschädigt sein. Das MPU-6050 ist empfindlich gegenüber Überspannung; wenn es versehentlich an 5 V an VCC oder SDA/SCL angeschlossen wurde, ist es möglicherweise defekt. In diesem Fall ist der Austausch des GY-521 der praktischste Schritt. Wenn Sie eine robustere Lösung für 5-V-Systeme benötigen, ziehen Sie einen 3.3-V-nativen Mikrocontroller wie den WeMos D1 mini in Betracht, der Level-Shifting vollständig vermeidet. Für Projekte, die eine präzise Bewegungsverfolgung erfordern, könnte ein High-End-IMU mit integrierter 5-V-Toleranz Debugging-Zeit sparen.

  • Wenn alle Prüfungen fehlschlagen, liegt möglicherweise ein beschädigter Sensor vor.
  • Ziehen Sie ein 3.3V-Board in Betracht, um Pegelverschiebung zu vermeiden.
  • Für anspruchsvolle Anforderungen suchen Sie nach einer IMU mit einer Toleranz von 5V.

Diagnose-Checkliste

  • Kein Gerät vom I2C-Scanner gefunden: Prüfen Sie die Stromversorgung (3.3V), die SDA/SCL-Verbindungen und die Pull-up-Widerstände. Stellen Sie sicher, dass das Modul nicht beschädigt ist. Wenn Verkabelung und Stromversorgung korrekt sind, tauschen Sie das Modul aus.
  • Der Scanner findet 0x68, aber die Bibliothek schlägt fehl: Überprüfen Sie die begin()-Funktion der Bibliothek und die Adresseinstellung. Versuchen Sie eine andere Bibliothek oder einen anderen Beispielsketch. Wenn der Code korrekt ist, prüfen Sie auf Probleme mit der I2C-Bus-Geschwindigkeit; versuchen Sie 100kHz.
  • Unregelmäßige oder verrauschte Messwerte: Kürzen Sie die Drähte, fügen Sie einen Entkopplungskondensator (0.1uF) zwischen VCC und GND hinzu und stellen Sie solide Verbindungen sicher. Wenn die Störgeräusche weiterhin auftreten, ziehen Sie einen anderen Sensor oder abgeschirmte Kabel in Betracht.

Produktfakten

  • GY-521 MPU-6050 Modul 3 Achsen-Gyroskop + 3 Achsen-Beschleunigungsmodul: Chip: MPU-6050; Stromversorgung: 3~5V; Kommunikationsmodus: Standard-IIC-Kommunikationsprotokoll; Chip mit integriertem 16-Bit-AD-Wandler. Der Versorgungsbereich von 3~5V wird oft fälschlich als 5V I2C-tolerant gelesen; die I2C-Leitungen sind nicht 5V-tolerant, daher ist ein Pegelwandler erforderlich, wenn ein 5V-Mikrocontroller verwendet wird.
  • Arduino-kompatibles Nano V3.0 mit GRATIS USB-Kabel: Arduino-kompatibles Nano V3.0 auf Basis des ATmega328; ohne DC-Stromanschluss; funktioniert mit Mini-B-USB-Kabel. Dieses 5V-Board ist ein üblicher Host für das GY-521; seine I2C-Pins (A4/A5) arbeiten mit 5V-Logik, daher müssen Sie den Pegel verschieben oder den Sensor mit 3.3V versorgen, um Schäden zu vermeiden.
  • WeMos D1 Mini-Prototyping-Shield: WeMos D1 mini Prototyping Shield, entwickelt für WeMos D1 mini und mini Pro; geliefert mit 3 Sets Stiftleisten (Löten erforderlich); ermöglicht Stapelung. Das WeMos D1 mini ist ein 3.3V-Board und kann daher direkt an das GY-521 angeschlossen werden, ohne einen Pegelwandler. Das vereinfacht die I2C-Verkabelung und reduziert Fehlerquellen.

Shop Related Products

GY-521 MPU-6050 Modul 3-Achsen-Gyroskop + 3-Achsen-Beschleunigungssensor Modul

GY-521 MPU-6050 Modul 3-Achsen-Gyroskop + 3-Achsen-Beschleunigungssensor Modul

$1.16 $1.66

Shop Now
WeMos D1 mini Prototyping Shield

WeMos D1 mini Prototyping Shield

$0.88 $1.24

Shop Now
Arduino-kompatibles Nano V3.0 mit GRATIS USB-Kabel

Arduino-kompatibles Nano V3.0 mit GRATIS USB-Kabel

$5.02 $7.49

Shop Now