- Необхідні матеріали
- Модуль Bluetooth HC-05
- Кругова діаграма
- Програмування стартової панелі MSP430 для модуля Bluetooth HC-05
- Працює світлодіод, керований Bluetooth, за допомогою MSP430
Хоча впродовж останнього десятиліття було впроваджено багато бездротових технологій, але Bluetooth все ще є найпопулярнішою технологією для бездротового зв'язку короткого радіусу дії. У вбудованих системах HC-05/06 є найпопулярнішим модулем Bluetooth. Раніше ми використовували цей модуль Bluetooth у багатьох проектах для управління побутовою технікою, роботами тощо та взаємодіяли його з іншим мікроконтролером:
- Взаємодія Bluetooth HC-05 із STM32F103C8 Blue Pill: Світлодіод управління
- Взаємодія модуля Bluetooth з ESP8266: управління світлодіодом
- Взаємозв'язок модуля Bluetooth HC-05 з мікроконтролером AVR
- Голосові контрольовані світлодіоди за допомогою Arduino та Bluetooth
Сьогодні ми навчимося взаємодіяти модуль Bluetooth HC-05 з пусковою панеллю MSP430 від Texas Instruments. У цьому прикладі взаємодії ми будемо керувати бортовим світлодіодом MSP430 зі смартфона за допомогою програми для Android терміналу Bluetooth.
Якщо ви новачок у MSP430, тоді ви можете почати з Початок роботи з MSP430G2, скориставшись навчальним посібником Energia IDE, і переглядати всі навчальні посібники з MSP430 тут.
Необхідні матеріали
- Launchpad TI-MSP430
- Модуль Bluetooth HC-05
- Додаток терміналу Bluetooth від Play Store
Модуль Bluetooth HC-05
HC-05 є простим у використанні модуля Bluetooth. Він використовує послідовний протокол зв'язку (USART) для зв'язку між пристроями. Для цього модуля існує два режими роботи - перший - це командний режим, а другий - режим роботи. Командний режим використовується для налаштування параметрів пристрою, таких як зміна пароля, швидкість передачі даних і т.д. модуля. Режим роботи використовується для надсилання або отримання даних між пристроями.
У цьому посібнику ми використовуватимемо налаштування за замовчуванням (пароль за замовчуванням - 0000 або 1234, ім’я пристрою - HC-05, а швидкість передачі даних за замовчуванням - 9600). Тому ми будемо працювати лише в робочому режимі.
Діапазон робочої напруги становить від 4 В до 6 В (зазвичай + 5 В), а робочий струм - 30 мА. Дальність дії модуля становить 100 метрів. Всього на модулі Bluetooth HC-05 6 штифтів, з яких штирки EN і State використовуються в командному режимі. Висновок модуля Bluetooth HC-05 показаний нижче:
Кругова діаграма
Схема підключення модуля Bluetooth HC-05 до плати TI-MSP340 показана нижче.
Тут ми зробили 4 з'єднання з HC-05. Виводи RxD і TxD HC-05 підключені до P1.1 і P1.2 MSP430 відповідно для послідовного зв'язку. А VCC і GND HC-05 підключені до VCC і GND MSP430.
Програмування стартової панелі MSP430 для модуля Bluetooth HC-05
Програмування цього контрольованого світлодіодом Bluetooth за допомогою MSP430 дуже просто. MSP буде запрограмовано за допомогою Energia IDE, яка дуже схожа на Arduino IDE, тому знайомі Arduino люди не зіткнуться з труднощами в розумінні цього. Повний код із демонстраційним відео наведено в кінці підручника.
Ми починаємо з визначення макросу для червоного світлодіода, який ми використовуємо. Цей рядок призначений лише для простоти, щоб ми могли використовувати світлодіод замість RED_LED
#define LED RED_LED
Далі наша функція setup (), функція Serial.begin () використовується для встановлення швидкості передачі даних для послідовного зв'язку на 9600, оскільки це швидкість передачі даних за замовчуванням для HC-05. Ми також використовували функцію pinMode () для ініціалізації цифрового виводу як вихідного сигналу (що у цьому випадку є світлодіодним).
void setup () { Serial.begin (9600); pinMode (світлодіод, ВИХІД); }
У функції циклу спочатку перевіряємо, чи доступні дані на послідовному порту за допомогою функції Serial.available () . Далі визначте змінну data_recieved, яка зберігає значення функції Serial.read () . Ця функція використовується для отримання даних із Bluetooth.
Далі в заяві if-else ми перевіряємо дані, надіслані з телефону. Якщо воно дорівнює 1, увімкніть світлодіод за допомогою digitalWrite (LED, HIGH); і надрукуйте в додатку повідомлення про те, що світлодіод увімкнено за допомогою функції Serial.write () . А якщо воно 2, тоді вимкніть світлодіод, використовуючи digitalWrite (LED, LOW); і надрукуйте в додатку повідомлення про те, що світлодіод вимкнений за допомогою функції Serial.write () .
void loop () { if (Serial.available ()) { char data_received; data_received = Serial.read (); if (data_received == '1') { digitalWrite (LED, HIGH); Serial.write («світлодіод увімкнено»); } ще if (data_received == '2') { digitalWrite (світлодіод, низький); Serial.write ("світлодіод вимкнено"); } } }
Працює світлодіод, керований Bluetooth, за допомогою MSP430
Нарешті, завантажте код у MSP430 за допомогою Energia IDE, а також завантажте та встановіть програму Bluetooth Terminal на своєму смартфоні. Додаток буде виглядати так, як показано нижче:
Тепер увімкніть Bluetooth у своєму смартфоні та підключіться до модуля Bluetooth, вибравши HC-06 зі списку доступних пристроїв. Для підключення використовуйте пароль 0000 або 1234. Після підключення відкриється вікно з назвою пристрою та підключеним, написаним під ним. Це вікно буде виглядати як на малюнку нижче:
У цьому вікні спробуйте надіслати 1 та 2 на MSP430 через модуль Bluetooth HC-05. При відправці 1 світлодіод увімкнеться, і на вашому телефоні надрукується повідомлення про те, що “ світлодіод увімкнено”, як на малюнку нижче:
А надсилання 2 вимкне світлодіод, і на вашому телефоні надрукується повідомлення про те, що “світлодіод вимкнувся”, як на малюнку нижче. І вуаля! Ви щойно керували світлодіодом через телефон за допомогою Bluetooth.
Ось як світлодіодом можна керувати бездротово за допомогою Bluetooth. Його можна легко перетворити на проект домашньої автоматизації, замінивши світлодіод на реле та будь-який побутовий прилад.
Повний код із демонстраційним відео наведено нижче.