蓝牙编程-设备检索.

原创 2006年06月03日 23:12:00
今天用bluez的lib写了个小程序调试,运行通过.对linux下蓝牙编程有了点初步的认识.
功能就是检索周围是否有其它蓝牙设备,并得到他们的友好设备名.


#include <stdlib.h>
#include <unistd.h>
#include <sys/socket.h>

#include <bluetooth/bluetooth.h>   //蓝牙的3个头文件.
#include <bluetooth/hci.h>
#include <bluetooth/hci_lib.h>

int main ( int argc , char **argv )
{
   inquiry_info *ii = NULL;
   int max_rsp, num_rsp;
   int dev_id, sock, len, flags;
   int i;
   char addr [19] = { 0 };
   char name [248] = { 0 };
   dev_id = hci_get_route (NULL);   //得到本地第一个可用的蓝牙设备

   sock = hci_open_dev(dev_id);     //用打开蓝牙设备.
   if( dev_id<0 || sock < 0) {
       perror("opening socket error") ;
       exit(1) ;
   }
   len = 8 ;
   max_rsp = 255 ;
   flags = IREQ_CACHE_FLUSH;
   ii = (inquiry_info*)malloc (max_rsp* sizeof ( inquiry_info)) ;
  
   printf("start search.../n");
   num_rsp = hci_inquiry(dev_id , len , max_rsp , NULL, &ii , flags) ;   //检索周围是否有设备
   if ( num_rsp < 0 ) perror ("hci_inquiry error") ;
   for ( i = 0 ; i < num_rsp ; i++) {
       ba2str (&(ii+i)->bdaddr , addr ) ;
       memset (name , 0 , sizeof (name)) ;
       if( hci_read_remote_name ( sock , &( ii+i )->bdaddr , sizeof (name) ,
          name , 0) < 0)   //查询设备的友好设备名
          strcpy (name , "[unknown]") ;
       printf ("%s %s /n", addr , name ) ;
   }
   printf("end search./n");
   free(ii);
   close(sock);
   return 0;
}
最后把这个程序交叉编译了一下,也通过了.但是还没有测试.明天再来传到板子上.
还没有正式在板子上运行过蓝牙,可能还有很多问题.


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

android设备终端与蓝牙模块(HC-06)的通讯编程思路

private BluetoothAdapter mBtAdapter = BluetoothAdapter.getDefaultAdapter(); 蓝牙模块(HC-06) 在这个项目中,...

[C#] 编程控制笔记本蓝牙与外部蓝牙设备通信

一、蓝牙模块XLBT232‐D01介绍(外部设备蓝牙) 1.1、蓝牙模块简介 XLBT232-D0101蓝牙模块采用CSR BlueCore 芯片,配置6-8Mbit 的软件存储空间, 支持AT ...
  • hbyxly
  • hbyxly
  • 2014-08-03 01:51
  • 1760

蓝牙4.0以上连接多台设备

  • 2017-05-09 16:28
  • 26.96MB
  • 下载

在手机与可穿戴设备Wearable通过蓝牙Bluetooth传递Assets(图片等)

开发android wear程序时,经常需要将图片通过Assets 蓝牙传输。 1.创建asset,使用create...()方法,比如传递一个Bitmap传输如下 [ja...

蓝牙(Bluetooth)设备查找

  • 2010-01-31 23:48
  • 63KB
  • 下载

医疗设备BLE蓝牙开发的总结。

关于 Service : 每一个设备 包含有 多个Services 每个service 对应一个uuid(可以根据Assign Number 生成,后面会提到), services...

手机蓝牙与设备通讯实例

  • 2017-09-21 15:27
  • 15.38MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)