本帖最后由 w494143467 于 2021-10-2 10:44 编辑
1.介绍
蓝牙也是目前设备中非常常见的一个通信模块,所以我们来实验一下蓝牙的扫描和连接功能。
2.开启蓝牙
首先使用【lsmod】命令查看系统已经载入的模块,可以看到结果如下图1所示。
图1
然后需要将模块绑定端口,输入一条官方提供的超长命令【brcm_patchram_plus -d --enable_hci --no2bytes --tosleep 200000 --baudrate 3000000 --patchram /lib/firmware/bcmd/BCM4345C5_AP6256_CL1.hcd /dev/ttymxc0 &】,然后会打印很多16进制的内容。
图2
接下来需要激活蓝牙,输入【rfkill unblock bluetooth】和【hciconfig hci0 up】命令,不过很有可能已经打开了。
图3
3.蓝牙扫描和连接
可以直接使用【hcitool scan】扫描周围的蓝牙,不过不知为何扫描不到我的手环蓝牙,只扫描到了我的手机蓝牙。
图4
接下来使用【bluetoothctl】命令来管理蓝牙的连接,这个也是BlueZ提供的管理工具,比上面的好用。首先输入【systemctl status bluetooth.service】命令查看服务启动情况。
图5
如果显示内容如上图所示,说明服务启动了,然后输入【bluetoothctl】命令进入工具。输入【power on】开启蓝牙,再输入【scan on】开启蓝牙扫描。
图6
最后通过【connect blue_addr】命令,连接蓝牙,这里的【blue_addr】是想要连接的蓝牙地址,当然是需要能够扫描到的蓝牙地址,否则连接不上。
图7
4.总结
蓝牙模块的操作还是比较方便的,不过这里没有讲到蓝牙通信部分,蓝牙通信可以通过命令也可以通过第三方库来实现,这个等后续再进行介绍!