C#.Net中的蓝牙COM端口异常
我正在使用Windows7和32英尺.net库进行windows应用程序开发。扫描并配对设备后,我获得COM端口。当我打开端口并尝试在COM端口中发送数据时,我得到两种类型的异常,它们如下所示 错误代码异常 121信号量超时已过期 找不到1168元素 我还尝试了下面链接中给出的解决方法, 但没有什么成果。 最后,我怀疑蓝牙驱动程序 任何关于如何找到解决此异常的方法的见解 问候,,C#.Net中的蓝牙COM端口异常,c#,bluetooth,serial-port,C#,Bluetooth,Serial Port,我正在使用Windows7和32英尺.net库进行windows应用程序开发。扫描并配对设备后,我获得COM端口。当我打开端口并尝试在COM端口中发送数据时,我得到两种类型的异常,它们如下所示 错误代码异常 121信号量超时已过期 找不到1168元素 我还尝试了下面链接中给出的解决方法, 但没有什么成果。 最后,我怀疑蓝牙驱动程序 任何关于如何找到解决此异常的方法的见解 问候,, 吉布森我使用RN-42芯片进行蓝牙操作,并从下面的链接中学习了一些东西, 罪魁祸首是波特率!!!! 我尝试使用96
吉布森我使用RN-42芯片进行蓝牙操作,并从下面的链接中学习了一些东西, 罪魁祸首是波特率!!!!
我尝试使用9600的标准波特率,但令人惊讶的是,一些数据传输被证明是成功的,尽管蓝牙设备状态已连接到windows应用程序,但COM端口断开。在此状态下,应用程序在“未找到元素”和“信号量超时时间已过期”等少量数据传输后引发异常。改变制造商建议的波特率似乎更稳定。解决方法:在windows应用程序和蓝牙设备中使用相同的波特率。我对此也有同样的问题。我的问题已通过.NET4.7.1解决。我还需要确保我使用的蓝牙设备具有最新的microsoft bluetooth驱动程序 当后台线程发生异常时,SerialPort流不再终止进程。在使用中移除USB串行端口时可能会发生这种情况。此新行为由Switch.System.IO.Ports.DoNotCatchSerialStreamThreadExceptions AppContext开关控制。当以.NET 4.7或更低版本为目标时,此开关默认设置为truetf get。[428461,System.dll,Bug] 更新:事实上,它似乎是一个2个问题。net错误和固件问题,设备从未重新打开蓝牙模块