Связь между модулями HC-05
- Сообщения: 274
- Зарегистрирован: Чт апр 28, 2011 15:08:58
Люди добрые кто нибудь делал связь между двумя модулями один у меня подключен к компу другой к микроконтролерру не могу никак их законектить. Подскажите кто делал это и как. Спасибо!
- Реклама
А к компу зачем аналогичный? Для компа достаточно стандартного блютуз-донгла.
Иначе тебе надо ставить преобразователь интерфейса, на выходе модуля сигналы UART, а компьютер требует сигналы RS-232. Обычно этим занимается микросхема MAX232.
Во вторых, модули надо настроить на нужную скорость(читать мануал по настройке! Взять мануал нужно там где ты модули покупал) - сначала тот что подключен к компьютеру, настроить скорость, задать имя и сделать его MASTER. Потом другой модуль - настроить на такую же скорость, переключить его в режим SLAVE и задать имя устройства для поиска такое же как у MASTER. После этих манипуляций через COM-порт можно передавать данные, скорость подключения надо выбирать такую же как установил для модуля - иначе будет "твоя моя не понимать", в случае отдельного блютуз-донгла это не обязательно - порт будет виртуальный а реальная скорость будет наименьшей из тех что установлена для модуля на "той стороне моста" и установлена программой при подключении к порту.
Иначе тебе надо ставить преобразователь интерфейса, на выходе модуля сигналы UART, а компьютер требует сигналы RS-232. Обычно этим занимается микросхема MAX232.
Во вторых, модули надо настроить на нужную скорость(читать мануал по настройке! Взять мануал нужно там где ты модули покупал) - сначала тот что подключен к компьютеру, настроить скорость, задать имя и сделать его MASTER. Потом другой модуль - настроить на такую же скорость, переключить его в режим SLAVE и задать имя устройства для поиска такое же как у MASTER. После этих манипуляций через COM-порт можно передавать данные, скорость подключения надо выбирать такую же как установил для модуля - иначе будет "твоя моя не понимать", в случае отдельного блютуз-донгла это не обязательно - порт будет виртуальный а реальная скорость будет наименьшей из тех что установлена для модуля на "той стороне моста" и установлена программой при подключении к порту.
- Сообщения: 1278
- Зарегистрирован: Пн июн 18, 2007 21:51:20
а вы лично сами это делали?Alexeyslav писал(а): и сделать его MASTER. Потом другой модуль - настроить на такую же скорость, переключить его в режим SLAVE и задать имя устройства для поиска такое же как у MASTER.
или это только "гипотетические ответы"?
- Сообщения: 274
- Зарегистрирован: Чт апр 28, 2011 15:08:58
я так и делал настраивал мастер и слейв тока вот коннект не идёт, вернее идёт но пишет что то не понятное, у обоих модулей скорость 9600 прописанно адрес устройства на мастере какой нужно искать, находит но не коннектит может потому что пасс нужен мастеру чтобы подключится к слейв.
Да, пин-код должен совпадать на обоих модулях.
- Реклама
- Сообщения: 7
- Зарегистрирован: Сб сен 03, 2011 17:01:05
Ребята, такая проблема - модуль нс-05 соединяется с планшетом через блютуз терминал и принимает текст, но через некоторое время отваливается (минуту) причем как то странно, светодиод сигнализирует что еще подключен хотя связи уже нет и поиском также не обнаруживается. Кто чего сказать может?
Если ещё интересно - то работал с этими модулями, точнее в связке HC-04 и HC-05.
HC-04 может работать только, как слейв и он дешевле второго. Ему задаём имя, пин код и скорость.
На втором модуле линии, PIO11 (34), она отвечает за выбор режима - сажал, кажется, на землю - переводя его в режим настройки.
Далее задавал ту же скорость и пароль, как у первого.
Включал режим мастера - AT+ROLE=1
Далее можно задать ему автоматическое подключение к первому при старте - AT+INQM=0,9,48
и адрес модуля, к которому подключаемся - AT+BIND=х,хx,ххххх .
PIO11 сажаем обратно на +. Перезапускаем
Теперь этот модуль будет автоматически при старте искать и подключаться к указанному модулю.
Так же можно каждый раз самостоятельно подключаться к нужному модулю - AT+LINK=x,xx,xxxxx
HC-04 может работать только, как слейв и он дешевле второго. Ему задаём имя, пин код и скорость.
На втором модуле линии, PIO11 (34), она отвечает за выбор режима - сажал, кажется, на землю - переводя его в режим настройки.
Далее задавал ту же скорость и пароль, как у первого.
Включал режим мастера - AT+ROLE=1
Далее можно задать ему автоматическое подключение к первому при старте - AT+INQM=0,9,48
и адрес модуля, к которому подключаемся - AT+BIND=х,хx,ххххх .
PIO11 сажаем обратно на +. Перезапускаем
Теперь этот модуль будет автоматически при старте искать и подключаться к указанному модулю.
Так же можно каждый раз самостоятельно подключаться к нужному модулю - AT+LINK=x,xx,xxxxx
Есть вопрос по HC-05. Имеется ноут со встроенным BT. После долгих мучений с кривой китайской документацией и отладкой "по ICQ" (девайс не у меня) наконец-то получен рабочий канал терминал>>встроенный BT>>HC-05>>atmega8. Все работает мега отвечает как надо, но стоит просто закрыть и запустить по новой терминал (вот этот), как к порту он больше не подключается, пока не передернешь питание HC-05. Как будто сам HC-05 держит порт открытым. Почему так происходит и можно ли с этим бороться? Пока придумал задавать с терминала команду по которой мега пошлет в HC-05 AT+RESET, но еще проверял.
Неправильно собранная из неисправных деталей схема нуждается в отладке и сразу не работает... (С)
Написал самописную прогу для общения с контроллером через BT, глюк исчез, видимо это косяк того терминала (проверил с терминалом от Br@y - аналогичная проблема присутствует).
Но возникла новая проблема. В устройстве есть возможность менять имя - программа на ПК посылает имя контроллеру через BT, и он уже AT командой меняет этому самому BT модулю (AT+NAME="имя и серийник"), но в списке устройств отображается старое, хоть тресни, и удалял, и отключал (и девайс с HC-05 и USB-свисток из ПК), думал AT-команды не принимаются, но нет, подключил HC-05 к com порту, послал AT+NAME? - ответ как надо, с таким именем как я задавал
Поковырялся немного... Перефразирую вопрос. Как сделать так, чтобы при последующих подключениях имя устройства бралось из самого устройства, а не откуда-то из винды (где сохранилось при первой синхронизации)? Это вообще реально?
Но возникла новая проблема. В устройстве есть возможность менять имя - программа на ПК посылает имя контроллеру через BT, и он уже AT командой меняет этому самому BT модулю (AT+NAME="имя и серийник"), но в списке устройств отображается старое, хоть тресни, и удалял, и отключал (и девайс с HC-05 и USB-свисток из ПК), думал AT-команды не принимаются, но нет, подключил HC-05 к com порту, послал AT+NAME? - ответ как надо, с таким именем как я задавал
Поковырялся немного... Перефразирую вопрос. Как сделать так, чтобы при последующих подключениях имя устройства бралось из самого устройства, а не откуда-то из винды (где сохранилось при первой синхронизации)? Это вообще реально?
Неправильно собранная из неисправных деталей схема нуждается в отладке и сразу не работает... (С)


