Bluetoothowy moduł BTM222 i STM32

 

W projektowanych urządzeniach niejednokrotnie zachodzi potrzeba zrealizowania transmisji bezprzewodowej. Bardzo wygodne i atrakcyjne cenowo jest wykorzystanie do tego celu modułów Bluetooth. Elementarnym przykładem realizacji transmisji pomiędzy komputerem osobistym i systemem cyfrowym z wykorzystaniem modułu Bluetooth jest sterowanie diodami LED dołączonymi do mikrokontrolera. Dla wygody zbudowania części sprzętowej projektu wykorzystano zestaw uruchomieniowy ZL27ARM z mikrokontrolerem z rodziny STM32 do którego dołączono moduł KAmodBTM222. Jest to oczywiście konfiguracja sprzętowa znacznie przekraczająca potrzeby realizowanego zadania, ale wykorzystanie gotowych modułów jest wygodne i powoduje, że na etapie poznawania nowych zagadnień przynajmniej nie ma wątpliwości co do poprawności działania sprzętu.

Konfiguracja komputera

Sterowanie diodami LED zamontowanymi w zestawie ZL27ARM wykonuje się za pomocą komputera osobistego. Tak więc wymagane jest, żeby komputer był wyposażony w moduł Bluetooth – może to być moduł wbudowany lub w postaci dołączanej do portu USB komputera. Taki moduł jest widoczny w systemie jako dodatkowe porty szeregowe COM. Do transmisji przez moduł Bluetooth należy więc użyć dowolnego terminala, np. pokazany na rysunku 1 program Hercules, który można pobrać ze strony http://www.hw-group.com/products/hercules/index_en.html.

Konfigurację połączenia szeregowego należy ustawić następująco:

  • Baud – 115200,
  • Data size – 8,
  • Parity – none,
  • Handshake – OFF,
  • Mode – Free.

 

Rys. 1. Widok okna programu Hercules

Rys. 1. Widok okna programu Hercules

 

Wybór portu szeregowego COM jest zależny od przeprowadzonej konfiguracji systemu przy łączeniu z modułem Bluetooth. Po nawiązaniu połączenia pomiędzy komputerem i modułem KAmodBTM222 dołączonym do mikrokontrolera, program zapisany w mikrokontrolerze wysyła komunikat przedstawiający sposób obsługi, co pokazano na rysunku 1. Zgodnie z komunikatem program rozpoznaje następujące polecenia:

  • led_x_inv – przełącza diodę LED, gdzie x to numer diody,
  • led_x_on – włącza diodę LED gdzie x to numer diody,
  • led_x_off – wyłącza diodę LED gdzie x to numer diody,
  • led_all_inv – przełącza stan wszystkich diod LED,
  • led_all_on – włącza wszystkie diody LED,
  • led_all_off – wyłącza wszystkie diody LED,
  • led_status – informacja o stanie diod LED,
  • ? – wyświetla informacje.

Zgodnie z przesłanymi instrukcjami mikrokontroler steruje diodami LED zamontowanymi w zestawie ZL27ARM. Poprawnie odebrane polecenie jest potwierdzane przez mikrokontroler komunikatem „OK”. W przypadku odebrania nieznanego polecenia, mikrokontroler zwraca komunikat „ERROR”. W przesyłanych poleceniach wielkości liter nie mają znaczenia.

Program mikrokontrolera

Połączenie zestawu ZL27ARM i modułu Bluetooth KAmodBTM222 przedstawiono na rysunku 2. Do wykonania takich połączeń wygodnie jest użyć kolorowych przewodów CAB_A pokazanych na rysunku 3.

 

Rys. 2. Połączenie zestawu ZL27ARM i modułu Bluetooth KAmodBTM222

Rys. 2. Połączenie zestawu ZL27ARM i modułu Bluetooth KAmodBTM222

 

 

Rys. 3. Kolorowe przewody CAB_A ułatwiające wykonanie połączenia pomiędzy zestawem uruchomieniowym ZL27ARM i modułem KAmodBTM222

Rys. 3. Kolorowe przewody CAB_A ułatwiające wykonanie połączenia pomiędzy zestawem uruchomieniowym ZL27ARM i modułem KAmodBTM222

 

Do pobrania

O autorze