Программирование Bluetooth

Язык C#: программирование на C#, портирование кода C# на VB и VB на C#.

Модератор: Ramzes

alant
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 02.07.2005 (Сб) 15:32
Откуда: Москва

Программирование Bluetooth

Сообщение alant » 14.09.2006 (Чт) 8:20

У меня есть устройство (Bluetooth-пульсоксиметр), которое передает пакет раз в секунду, состоящий из трех байтов, а также смарфон Qtek 8300. Нужно написать программу, которая получает эти три байта, а потом их разбирает по битам... В спецификациях указано, что можно работать с SerialPort'ом. У меня есть некий код, но остались неясности:

1. Зачем при работе с SerialPort'ом нужно создавать отдельный Thread и когда и как его использовать?

2. Чем отличается метод serialPort.Read() от события DataRecieved()и метод serialPort.ReadExisting()? Что лучше сделать именно в моем случае?

3. В самом начале, мне нужно послать команду задания формата прнимаемых данных "D1 Если все хорошо,устройство присылает ответ <ACK>, а если нет - <NAK>. Как это лучше обработать? Как сделал я или как-то под другому?

Вот мой код:

byte[] b = new byte[3];
b[0] = 0x22;
b[1] = 0x44;
b[2] = 0x31;
if (!sp_State)
{
try
{
com.PortName = "COM7";
com.BaudRate = 9600;
com.Open();
com.Write(b, 0, b.Length);
int r;
r = com.ReadByte();
if (r == 0x15)
MessageBox.Show("Error!");
else
{
// дальше код получения и обработки данных
}
}
catch {}



Буду благодарен за ответы.

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 14.09.2006 (Чт) 10:45

Лучше возьмите готовую библиотечку: http://32feet.net/library/
Там есть примеры работы и ответы на ваши вопросы.
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali


Вернуться в C#

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 29

    TopList