winform与下位机做蓝牙通信时需要注意的问题

winform与下位机做蓝牙通信时需要注意的问题

1.想要实现自动连接蓝牙,就需要像串口自动连接一样,思路是先扫描前N个COM口,通过try,阻塞和定时器搭配尝试打开COM,发握手信号,如果得到正确回复那么端口定位成功!

2.蓝牙模块这里有一个坑,不知道是模块的问题还是一种什么机制,买的一个HC05模块和电脑端首次建立好连接后,电脑会自动为该蓝牙模块分配两个COM口,一个能用,另外一个

不能用,而且卸载后过段时间会重新自动安装,简直成精了!

3.如果多出一个COM也无所谓,关键这多出的一个口还会影响到端口扫描,第一次开机如果winform扫描到这个没用的口,竟然可以open成功,然后尝试给这个口发握手信号,这时候winform界面直接卡死。。。。。强制关掉后再重新按上述步骤来,发现这个口已经open失败了。。。。恶心。

4.其实每次开机端口扫描时,都会出现卡死的情况,程序卡在了串口发送数据出不来。解决方法:winform串口发送数据时的时间溢出timeout一定要设置一个值,这样如果发送超时了

会自动跳出发送函数,这样就不会卡死了,搞定!

原文地址:https://www.cnblogs.com/pacexdong/p/11442244.html