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

Arduino Leonardo - połączenie z modułem BTM-222

dudinr1 20 Sty 2014 13:08 2184 0
  • #1 20 Sty 2014 13:08
    dudinr1
    Poziom 10  

    Witam,
    jak w temacie, posiadam Arduino leonardo i zakupiłem w ramach nauki moduł BTM-222.

    Nota katalogowa modułu:
    Link

    Ustaliłem piny na module:
    Arduino Leonardo - połączenie z modułem BTM-222
    1- GND
    2- RXD
    3- TXD
    4- wyprowadzenie pinu 28 lub 30
    5- +5V

    A zabawę postanowiłem zacząć od aplikacji na Androida ArduDroid:
    Link


    Problem polega na tym, że w żaden sposób nie mogę przesłać danych do Arduino, najprostszy program mający zapalać diodę na pinie 13 również nie działa.

    Aplikacja łączy się z modułem, jednak nic z tego nie wynika.

    Próbowałem już dzielnika napięcia w celu uzyskania sygnału 3,3V, nie zadziałało, w tym przypadku chyba nie jest to potrzebne ale starałem się znaleźć rozwiązanie.
    Czy ktoś łączył ten moduł z Arduino leonardo i może podzielić się swoimi doświadczeniami?


    Edit1:
    Doczytałem dość ważną rzecz:
    Not all pins on the Leonardo support change interrupts,
    so only the following can be used for RX:
    8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI).

    Rozpiska pinów, dla mnie 14, 15 i 16 nie był oczywisty:
    Link

    biblioteka pomagająca zmienić piny rx i tx <SoftwareSerial.h>:

    Kod: Arduino
    Zaloguj się, aby zobaczyć kod


    Wybrałem 14 i 15 ponieważ nie "wchodzą mi w drogę" na pinach cyfrowych:)

    Edit2:
    dla osób, których dotyczy problem i szukają rozwiązania podaję link opisujący problem:Link

    Edit3. Rozwiązanie

    Poczytałem o bibliotece SoftwareSerial i dokonałem dziś ostatnich modyfikacji w przykładowym kodzie.
    Ponieważ zmieniliśmy piny rx i tx z domyślnych zamiast Serial, piszemy BluetoothSerial, w programie wszystko widać.

    Kod: Arduino
    Zaloguj się, aby zobaczyć kod


    Póki co za pomocą tej aplikacji zrobiłem sterowanie taśmą RGB, serva i odczyt z czujnika temperatury i jest przyjemna w podstawowym zastosowaniu.

    Jedyne czego chciałbym się pozbyć to laga, który jest czasami niedostrzegalny, a czasami znaczny (do dwóch sekund).
    Nie wiem czy BT tak ma czy mogę coś w kodzie zmienić aby to poprawić, może baud zwiększę... Najpierw doczytam:)

    Szkoda, że nie mogę dać sobie choć punkcika;)
    Cóż, zostawię dla potomnych, ja na raty trochę rozwiązania szukałem.

    Pozdrawiam

    0 0