YC2440-F移植blueZ

2023-09-25 12 0

准备工作:a. 在http://www.bluez.org/download/下载 bluez-libs-2.25.tar.gz 和 bluez-utils-2.25.tar.gz压缩包。b.ARM-LINUX-GCC  3.3.2版本,在终端arm-linux-gcc -v查看。c.我的板子上是扬创出厂时的内核版本2.6.13。
      具体步骤:
1.重新编译内核开启对蓝牙USB模块的支持:make menuconfig 后按"Y"选中:L2CAP protocol support,SCO links support,RFCOMM protocol support,RFCOMM TTY support,BNEP protocol support,HIDP protocol support,另外在Bluetooth device drivers 里选上HCI USB driver,保存后,make uImage。按扬创手册把内核烧写到板子上。
2.在PC端交叉编译blueZ库和工具包:
   (1 )  #mkdir /home/225blueZ      //在home下建立225blueZ目录
                #tar -xzvf bluez-libs-2.20.tar.gz  -C  /home/225blueZ      //解压库文件到225blueZ目录下
                #cd  bluez-libs-2.25     //进入解压得到的目录bluez-libs-2.25
                #./configure --host=arm-linux  CC=arm-linux-gcc  //这里我用的是3.3.2的编译器版本
               #make all
               #make install      //这里都是采用的默认安装,后面的步骤会把库和工具一起下载到开发板上
   (2) #cd /home/225blueZ      
             #tar -xzvf bluez-utils-2.20.tar.gz  -C  /home/225blueZ       //解压utils
             #cd  bluez-utils-2.25
             #./configure --host=arm-linux  CC=arm-linux-gcc --disable-test --disable-cups --disable-pcmia
             #make all
            #make install
  (3)在(1)(2)步骤中得到的库和工具在/usr/local下bin,include,lib,sbin,share目录;/etc下的bluetooth目录;/var/lib下的bluetooth目录,把这些目录拷贝到开发板对应的目录,到此bluez安装成功,注意拷贝的时候/usr/local/的lib目录中的5个库文件和pkgconfig文件夹一定要全部拷贝开发板对应的位置。

      3.把USB插入板子USB HOST1中,超级终端里显示:
      usb 1-1: new full speed USB device using s3c2410-ohci and address 3
  在开发板中/usr/local/bin/中和/usr/local/sbin/中都是可执行文件,如果提示权限不够请用 chmod +x  XXX 改变可执行文 件权限。
  (1)进入sbin/中  执行 ./hcid  这样打开手机就可以找到板子的blueZ(0)
  (2)在bin目录下  执行./hcitool scan 可以查看手机地址和用户名
  (3)./sdptool browse 查看手机开启的服务

代码编程
赞赏

相关文章

【C】浅析 #define 宏和函数的区别
【C】浅析 关键字
【C】库函数之 sqrt
【C】折半(二分)查找
fio_generate_plots
【Linux】进程的调度算法