在S3C2410上移植bluetooth蓝牙.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在S3C2410上移植bluetooth蓝牙

在S3C2410上移植bluetooth蓝牙??? 最近两天在HHARM2410-R3上移植了USB蓝牙设备和BlueZ 蓝牙协议栈,呵呵,蓝牙果然是个很好的东西,协议栈内容很丰富,挂上去以后可以使用很多功能。我现在就可以用它来接收GPS数据以及和用手机上网。我是在做车载的,所以特别有用。积累了一些关于蓝牙的知识,但是算是初步的,把我的经验发上来,各位做过蓝牙的大哥请多指导。 ??? 先介绍一下硬件,我用的是电脑卖场里面随便买到的USB蓝牙适配器,价格在80元左右,应该是台产的,没有牌子,像一个小一点的U盘。买之前叫卖家在windows下测试一下,带一个带蓝牙的手机过去试试看,确认能用再买。 ??? linux上的蓝牙协议栈有好几个,官方的蓝牙协议栈是Bluez,在上能找到所有的说明文档和源代码。我先是在自己的pc上安装了bluez的协议栈,然后又把它移植到了华恒HHARM2410-R3上。 (一) 在Red hat 9上安装Bluez ?? 在pc 上的安装我参考了OReilly的Linux Unwired一书,chapter 7中详细地介绍了linux下的bluetooth的基础知识、安装、配置和使用。安装前必须了解一下bluez的基本结构,直接位于发射传输协议之上的协议是HCI(host control interface),我的手机和蓝牙GPS用到的高层协议是服务发现协议SDP和模拟串口的协议RFCOMM,中间那一层协议是L2CAP,应该是处理逻辑链路的吧,我并不是很清楚,请参考bluez的官方文档。 HHARM2410-R3上用到内核版本是2.4.18,于是我在pc上安装 bluez时也使用了2.4.18的内核。使用bluez必须要对内核打patch的,于是到上下载了linux- 2.4.18.tar.bz2后到/patches.html上下载针对2.4.18的patch,patch -2.4.18-mh15.gz。于是,解压,打patch: # tar xjvf linux-2.4.18.tar.bz2 # cd linux/ # gzip -dc ../patch-2.4.18-mh15.gz | patch -p1 注意一下这时的patch的输出,在源代码方面的patch是针对driver/、include/、net/目录下的代码的修改,并没有修改到内核部分的内容,应该没有修改到linux核心的东西,在移植到S3C2410时应该不会有太大的问题。 下面就是编译内核,在config的时候关于bluez我的配置是这样的: # # Bluetooth support # CONFIG_BLUEZ=m CONFIG_BLUEZ_L2CAP=m CONFIG_BLUEZ_SCO=m CONFIG_BLUEZ_RFCOMM=m CONFIG_BLUEZ_RFCOMM_TTY=y CONFIG_BLUEZ_BNEP=m CONFIG_BLUEZ_BNEP_MC_FILTER=y CONFIG_BLUEZ_BNEP_PROTO_FILTER=y # # Bluetooth device drivers # CONFIG_BLUEZ_HCIUSB=m # CONFIG_BLUEZ_HCIUSB_SCO is not set CONFIG_BLUEZ_HCIUART=m CONFIG_BLUEZ_HCIUART_H4=m CONFIG_BLUEZ_HCIUART_BCSP=m # CONFIG_BLUEZ_HCIUART_BCSP_TXCRC is not set # CONFIG_BLUEZ_HCIBFUSB is not set CONFIG_BLUEZ_HCIDTL1=m CONFIG_BLUEZ_HCIBT3C=m CONFIG_BLUEZ_HCIBLUECARD=m CONFIG_BLUEZ_HCIBTUART=m CONFIG_BLUEZ_HCIVHCI=m ??? 供大家参考,Linux Unwired一书中有详细的说明,注意如果使用make menuconfig,一定要打开一下.config文件看看CONFIG_BLUEZ_RFCOMM_TTY=y,不能为n或者m。还有注意 CONFIG_USB_BLUETOOTH一定不能选(在USB support下),否则会影响到bluez的运行的。 ??? 内核编译好了就开始准备 bluez的库和工具了。到/download.html上下载最新的bluez程序包,我只下载了bluez -libs-2.20.tar.gz,bluez-utils-2.20.tar.gz,bluez-pin-0.25.tar.gz三个包,分别是库,工具集和由bluez提供的一个pin_hel

文档评论(0)

cgtk187 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档