双笔记本自带蓝牙的串口通讯

现在的笔记本电脑都自带蓝牙模块,而普通的台式PC, 也可以通过USB蓝牙模块扩展蓝牙功能。因此,对于都有蓝牙模块的电脑,可以通过将蓝牙虚拟成串口,进行双机通讯。对于Electron的串口应用,蓝牙串口也是一种可选方式。

Window系统对蓝牙协议版本的支持

对于和蓝牙模块之间的互连,如果支持的协议不兼容,是查找不到对端设备的,而Windows系统对蓝牙版本的支持也有区别。

下面为Win10之前版本对蓝牙的支持:

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_PC蓝牙双机通讯


这里是Win10对蓝牙版本的支持情况:

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_PC蓝牙双机通讯_02


简单的总结而言, Win7不支持BLE蓝牙,Win10支持BLE蓝牙。Windows系统通过设置COM口方式实现的虚拟串口,对应的是Bluetooth 2.x的SPP协议。所以PC在和单个外部蓝牙模块进行串口通讯时,外部蓝牙模块需要支持SPP协议(一般双模模块都支持)。如果PC要和单个外部蓝牙模块进行BLE的串口通讯,则需要设计单独的应用程序(类似手机上的BLE 安卓串口助手)进行”翻译“,不能直接使用常见的PC串口工具。

Window系统双机蓝牙串口通讯方式

基本的方式是将其中一台电脑配置为从机(传入端口),将另外一台电脑配置为主机(传出端口),这里传入端口和传出端口实际上表达的是蓝牙主机和从机的概念,一旦建立联机,则每个端口上都可以进行串口数据的发送和接收,即全双工。

Window系统双机蓝牙串口通讯配置过程

  1. 首先要配置其中一台电脑的蓝牙虚拟串口端口,实现传入端口,找到蓝牙图标的“打开设置”
  2. Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_双笔记本蓝牙串口通讯_03

  3. 设置“允许发现”
  4. Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_PC蓝牙双机通讯_04

  5. 添加COM端口及选择“传入”
  6. Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_PC蓝牙串口通讯_05

  7. 得到虚拟的输入端口
  8. Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_PC蓝牙双机通讯_06

  9. 确认后配置完成,可以在设备管理器上看到了
  10. Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_双笔记本蓝牙串口通讯_07

  11. 配置另外一台电脑为蓝牙虚拟串口,传出端口类型。先打开配置界面。

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_Android手机蓝牙不兼容问题_08


添加虚拟串口

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_Android手机蓝牙不兼容问题_09


选择“传出”并点击浏览

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_电脑蓝牙虚拟串口通讯_10


选择对端的电脑

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_PC蓝牙双机通讯_11


确认后,出现失败告警

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_双笔记本蓝牙串口通讯_12


这是因为对端电脑虽然运配置了虚拟传入串口,但是并没有被串口程序打开处于监控状态,因此,在对端电脑上运行一个串口工具,并打开串口。

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_电脑蓝牙虚拟串口通讯_13


再重新进行当前电脑蓝牙传出端口的设置,成功后显示的是对端电脑”虚拟蓝牙串口的串口号“

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_双笔记本蓝牙串口通讯_14


而本机的虚拟蓝牙串口传出端口号,从设备管理器里查看

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_Android手机蓝牙不兼容问题_15


这样,两台电脑的配置就完成了。

Window系统双机蓝牙串口通讯测试

”传入“端PC已经运行了串口工具软件,所以在”传出“端PC上也运行一个串口工具软件。

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_PC蓝牙双机通讯_16


一台PC向对方发AA 55, 一台电脑向对方发55 AA,都能正确接收到。

Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_Android手机蓝牙不兼容问题_17


Android手机蓝牙不兼容问题 安卓10不兼容蓝牙_PC蓝牙双机通讯_18


-End-