Bluetooth RFCOMM соединение: считывание последовательных данных с com-порта в Windows 7 - PullRequest
2 голосов
/ 28 ноября 2011

Я работаю с примером приложения Android Bluetooth Chat.Я пытаюсь прочитать последовательные данные с устройства Android в Windows 7.

Мне удалось подключить устройство Android к адаптеру Bluetooth на моем ноутбуке.Я заменил UUID в примере приложения следующим текстом в некоторых других обсуждениях:

private static final UUID MY_UUID = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");

Когда я запускаю приложение Android, я могу подключиться к ноутбуку.В свойствах «Оборудования» моего устройства Android есть запись «Функция устройства», которая называется «Стандарт последовательного соединения через Bluetooth (COM10)».Когда я пытаюсь подключить CoolTerm к COM10, я получаю «ошибку 1168» (нет дополнительного описания ошибки).

Не понимаю ли я что-то неправильно в процессе отправки последовательных данных через Bluetooth на com-порт Windows?

Ответы [ 2 ]

0 голосов
/ 06 марта 2015

Вы должны использовать соответствующий API-интерфейс Bluetooth из приложения Windows для вызова и подключения к устройству Android, а именно:

  1. сделать 'Запрос' всех соседних устройств, обнаруживаемых и раскрывающих сервис / профиль SPP (SPP = Serial Profile Protocole). Этот профиль имеет вышеупомянутый GUID {00001101-0000-1000-8000-00805F9B34FB}
  2. как только все найдено, выберите тот, который вы ищете (по имени или MacAdress)
  3. на данный момент вы можете выполнить «Обнаружение» его Сервисов и убедиться, что у него есть соответствующая служба (SPP или RFCOMM)
  4. затем подключитесь к нему, используя API сокета Bluetooth ...
0 голосов
/ 28 ноября 2011

Убедитесь, что вы выбрали правильный COM. В моем последнем Android-приложении, которое требовало связи Bluetooth через SPP (Serial Port Profile), при соединении Windows 7 у меня было несколько открытых COM.

Picture of BT settings with all the COMs that were created

Если COM10 не работает, убедитесь, что это «входящий» COM (или, может быть, он исходящий, я не могу вспомнить, потому что это было несколько месяцев).

...