2010-12-10 79 views
1

所以我有一个蓝牙设备,这个设备使用SPP在PC和自身之间传输数据。它可以通过Windows连接成蓝牙设备。我可以找到它,输入配对代码并将其分配给COM端口。现在我希望能够通过使用Windows API的COM端口发送数据,但它拒绝这么做。bluetooth device to windows API via com port

我怀疑我需要设置COMMCONFIG结构正确(见下文) http://msdn.microsoft.com/en-us/library/aa363188(VS.85).aspx

不幸的是我不知道什么是正确的设置。我知道SPP应该模仿RS-232通信......所以也许我必须研究这个以找出正确的设置?或者有一些自动设置COMMCONFIG结构的方法。

回答

0

好的,我发现你可以使用GetCommConfig和GetCommState函数来找出设置。

1

我严重怀疑它。如果它被使用,那么你就没有机会在没有来自驱动程序作者的文档的情况下猜测自定义提供程序数据。注意握手信号,当DTR信号关闭时,串口设备经常忽略发送给它们的任何信息。并且不要将DTR发送回去。司机会模仿。使用EscapeCommFunction()打开它们。也可以尝试像HyperTerminal或Putty这样的串行通信程序来测试这个,这样你就可以找出问题的根源。

1

为什么不使用蓝牙套接字API?不需要麻烦的(虚拟)COM端口。

如果您使用托管代码,然后使用原生代码中看到我的图书馆32feet.NET

如果使用SOCKADDR_BTH的Winsock连接等,例如见Bluetooth and connect (Windows)然后你可以使用标准的Winsock send/recv API