Linux 下Bluetooth开发包--BTX的开发的背景介绍
来源:互联网 发布:ios编程语言是什么 编辑:程序博客网 时间:2024/05/16 23:36
作者:Sam(甄峰) sam_code@hotmail.com
BTX背景介绍:
Sam所在公司需要Linux下与Bluetooth Game Control连接,Linux为操作系统的嵌入式设备使用USBBluetooth Dongle与Bluetooth GameControl连接,并收发数据。Sam评估后决定用以下结构:
1. HID,L2cap, hci 这三层protocol使用Linux下官方Bluetooth 协议栈--BlueZ.Bluez详细介绍见:[注1]
2. Bluetooth USB Dongle的驱动使用BlueZ提供的hci_usb 驱动。
3. 使用BlueZ提供的函数库和应用程序接口,创建一个针对手柄的连接库。即为BTX。这个手柄连接库提供的接口如下:
1>.Bluetooth USB Dongle初始化
2>.得到Bluetooth USB Dongle信息。
3>.查找周边Bluetooth Device设备。
4>.连接指定手柄。
5>.断开指定手柄。
6>.读取数据。
7>.写数据。
其中连接手柄是建立2个l2cap连接。PSM=0x11. 0x13.
这一层是提供给公司与所有手柄连接的库。任何一代手柄都将使用这个库作基本连接。
4. 使用BTX库和接口,开发一套针对某一代手柄所使用的库。BTRC--Bluetooth Remote Control.
因为每一代手柄连接过程中都有自己独特的加密与验证过程。并且数据格式也各不相同。所以使用这一层将这些不同与上层程序隔绝开来。
5.使用BTRC库,开发一套包含不同动作分析 的库供更上层程序使用。
注[1]:
BlueZ介绍:
Linux OS开放的bluetooth 协议栈主要包括IBM公司的BlueDrekar, Nokia公司的Affix,Axis公司的OpenBT和官方的协议栈BlueZ.
Bluetooth协议栈BlueZ分为两部分:内核代码和用户态程序及工具集。
其中内核代码由BlueZ核心协议和驱动程序组成;Bluetooth协议实现在内核源代码/net/bluetooth中。包括hci,l2cap,hid,rfcomm,sco,SDP,BNEP等协议的实现。驱动程序放在/driver/bluetooth中,包含Linux kernel对各种接口的Bluetoothdevice的驱动。例如:USB接口,串口等。
用户态程序及工具集包括应用程序接口和BlueZ工具集。BlueZ提供函数库以及应用程序接口,便于程序员开发bluetooth应用程序。BlueZutils是主要工具集,实现对bluetooth设备的初始化和控制。
BTX背景介绍:
Sam所在公司需要Linux下与Bluetooth Game Control连接,Linux为操作系统的嵌入式设备使用USBBluetooth Dongle与Bluetooth GameControl连接,并收发数据。Sam评估后决定用以下结构:
1. HID,L2cap, hci 这三层protocol使用Linux下官方Bluetooth 协议栈--BlueZ.Bluez详细介绍见:[注1]
2. Bluetooth USB Dongle的驱动使用BlueZ提供的hci_usb 驱动。
3. 使用BlueZ提供的函数库和应用程序接口,创建一个针对手柄的连接库。即为BTX。这个手柄连接库提供的接口如下:
1>.Bluetooth USB Dongle初始化
2>.得到Bluetooth USB Dongle信息。
3>.查找周边Bluetooth Device设备。
4>.连接指定手柄。
5>.断开指定手柄。
6>.读取数据。
7>.写数据。
其中连接手柄是建立2个l2cap连接。PSM=0x11. 0x13.
这一层是提供给公司与所有手柄连接的库。任何一代手柄都将使用这个库作基本连接。
4. 使用BTX库和接口,开发一套针对某一代手柄所使用的库。BTRC--Bluetooth Remote Control.
因为每一代手柄连接过程中都有自己独特的加密与验证过程。并且数据格式也各不相同。所以使用这一层将这些不同与上层程序隔绝开来。
5.使用BTRC库,开发一套包含不同动作分析 的库供更上层程序使用。
注[1]:
BlueZ介绍:
Linux OS开放的bluetooth 协议栈主要包括IBM公司的BlueDrekar, Nokia公司的Affix,Axis公司的OpenBT和官方的协议栈BlueZ.
Bluetooth协议栈BlueZ分为两部分:内核代码和用户态程序及工具集。
其中内核代码由BlueZ核心协议和驱动程序组成;Bluetooth协议实现在内核源代码/net/bluetooth中。包括hci,l2cap,hid,rfcomm,sco,SDP,BNEP等协议的实现。驱动程序放在/driver/bluetooth中,包含Linux kernel对各种接口的Bluetoothdevice的驱动。例如:USB接口,串口等。
用户态程序及工具集包括应用程序接口和BlueZ工具集。BlueZ提供函数库以及应用程序接口,便于程序员开发bluetooth应用程序。BlueZutils是主要工具集,实现对bluetooth设备的初始化和控制。
- Linux 下Bluetooth开发包--BTX的开发的背景介绍
- NET下的流程图开发包介绍
- NET下的流程图开发包介绍
- NET下的流程图开发包介绍
- wince下bluetooth程序开发的概述
- SNMP++开发包介绍和在VS2008下的编译
- Bluetooth在andriod下的开发基本操作
- Bluetooth在andriod下的开发基本操作
- Bluetooth在andriod下的开发基本操作
- Linux 下的Bluetooth 架构
- Linux 下的Bluetooth 架构
- Linux下Bluetooth的使用
- Linux 下的Bluetooth 架构
- Linux 下的Bluetooth 架构
- Linux默认环境下开发缺少的安装包
- <Linux+Qt>Linux下的Qt开发(一)基本背景知识
- Rdis客户端开发API包的介绍
- 几种Linux下嵌入式开发环境的简单介绍
- JS捕获关闭浏览器事件
- 生成树的两种递归方式
- BTX初建
- 路由虚拟化之梦--准备
- Android数据存储之SQLite数据库存储数据
- Linux 下Bluetooth开发包--BTX的开发的背景介绍
- 摆脱对已删除对象进行操作时出现的异常!
- 自己写hibernate(模拟实现)
- 八款开源 Android 游戏引擎
- Bluetooth HCI Event的处理
- ios push server wrote by php
- Linux BlueZ 下 Inquiry的实现
- C语言编译原理简介
- gcc和g++的区别。四个理解误区