LabVIEWForum.de
IMU mittels I2C am myRIO - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Module (/Forum-LabVIEW-Module)
+---- Forum: LabVIEW RealTime (/Forum-LabVIEW-RealTime)
+---- Thema: IMU mittels I2C am myRIO (/Thread-IMU-mittels-I2C-am-myRIO)



IMU mittels I2C am myRIO - ngblume - 21.05.2014 09:59

Hallo zusammen,

ich habe eine Frage aus dem Bereich I2C (falls die Kategorie falsch ist, bitte um Verschiebung; diese schien mir am sinnvollsten).
Ich verwende einen myRIO um mittels der am MXP Connector A vorhandenen I2C Schnittstelle eine IMU auszulesen (http://www.watterott.com/de/MinIMU-9-v3).
Hardware Anschluss funktioniert und mittels des Accelerometer-Beispiel aus dem Project Essentials Guide zum myRIO [url=(http://www.ni.com/academic/myrio/project-guide.pdf](http://www.ni.com/academic/myrio/project-guide.pdf[/url], http://www.ni.com/academic/myrio/project-guide-vis.zip) habe ich auch eine Software entwickelt.

Problem:
Wenn ich die 6 Bytes für die High und Low-Werte auslesen will mittels myRIO I2C WriteRead.vi, würde ich nach dem oben erwähnten Beispiel die Adresse des ersten Bytes (in diesem Fall 28) schreiben und dann 6 Bytes lesen. Leider liest mein Code dann 6x das erste Byte. Lass ich das WriteRead.vi in einer For-Schleife laufen und erhöhe die Adresse und lesen nur jeweils ein Byte, dann funktioniert es einwandfrei.

Die angehängte Datei "Acc_Example.vi" zeigt die Beispiel-Implementierung mittels "Erstes byte schreiben, alle 6 lesen".
[attachment=49787]
Das Bild "Acc_Example.png" zeigt den entscheidenden Abschnitt.
[attachment=49789]

Die angehängte Datei "IMU-I2C-ReadIn.vi" zeigt meine Implementierung mittels For-Loop.
[attachment=49788]
Das Bild "IMU-I2C-ReadIn.png" zeigt den entscheidenden Abschnitt.
[attachment=49790]

Hat jemand eine Idee, wieso die erste Implementierung bei dieser IMU nicht funktioniert??
Vielen Dank für jede Idee!

Grüße
Niels Göran

P.S.: Hier wird ebenfalls der Ansatz aus dem Beispiel als Lösung diskutiert...