如何传输更快的蓝牙数据?
How to transfer faster Bluetooth data?
我在 Windows 表单中使用 Windows.Devices.Bluetooth 库。设备之间的通信很好,但速度太慢(BT 5.2 在大约 150 毫秒后得到响应)。我认为问题出在写命令(GattCharacteristic.WriteValueAsync()),因为从调用这个命令到他执行的时间超过100毫秒。
代码:
var writer = new DataWriter();
var startCommand = Encoding.ASCII.GetBytes(textBox_write_rawData.Text);
writer.WriteBytes(startCommand);
time = DateTime.Now;
Display("Start time: " + DateTime.Now.ToString());
GattCommunicationStatus result = await chara.WriteValueAsync(writer.DetachBuffer());
if (result == GattCommunicationStatus.Success)
{
Display("Message sent successfully!");
//time = DateTime.Now;
//Display("Start time: " + DateTime.Now.ToString());
}
else
{
Display("Error encountered on writing to characteristic!");
}
可以加快速度吗?
感谢您的回复!
问题已解决。从属设备的连接间隔过长。也写无响应可以加快速度。
我在 Windows 表单中使用 Windows.Devices.Bluetooth 库。设备之间的通信很好,但速度太慢(BT 5.2 在大约 150 毫秒后得到响应)。我认为问题出在写命令(GattCharacteristic.WriteValueAsync()),因为从调用这个命令到他执行的时间超过100毫秒。
代码:
var writer = new DataWriter();
var startCommand = Encoding.ASCII.GetBytes(textBox_write_rawData.Text);
writer.WriteBytes(startCommand);
time = DateTime.Now;
Display("Start time: " + DateTime.Now.ToString());
GattCommunicationStatus result = await chara.WriteValueAsync(writer.DetachBuffer());
if (result == GattCommunicationStatus.Success)
{
Display("Message sent successfully!");
//time = DateTime.Now;
//Display("Start time: " + DateTime.Now.ToString());
}
else
{
Display("Error encountered on writing to characteristic!");
}
可以加快速度吗?
感谢您的回复!
问题已解决。从属设备的连接间隔过长。也写无响应可以加快速度。