Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

MSP430G2553, czujnik HIH6130, brak komunikacji przez I2C

Ruhu 28 Maj 2012 19:48 1881 3
  • #1 28 Maj 2012 19:48
    Ruhu
    Poziom 2  

    Witam.
    Potrzebuję oprogramować czujnik wilgotności HIH6130. Czujnik komunikuje się z MSP430G2553 przez magistralę I2C. Z technical note czujnika wynika że sprawa sprowadza się do wysłania sygnału startu, następnie do wysłania adresu czujnika (tu 0x27). W efekcie powinniśmy otrzymać 4 bajty danych (2bajty wilgotność, 2 bajty temp). Napisałem taki program i niestety nic nie pojawia się w buforze. Sprawdzałem dzisiaj przebiegi na oscyloskopie i okazało się że nadawany jest tylko bit startowy, bez adresu. Czujnik podłączyłem zgodnie z datasheetem (SCL i SDA przez 2.2kΩ) Program kompiluje się, ale nic z tego nie wynika. Bardzo bym prosił o pomoc.

    Program:

    Kod: c
    Zaloguj się, aby zobaczyć kod


    Edit:
    Jeszcze raz sprawdziłem przebiegi i okazało się że to co widzę to nie jest bit startowy. MSP nie daje nic przez I2C. Wyczytałem też że nie trzeba linii SCL i SDA podciągać do napięcia zasilania, może ktoś to potwierdzić? Widze małe zainteresowanie, chyba MSP430 nie jest popularny ;/
    Proszę na przyszłość używać tagu [syntax=C]Kod tu...[/syntax].
    Poprawiłem, LordBlick

    0 3
  • #2 12 Sie 2012 14:36
    tm3k-
    Poziom 7  

    Czy autorowi udało się rozwiązać problem?
    U mnie (i2c g2553) również widoczna jest tylko sekwencja startowa przy pomiarach oscyloskopem.

    Rezystory pull-up muszą być. Najlepiej zastosować coś koło 10K. Można to podpiąć pod Vcc MSP. Dla pewności połączyłem także masy. Jak widać problem leży w czym innym.

    0
  • #3 13 Sie 2012 15:20
    Ruhu
    Poziom 2  

    Spróbowałem zrobić to programowo, w sumie to zadziałało, ale nie do końca poprawnie. Czujnik dawał odpowiedź, ale nie dawał zera. Na oscyloskopie to trochę dziwnie wyglądało bo był stan wysoki i taki w połowie heh.

    Tu kod:


    Kod: C
    Zaloguj się, aby zobaczyć kod

    0
  • #4 13 Sie 2012 23:23
    tm3k-
    Poziom 7  

    Super że sie podzieliłeś bo właśnie miałem się zabierać do programowej obsługi ale strasznie mi się nie chciało :D (mimo że kod jest raczej banalny) Niebawem potestuję i dam znać jak u mnie ;)

    0