w494143467 发表于 2021-9-25 16:17

【米尔MYS-8MMX】Part3:蓝牙扫描与连接

<div class='showpostmsg'> 本帖最后由 w494143467 于 2021-10-2 10:44 编辑

<p><strong><span style="font-size:20px;">1.介绍</span></strong></p>

<p><span style="font-size:16px;">蓝牙也是目前设备中非常常见的一个通信模块,所以我们来实验一下蓝牙的扫描和连接功能。</span></p>

<p><strong><span style="font-size:20px;">2.开启蓝牙</span></strong></p>

<p><span style="font-size:16px;">首先使用【lsmod】命令查看系统已经载入的模块,可以看到结果如下图1所示。</span></p>

<p class="imagemiddle" style="text-align: center;"></p>

<p style="text-align: center;"><span style="font-size:16px;">图1</span></p>

<p><span style="font-size:16px;">然后需要将模块绑定端口,输入一条官方提供的超长命令【brcm_patchram_plus -d --enable_hci --no2bytes --tosleep 200000 --baudrate 3000000 --patchram /lib/firmware/bcmd/BCM4345C5_AP6256_CL1.hcd /dev/ttymxc0 &amp;】,然后会打印很多16进制的内容。</span></p>

<p class="imagemiddle" style="text-align: center;"></p>

<p style="text-align: center;"><span style="font-size:16px;">图2</span></p>

<p><span style="font-size:16px;">接下来需要激活蓝牙,输入【rfkill unblock bluetooth】和【hciconfig hci0 up】命令,不过很有可能已经打开了。</span></p>

<p class="imagemiddle" style="text-align: center;"></p>

<p style="text-align: center;"><span style="font-size:16px;">图3</span></p>

<p><strong><span style="font-size:20px;">3.蓝牙扫描和连接</span></strong></p>

<p><span style="font-size:16px;">可以直接使用【hcitool scan】扫描周围的蓝牙,不过不知为何扫描不到我的手环蓝牙,只扫描到了我的手机蓝牙。</span></p>

<p class="imagemiddle" style="text-align: center;"></p>

<p style="text-align: center;"><span style="font-size:16px;">图4</span></p>

<p><span style="font-size:16px;">接下来使用【bluetoothctl】命令来管理蓝牙的连接,这个也是BlueZ提供的管理工具,比上面的好用。首先输入【systemctl status bluetooth.service】命令查看服务启动情况。</span></p>

<p class="imagemiddle" style="text-align: center;"></p>

<p style="text-align: center;"><span style="font-size:16px;">图5</span></p>

<p><span style="font-size:16px;">如果显示内容如上图所示,说明服务启动了,然后输入【bluetoothctl】命令进入工具。输入【power on】开启蓝牙,再输入【scan on】开启蓝牙扫描。</span></p>

<p class="imagemiddle" style="text-align: center;"></p>

<p style="text-align: center;"><span style="font-size:16px;">图6</span></p>

<p><span style="font-size:16px;">最后通过【connect blue_addr】命令,连接蓝牙,这里的【blue_addr】是想要连接的蓝牙地址,当然是需要能够扫描到的蓝牙地址,否则连接不上。</span></p>

<p class="imagemiddle" style="text-align: center;"></p>

<p style="text-align: center;"><span style="font-size:16px;">图7</span></p>

<p><strong><span style="font-size:20px;">4.总结</span></strong></p>

<p><span style="font-size:16px;">蓝牙模块的操作还是比较方便的,不过这里没有讲到蓝牙通信部分,蓝牙通信可以通过命令也可以通过第三方库来实现,这个等后续再进行介绍!</span></p>
</div><script>                                        var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;"   style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
                                       
                                        if(parseInt(discuz_uid)==0){
                                                                                                (function($){
                                                        var postHeight = getTextHeight(400);
                                                        $(".showpostmsg").html($(".showpostmsg").html());
                                                        $(".showpostmsg").after(loginstr);
                                                        $(".showpostmsg").css({height:postHeight,overflow:"hidden"});
                                                })(jQuery);
                                        }                </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>

Jacktang 发表于 2021-9-25 19:21

<p>蓝牙通信通过第三方库来实现比通过命令要好,用命令还是感觉麻烦</p>

w494143467 发表于 2021-9-26 10:41

Jacktang 发表于 2021-9-25 19:21
蓝牙通信通过第三方库来实现比通过命令要好,用命令还是感觉麻烦

<p>命令确实会麻烦,但是麻烦的东西总比简单的学到的多~</p>
页: [1]
查看完整版本: 【米尔MYS-8MMX】Part3:蓝牙扫描与连接