我有一个小型嵌入式系统,我已经使用调试例程来通过蓝牙连接一遍又一遍地向PC发送完全相同的字节。
有问题的速度是921600 bps
成功接收大约四千个字节(给予或接受几百个)后,我的应用程序不再看到Win7
我完全相信,在流从我的应用程序中消失后,字节(即超过四千个)继续发送好
我非常怀疑Windows出于某种原因,不能提供蓝牙接收的内容。
我完全相信......
我怀疑Win'7因为
而被提升了然后我们再次启动小盒子生成数据,并看到相同的行为:看到了4435个字节,之后我们从UART中得不到任何字节,尽管在921600 bps处有两分钟的字节泛滥。
这是接收线程
void RecieveThread()
{
int n;
while (continueRecieving)
{
n = connectorPort.BytesToRead;
byte[] bits = new byte[n];
if (n > 0)
{
connectorPort.Read(bits, 0, n);
}
Write(bits);
}
}
万一有人觉得这很重要,这里是写(位)例程
public void Write(byte[] b)
{
if (writting)
{
for (int i = 0; i < b.Length; i++)
{
storage[sPlace++] = b[i];
pass += b[i].ToString("X2") + " ";
if (sPlace % numericUpDown1.Value == 0)
{
pass += "\r\n";
}
}
}
}
以前是否有人在使用C#app的Win7机器上消失了蓝牙字节?
任何人都可以看到可能导致此问题的明显(或模糊)错误吗?