Доступ к состоянию CTS / RTS в профиле RFCOMM Blue Tooth с Android - PullRequest
2 голосов
/ 25 октября 2011

Я работаю над приложением для Android, используя Bluetooth моего телефона и плату Bluetooth, которая имеет интерфейс RS232 и поддерживает профиль RFCOMM.

У меня соединение RFCOMM работает нормально, но я не могу найти через Android API способ доступа к сигналам RTS и CTS, которые являются частью профиля RFCOMM и также выставлены на моей плате BT.

Может кто-нибудь сказать мне, как читать / писать RTS / CTS с устройства Android?

Аналогичный вопрос был задан здесь: Сигналы управления Bluetooth (DTR, DSR, RTS, CTS) на Android , но так и не ответил.

1 Ответ

1 голос
/ 01 сентября 2015

Это не полный ответ и не подходит для большинства приложений, однако вы можете сделать это, используя встроенную библиотеку C для Bluedroid начиная с Android 4.2 и выше или BlueZ.

Следующий файл: https://android.googlesource.com/platform/external/bluetooth/bluedroid/+/master/stack/rfcomm/port_api.c содержит функцию с именем PORT_Control, которая должна установить для вас статус линии, а PORT_GetModemStatus вернет статусы линии.

Существует еще один вопрос, касающийся использования нативной библиотеки Bluedroid: Android NDK для доступа к нативным функциям Bluetooth bluedroid .

...