免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1201 | 回复: 0
打印 上一主题 下一主题

bluetooth programming [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-03 15:02 |只看该作者 |倒序浏览
蓝牙模块
A机  B机
驱动程序  驱动程序 (芯片不一样,驱动也不一样)
协议  协议(例:LZCAP)
基础性协议内核已经实现了
应用层协议都是由应用程序来实现的
蓝牙编程库bluez
应用程序包utils
包含hciconfig,hcitool等工具
1.移植bluez
2.利用bluez库,写程序
本机实验
1.下载bluez-libs-3.36.tar.gz和bluez-utils-2.25.tar.gz
2.编译bluez-libs生成库和头文件
tar zxvf bluez-libs-3.36.tar.gz
cd bluez-libs-3.36
./configure
make
make install
这样就会在/usr/local/lib/目录下生成相当的库文件
libbluetooth.la libbluetooth.so.2.11.2等
在/usr/local/include/bluetooth/目录下生成相当的头文件
3.编译蓝牙工具
tar zxvf bluez-utils-2.25.tar.gz
cd bluez-utils-2.25
./confgure
make
make install
这样就生成了hciattach,hciconfig,hcitool这三个工具
4.将蓝牙适配器插入USB接口上,在虚拟机顶底单击蓝牙图标,Connect,连接进虚拟机.
执行hciconfig
会显示该蓝牙适配器的相当信息
hci0:  Type:USB
BD Address:00:1F:81:00:02:00 ACL MTU:339:6 SCO MTU:180:1
UP RUNNING
RX bytes:780 acl:0 sco:0 events:37 errors:0
TX bytes:411 acl:0 sco:0 commands:35 errors:0
5.扫描蓝牙设备
hcitool scan
结果
Scanning...
00:17:E4:36:F7:78
6.获取设备名
hcitool name 00:17:E4:36:F7:78
7.相当于ping
l2ping 00:17:E4:36:F7:78
检查通信是否正常
蓝牙编程
1.服务器端
#include
#include
#include
#include
#include  //include bluetooth base library head file
#include  //need L2CAP protocol support
int main(int argc,char **argv){
struct sockaddr_l2 loc_addr={0},rem_addr={0};
char buf[1024]={0};
int s,client,bytes_read,result;
int opt=sizeof(rem_addr);
//open a bluetooth socket
s=socket(PF_BLUETOOTH,SOCK_SEQPACKET,BTPROTO_L2CAP);
if(s0){
   printf("received:%s\n",buf);
   if(strcmp(buf,"bye")==0)
    exit(1);
   memset(buf,0,sizeof(buf));
  }
}
close(client);
close(s);
return 0;
}


#include
#include
#include
#include
#include
#include
int main(int argc,char **argv){
struct sockaddr_l2 addr={0};
int s,status;
char *dst,*buf;
if(argc==2){
  dst=argv[1];
}else{
  printf("Usage:%s addr\n",argv[0]);
  exit(1);
}
s=socket(PF_BLUETOOTH,SOCK_SEQPACKET,BTPROTO_L2CAP);
if(s


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/56374/showart_2110278.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP