Невозможно получить доступ к устройству Bluetooth через COM-порт на КПК Dell Axim с J2ME - PullRequest
0 голосов
/ 12 февраля 2009

Я пытаюсь написать часть приложения J2ME и отвечаю за чтение данных NMEA с устройства GPS, подключенного через Bluetooth (к КПК Dell Axim X51).

Я связал устройство gps с КПК, и я могу запустить пример программы, которая поставляется с устройством gps, и она успешно передает потоки NMEA.

В настройках системы, в настройках GPS, я настроил COM-порт (8) для программ, которые будут использоваться для получения данных GPS, однако при предоставлении сведений об аппаратном порте GPS, похоже, нет сопоставить скорость передачи данных с той, которую я должен был использовать в примере программы? Имеет ли это значение? Что на самом деле означает скорость передачи данных?

Теперь, насколько я понимаю настройки, я теперь могу читать данные NMEA через COM 8?

Однако, когда я распечатываю:

System.getProperty("microedition.commports")

COM8 не отображается в возвращенном списке, и если я пытаюсь открыть соединение через этот порт, я получаю следующую ошибку:

java.io.IOException: GetCommState() failed; error code=21, (21) The device is not ready.

Любые указатели на успешную настройку COM-порта для чтения, и на самом деле чтение из него будет приветствоваться. Я довольно глуп и не знаю, что делать.

Ответы [ 2 ]

1 голос
/ 12 февраля 2009

Не знаю об этом конкретном устройстве, но обычный способ открытия COM-порта Bluetooth в J2ME - это JSR-82 API .

Вы должны выполнить поиск устройств в вашем районе, выяснить, какой у вас GPS (обычно содержит «GPS» в понятном имени), выполнить поиск сервисов на этом устройстве (большинство GPS только предлагают один) и открыть соединение BTSPP для этот сервис.

1 голос
/ 12 февраля 2009

Существует большая вероятность, что реализация j2me на вашем устройстве вообще не поддерживает bluetooth COM-порты. Я бы предложил сначала подтвердить это. Возможно, стоит сравнить результат вызова системного свойства на других (последних) телефонах.

...