要学习蓝牙先认识
一RFCOMM通道:
RFCOMM协议
一个基于欧洲电信标准协会ETSI07.10规程的串行线性仿真协议。此协议提供RS232控制和状态信号,如基带上的损坏,CTS以及数据信号等,为上层业务(如传统的串行线缆应用)提供了传送能力。
RFCOMM是一个简单传输协议,其目的是针对如何在两个不同设备上的应用之间保证一条完整的通信路径,并在它们之间保持一通信段。
RFCOMM协议概述
RFCOMM通信段
RFCOMM是为了兼容传统的串口应用,同时取代有线的通信方式,蓝牙协议栈需要提供与有线串口一致的通信接口而开发出的协议。RFCOMM协议提供对基于L2CAP协议的串口仿真,基于ETSI07.10。可支持在两个BT设备之间同时保持高达60路的通信连接。
目的:
在两个不同设备(通信设备的两端)上的应用之间保证一条完整的通信路径,并在他们之间保持一通信段。下图是一条完整的通信路径。
RFCOMM只针对直接互连设备之间的连接,或者是设备与网络接入设备之间的互连。通信两端设备必须兼容于RFCOMM协议,有两类设备:DTE (Data Terminal Endpoint,通信终端,如PC,PRINTER)和DCE (Data Circuit Endpoint,通信段的一部分,如Modem)。此两类设备不作区分。
RFCOMM服务
RFCOMM仿真RS232串口,仿真过程包括非数据通路状态的传输,RFCOMM内置空Modem仿真标准框架。
RFCOMM中的仿真RS-232通路
多串口仿真
两个采用RFCOMM通信的BT设备有可能同时打开多个串口,RFCOMM支持同时打开60个端口。
认识二:MAC硬件地址
MAC(Medium/MediaAccess Control, 介质访问控制)MAC地址是烧录在NetworkInterfaceCard(网卡,NIC)里的.MAC地址,也叫硬件地址,是由48比特长(6字节),16进制的数字组成.0-23位叫做组织唯一标志符(organizationally unique,是识别LAN(局域网)节点的标识.24-47位是由厂家自己分配。其中第40位是组播地址标志位。网卡的物理地址通常是由网卡生产厂家烧入网卡的EPROM(一种闪存芯片,通常可以通过程序擦写),它存储的是传输数据时真正赖以标识发出数据的电脑和接收数据的主机的地址。
也就是说,在网络底层的物理传输过程中,是通过物理地址来识别主机的,它一般也是全球唯一的。比如,著名的以太网卡,其物理地址是48bit(比特位)的整数,如:44-45-53-54-00-00,以机器可读的方式存入主机接口中。以太网地址管理机构(除了管这个外还管别的)(IEEE)(IEEE:电气和电子工程师协会)将以太网地址,也就是48比特的不同组合,分为若干独立的连续地址组,生产以太网网卡的厂家就购买其中一组,具体生产时,逐个将唯一地址赋予以太网卡。
形象的说,MAC地址就如同我们身份证上的身份证号码,具有全球唯一性。
步骤一:Setting Up Bluetooth
通过BluetoothAdapter得到蓝牙的Activity
发送蓝牙连接意图
通过e onActivityResult()得到蓝牙连接意图
步骤二: Finding Devices
通过得到开启蓝牙用户名和MAC地址
配对蓝牙
步骤三:连接蓝牙
就像java的聊天系统一样用一个蓝牙手机当服务器,一个当客户端,在用一个类当做连接的管理类就行了
分享到:
相关推荐
android蓝牙学习代码,可以连接蓝牙使用,但是功能较简单,仅仅学习
这是本人做android蓝牙开发时收集的关于蓝牙的源码,及学习相关资源,请大家学习学习。
一个简单的蓝牙学习资料,利用蓝牙发现蓝牙设备,传输数据
要学习此书籍,必须知道通信协议基础知识,如OSI七层协议/信道/协议,当然看不懂的部分可以到网上查询。通过此文档可以从仅了解通信基础知识的小白提升到对蓝牙技术有一定了解的半专业人士。
android 蓝牙hid协议开发,实现手机连接蓝牙鼠标、键盘、扫描枪.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
C#Android蓝牙通信,通过蓝牙配对,发送图片、语音、文字等,个人C#学习Demo.
Android蓝牙程序实例,是你学习android蓝牙程序比较好的参考实例. 采用的是andorid studio开发工具开发的。
android 蓝牙开发源码2设置蓝牙的状态!
挺好的 android 蓝牙 测试demo 供初学者 学习
安卓蓝牙通讯,蓝牙设置,蓝牙智能模块,硬件蓝牙demo,通讯,Android蓝牙开发学习参考
Android蓝牙操作:与蓝牙串口模块通信,或其他蓝牙设备通信。这个程序虽然不是很完善,但作为二次开发是不错的选择,是一个学习蓝牙串口很好的参考,里面有注释
Android蓝牙2.0串口通信代码,自动搜索,自动连接.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
Android 蓝牙基本概念,每个协议介绍,ble介绍,整理了全网所有的蓝牙基本概念,便于新人学习。
Android蓝牙开发必备,是初学者,初级工程师学习Android 蓝牙的必备手册。 主要分为三部分 1.打开蓝牙; 2.查找附近已配对或可用的设备; 3.连接设备; 4.设备间数据 交换。
android 官方demo 蓝牙4.0ble,google官方demo,可学习了解蓝牙4.0低功耗通讯方式
该项目是个人研究的Android蓝牙聊天项目,搜索附近蓝牙设备功能,可以通过蓝牙通信聊天。通过该项目,可以学习到蓝牙通信协议,通过学习BluetoothSocket和BluetoothServerSocket,同时也可以熟练掌握Socket与...
该项目是个人研究的Android蓝牙聊天项目,搜索附近蓝牙设备功能,可以通过蓝牙通信聊天。通过该项目,可以学习到蓝牙通信协议,通过学习BluetoothSocket和BluetoothServerSocket,同时也可以熟练掌握Socket与...
Android应用源码开发Demo,主要用于毕业设计学习。
这是android 蓝牙开发教程,快熟了解android蓝牙包的由来和结构,学习android不可缺少的好资料!