Skocz do zawartości

Moduł LSM303D problem z komunikacją


Czaro

Pomocna odpowiedź

Witam, pracuję z modułem LSM303D. Napisałem krótki sketch do sprawdzenia połączenia (I2C). Przy odczytaniu rejestru WHO AM I moduł wypluwa same jedynki 0xff zamiast 0x49. Podłączyłem się pod A5 i A4 podciągając rezystorami 4k7 pod 3v3. Nie mam pomysłu jak to naprawić

#include <Wire.h>
#define adressWrite 0x3a //adress of device while SDO connected to the VDD
#define adressRead 0x3b
#define regAdress 0b0001111

uint8_t who_am_i;
//uint8_t deviceAdress;
void setup()
{
 Wire.begin();
 Serial.begin(9600);
}

void loop()
{
 Wire.beginTransmission(adressWrite);
 Wire.write(byte(regAdress));
 //deviceAdress = Wire.read();
 Wire.endTransmission(adressWrite);
 Wire.beginTransmission(adressRead);
 Wire.requestFrom(adressRead, 8 );

 who_am_i = Wire.read();
 Wire.endTransmission(adressRead);
 //Serial.println(deviceAdress);
 Serial.println(who_am_i);
 delay(100);
}
Link do komentarza
Share on other sites

Układów z początkiem nazwy 303D jest kilka rodzajów i bardzo różnią się interfejsem - w szczególności adresami I2C i położeniem wewnętrznych rejestrów. Może zamiast rozkminiać takie szczegóły, użyj gotowej biblioteki obsługującej wszystkie odmiany 303:

https://github.com/pololu/lsm303-arduino

Są tam też przykłady użycia - wyglądają dość prosto.

Czy Twoje Arduino pracuje z 5V? Bo ten czujnik tego nie lubi. Upewnij się, że biblioteka nie włącza rezystorów pullup na pinach I2C procesora.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.