Arduino считывает состояние подключения устройства hc-05
Здравствуйте, я хочу, чтобы Arduino получал статус bluetooth hc 05, если он подключается к устройству или нет. Я пытаюсь сам и ищу на веб-сайте в Интернете, но я не могу найти полезные вещи.
@user41370, 👍0
Обсуждение2 ответа
В hc05 есть индикатор, показывающий, сопряжено Bluetooth или нет. В даташите написано, что подключил пин PIO9. Вы можете подключить этот контакт к цифровому входу Arduino. После этого можно понять, парный он или нет.
AT+BIND?
показывает, с каким устройством вы в настоящее время сопряжены.
Если я подключу контакт PIO9, может быть, он запишется в serial.read(), если он подключен или нет ...?, @user41370
Нет, это не так. Когда вы соединяете, этот светодиод включается, поэтому, если вы немного припаяете, вы можете получить провод оттуда и подключить этот провод к цифровому входному контакту Arduino. Когда Bluetooth сопряжен, этот контакт становится ВЫСОКИМ, а если он не подключен, этот контакт становится НИЗКИМ., @qqq
Хорошо, я отредактировал пост, проверьте еще раз, @qqq
Различные адаптеры Bluetooth (использующие модуль HC-05) передают разные сигналы, помимо Rx и Tx. Большинство из них выводят «ключевой» ввод, который переводит модуль в командный режим, в котором осуществляется последовательная связь между внешними выводами и самим модулем — «AT» команды & запросы к прошивке модуля. Когда модуль не находится в командном режиме, прошивка просто передает последовательные данные через радио Bluetooth, игнорируя содержимое. Некоторые из них предоставляют светодиодный индикатор или сигнал состояния , который можно прочитать (или наблюдать за светодиодным индикатором) , чтобы узнать, являются ли устройства сопряженными (общающиеся) или непарными (в командном режиме).
В некоторых случаях это простой логический сигнал; на других это прямоугольная волна от 1/2 до 1 Гц, что означает, что ваш код должен отслеживать сигнал, чтобы знать, является ли он статичным (обычно высоким при сопряжении) или переключением (для несопряжения/ожидания сопряжения).
Вам необходимо прочитать техническое описание вашего модуля, чтобы узнать поведение этого сигнала на вашем конкретном модуле. Если вы подключите светодиод к этому сигналу или ваш модуль имеет такой на плате, вы часто можете сделать достаточно хорошее предположение, наблюдая за ним с помощью секундомера. В любом случае вам понадобится функция Arduino, которая периодически считывает показания светодиода, запоминая, в каком состоянии он находился и как долго, чтобы решить, мигает ли светодиод или горит постоянно.
- Как связаться с GPS SIM900a без serial monitor
- Можно ли использовать контакт RX в качестве TX?
- Невозможно получить данные при использовании нескольких SoftSerial на Arduino Nano.
- Проблемы при использовании SoftwareSerial
- Используйте ATtiny85 для выполнения начальной настройки маршрутизатора Cisco с использованием его консольного порта USB.
- Прослушивание последовательных портов
- Последовательная связь между Arduino
- Я получаю неправильное сообщение при отправке сообщения между двумя ардуино
Можете ли вы показать нам код, который вы написали до сих пор?, @VE7JRO
если (Serial1.доступно()) { Serial1.print("AT+BIND"); Serial.println(Serial1.print("AT+BIND")); }, @user41370
Это один из кодов кодов, которые я пробовал. Остальные коды могут быть такими же, но с другим порядком..., @user41370