Witam wszystkich serdecznie. Jako że jestem tu na forum absolutnie nowy, kilka słów o sobie. Nazywam się Bartek, mam 23 lata. Pochodzę z okolic Żywca i obecnie studiuję Mechatronikę na Politechnice Wrocławskiej.
Zwracam się do Was drodzy forumowicze z problemem. Jakiś czas temu zakupiłem moduł akcelerometru firmy Pololu, oparty na memsie LSM303D. Komunikacja odbywa się po TWI/I2C. Udało mi się odczytać dane z akcelerometru, lecz są one bardzo niestabilne. Wartości skaczą, nie nadają się do dalszego wykorzystania. Wyniki wyświetlam na LCD. Wykorzystuję płytkę ATB.
Wykorzystuje gotowe biblioteki od Pana Mirosława Kardasia. Poniżej zamieszczam bibliotekę do LSM303D oraz main.c
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Poniżej biblioteka do obsługi LSM303D:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Kod ma za zadanie wyświetlenie przyspieszenie dla osi X, z tym że tak jak pisałem wartości bardzo szybko się zmieniają...
Zależy mi na pomiarze kierunku działania przyspieszenia ziemskiego, więc pomiar jest raczej statyczny.
Kod jest zlepkiem programów które znalazłem na forach internetowych.
Bym zapomniał, wykorzystuje uC ATmega 32A, akcelerometr znajduje się na płytce stykowej.
Z góry wszystkim dziękuję za pomoc.
Serdecznie pozdrawiam
Bartek