- Labornetzteil AliExpress    Werbung      
Ergebnis 1 bis 10 von 35

Thema: LSM303DLH 3D Compass and accelerometer Umrechnungsporblem

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    33
    Beiträge
    1.578
    Hi,

    du hast glaube ich einen Fehler beim einlesen! Durch das Overlay ersparst du dir das shiften, deswegen springen deine Werte (wegen dem Shiften) um den Wert 256 Bild  
    Probier mal so:
    Code:
    Dim Imx As Integer
    Dim Imy As Integer
    Dim Imz As Integer
    
    Dim Imx_tmp(2) As Byte At Imx Overlay
    Dim Imy_tmp(2) As Byte At Imy Overlay
    Dim Imz_tmp(2) As Byte At Imz Overlay
    
    Sub Magnet_readsensordata()    
     
    I2cstart    
    I2cwbyte Magnet_w_addr   
    I2cwbyte Out_x_h_m   
    I2cstart   
    I2cwbyte Magnet_r_addr     
    I2crbyte Imx_tmp(1) , Ack   
    I2crbyte Imx_tmp(2) , Ack    
    I2crbyte Imy_tmp(1) , Ack   
    I2crbyte Imy_tmp(2) , Ack    
    I2crbyte Imz_tmp(1) , Ack    
    I2crbyte Imz_tmp(2) , Nack    
    I2cstop  
    
    End Sub
    Kann sein, dass du zuerst das zweite Byte auslesen musst, das kommt drauf an, ob dein Sensor MSB oder LSB zuerst ausgibt.

    Gruß
    Chris

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.06.2010
    Ort
    Darmstadt
    Beiträge
    136
    Also Chris hab gerade mal deinen Code ausprobiert.
    wenn ich das mache bekomm ich ebenfalls immer wieder die selben Werte für Imx_tmp, Imy_tmp und Imz_tmp egal wie ich das Modul drehe und wende.

    Imx_tmp(1) = 255 und Imx_tmp(2) = 255
    Imy_tmp(1) = 1 und Imy_tmp(2) = 1
    Imz_tmp(1) = 0 und Imz_tmp(2) = 0

    Find das schon sehr merkwürdig...
    Es gibt keine Probleme, es gibt nur Lösungen

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    33
    Beiträge
    1.578
    Hi,

    also erstmal sind für dich die Variablen Imx, Imy und Imz relevant, die anderen solltest du nicht verändern oder irgendwo verwenden.
    Hast du den mal probiert, zuerst die zweite Variable der Arrays einzulesen?

    Gruß
    Chris

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.06.2010
    Ort
    Darmstadt
    Beiträge
    136
    also wenn du mit zweite variable der arrays meinst, dass ich I2cwbyte Out_x_l_m oder I2cwbyte Out_y_h_m als erstes auslese, das hab ich eben mal gemacht. aber keine veränderung. immer die gleichn werte.

    aber was meinst du mit die anderen nicht verändern oder verwenden?
    Es gibt keine Probleme, es gibt nur Lösungen

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    33
    Beiträge
    1.578
    Naja, die Variablen Imx_tmp(1) usw.. solltest du nicht verändern. Das sind nur Dummy-variablen, die eigentlich garnicht existieren. Es sind Zeiger, die auf die beiden Bytes der Variable Imx zeigen. Sie dienen hauptsächlich dazu, das einlesen der Sensorwerte zu verschnellern und machen das Shiften und addieren überflüßig.

    Gruß
    Chris

Ähnliche Themen

  1. 3D-Beschleunigungssensor LSM303DLH auslesen
    Von dariegel im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 6
    Letzter Beitrag: 19.08.2011, 16:55
  2. 3D-Accelerometer ADXL330
    Von BlueNature im Forum Vorstellungen+Bilder von fertigen Projekten/Bots
    Antworten: 22
    Letzter Beitrag: 14.02.2010, 00:16
  3. Accelerometer Empfehlung
    Von justin im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 5
    Letzter Beitrag: 19.10.2009, 15:15
  4. 3 Achsen Accelerometer
    Von Involut im Forum Sensoren / Sensorik
    Antworten: 13
    Letzter Beitrag: 11.04.2009, 14:00
  5. [ERLEDIGT] V2Xe 2-Axis Compass Modul
    Von Wredo2 im Forum Sensoren / Sensorik
    Antworten: 0
    Letzter Beitrag: 22.10.2004, 14:13

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

    Werbung      12V Akku bauen