操作方法
首先,要操作蓝牙,那理所应当地要添加蓝牙相关的权限了,不然你的APP没有开启蓝牙的权限,那就没有什么实际的作用了,步骤如下图所示
加完权限之后,就得开始看一下安卓关于蓝牙的api(各个API的介绍网上或者官方都有,这里就不在赘述),接着,开始编程的思路,既然要操作蓝牙,我们就得先找到我们手机中的蓝牙,然后还得有一个对象来保存单片机上的蓝牙模块,然后还要有一个对象来接收发现蓝牙模块的广播,程序如图片
既然有了对象,就可以开始对这些对象进行操作了,首先得打开本机的蓝牙,接着让本机蓝牙开始搜索周围设备,然后设置广播的过滤器,接着重写一下广播接收对象的一个方法,最后注册广播,代码大致如下
通过上面的方法,就可以搜索到别的蓝牙设备,然后接下来就是进行蓝牙设备的连接,蓝牙设备的连接需要我们开启另一条线程,接着在那个线程里得创建一个 BluetoothSocket对象,这个对象里有可以连接蓝牙设备的方法,这个方法需要一个UUID,而单片机的蓝牙模块并不能提供给我们这个对象,所以它需要什么我们就给它初始化一个,代码如图
通过上面的方法,我们就已经建立了连接,接下来就是数据的传输了,数据传输,无非就是数据流的传输,因此就是直接创建OutputStream和InputStream对象,接着就直接对数据流的写出和读入,这些都是基础的东西,这里就简单地举一下写出的代码
写好了手机上的代码,单片机上的代码也得写正确先,单片机的代码就是简单的串口通信代码,然后将蓝牙模块的TXD接上单片机的RXD接口,蓝牙模块的RXD接上单片机的TXD接口,详情看图(以51单片机为例),然后这次的经验分享就到这结束,希望大家能留言一起讨论!