树莓派连接蓝牙适配器,与手机通过蓝牙进行通信
[*]#include <stdio.h>
[*]#include <unistd.h>
[*]#include <sys/socket.h>
[*]#include <bluetooth/bluetooth.h>
[*]#include <bluetooth/rfcomm.h>
[*]
[*]int main(int argc, char **argv)
[*]{
[*] struct sockaddr_rc addr = { 0 };
[*] int s, status, len=0;
[*] char dest[18 = "00:12:01:31:01:13";
[*] char buf[256;
[*] // allocate a socket
[*] s = socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM);
[*]
[*] // set the connection parameters (who to connect to)
[*] addr.rc_family = AF_BLUETOOTH;
[*] addr.rc_channel = (uint8_t) 1;
[*] str2ba( dest, &addr.rc_bdaddr );
[*]
[*] // connect to server
[*] status = connect(s, (struct sockaddr *)&addr, sizeof(addr));
[*]
[*]
[*] if(status){
[*] printf(" failed to connect the device!\n");
[*] return -1;
[*] }
[*]
[*]
[*] do{
[*] len = read(s, buf, sizeof buf);
[*]
[*] if( len>0 ) {
[*] buf[len=0;
[*] printf("%s\n",buf);
[*] write(s, buf, strlen(buf));
[*] }
[*] }while(len>0);
[*]
[*] close(s);
[*] return 0;
[*]}
[*]现在树莓派与手机已经连接,但无法读取到手机发送的信息,树莓派上的连接选的是Serial Port
页:
[1]