В современных встраиваемых системах Bluetooth стал неотъемлемой частью для беспроводной коммуникации. Подключение Bluetooth модуля к микроконтроллерам, таким как STM32, открывает широкие возможности для создания беспроводных проектов. В этой статье рассмотрим подключение модуля HC-05 к микроконтроллеру STM32F103C8 (Blue Pill) и управление светодиодом через Bluetooth с помощью смартфона на OS Android.
Модуль HC-05 – один из наиболее распространенных модулей Bluetooth для встраиваемых проектов. Он обеспечивает беспроводную связь по Bluetooth в диапазоне менее 100 м и работает при напряжении 5 В. HC-05 может работать в режиме мастер (ведущий) или слейв (ведомый) и поддерживает передачу данных по UART. Купить модуль HC-05 можно в нашем интернет-магазине.
STM32F103C8, также известный как Blue Pill, представляет собой мощный 32-битный микроконтроллер с архитектурой ARM Cortex-M3. Он имеет множество периферийных устройств, включая несколько портов UART, что делает его отличным выбором для подключения Bluetooth модуля. Купить STM32 также можно в каталоге нашего магазина.
Схема подключения
- TX модуля Bluetooth подключается к пину RX микроконтроллера STM32.
- RX модуля Bluetooth подключается к пину TX микроконтроллера STM32.
- Пин VCC (+5V) модуля Bluetooth подключается к пину 5V микроконтроллера STM32.
- Пин GND модуля Bluetooth подключается к пину GND микроконтроллера STM32.
Пин PA0 подключен к аноду светодиода через резистор на 220 Ом, а катод светодиода подключен к GND.
Библиотеки
Для работы с модулем HC-05 в среде Arduino IDE не требуется установка дополнительных библиотек.
Пример кода
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
#define LED PA0 // Пин, к которому подключен светодиод unsigned char resivedByte = 0; // Переменная для хранения полученных данных void setup() { Serial1.begin(9600); // Устанавливаем скорость передачи для Bluetooth Serial1.println("BLUETOOTH WITH STM32"); pinMode(LED, OUTPUT); // Устанавливаем цифровой пин PA0 как выход для светодиода } void loop() { if (Serial1.available() > 0) { resivedByte = Serial1.read(); // Читаем входящие данные и сохраняем их в переменную if (resivedByte == '1') // Команда на включение светодиода { digitalWrite(LED, HIGH); Serial1.println("LED is ON."); } else if (resivedByte == '0') // Команда на выключение светодиода { digitalWrite(LED, LOW); Serial1.println("LED is OFF."); } else // Ошибка, неизвестная команда { Serial1.println("Unknown command."); } } delay(10); } |
Примечание: При загрузке кода на STM32 пины RX и TX должны быть отключены.
Подключение модуля Bluetooth-модуля к телефону
Для подключения к модулю HC-05 нам понадобиться приложение Bluetooth Terminal.
- Откройте настройки Bluetooth на мобильном телефоне.
- В разделе доступных устройств выберите HC-05 и введите пароль 1234 (это стандартный пароль для модуля HC-05).
- После сопряжения откройте приложение Bluetooth Terminal и выберите “подключить устройство”, затем выберите HC-05.
- После подключения к модулю введите в терминале “1” или “0”, чтобы включить или выключить светодиод. Вы также получите сообщение о том, что светодиод включен или выключен.
Подключение модуля HC-05 к микроконтроллеру STM32F103C8 предоставляет широкие возможности для создания беспроводных проектов. Используя схему подключения и код, представленные выше, вы сможете легко управлять вашими проектами через Bluetooth с помощью смартфона или другого устройства.