我有一台徕卡DISTO D3a BT。 这是一个测量设备,它通过蓝牙发送测量结果。如何通过蓝牙从Leica DISTO读取数据?
我写了一些代码来获取蓝牙流,我收到的数据,但我总是得到“错误240”的消息。
这意味着(从用户手册),我不确认数据传输的成功。
我该怎么办呢?
这里是我的代码:
int bytesRead = 0;
System.IO.Stream stream = client_.GetStream();
byte[] buffer = new byte[k_BUFFER_BYTES];
while(true)
{
Task.Delay(100);
if (client_.Available > 0) // Available contains the available bytes
{
int counter = 0;
string output = "";
while (counter < client_.Available)
{
bytesRead = stream.Read(buffer, 0, k_BUFFER_BYTES);
counter += bytesRead ;
output += System.Text.Encoding.ASCII.GetString(buffer, 0, bytesRead);
}
stream.Write(Encoding.ASCII.GetBytes("\r\n"), 0, 2);
stream.Flush();
Console.WriteLine(output + " - " + counter + " - " + client_.Available);
}
}
在此先感谢您的帮助!
发送“cfb 0 \ r \ n”以关闭E240;或“cfb 128 \ r \ n”将其重新打开。 “此命令仅适用于BT 2.1设备,但不适用于BT 4.0”。 – ali