设为首页 加入收藏

TOP

童话故事 --- 蓝牙通信 --- 连接手机和嵌入式设备(二)
2017-10-16 18:18:39 】 浏览:6373
Tags:童话故事 --- 蓝牙 通信 连接 手机 嵌入式 设备
设计也很简单,我们聚焦如何通过蓝牙进行数据收发。"

 

借助蓝牙SPP服务,实现手机与嵌入式设备之间的通信

1:本文旨在明晰蓝牙通信原理,仅列出扼要代码,如需完整代码,可联系本人。

2:确保已开启手机蓝牙

3:确保蓝牙模块已在手机的已配对设备列表中。

// 取得并保存蓝牙管理器对象

TBluetoothManager *BtManager = TBluetoothManager::Current;

 

// 取得并保存蓝牙适配器对象

BtAdapter = BtManager ->CurrentAdapter;

 

// 取得已配对的蓝牙设备列表

TBluetoothDeviceList *PairedDevices = BtManager ->GetPairedDevices();

 

// 将蓝牙设备列表显示在组合框cbPairedDevices(代码略)

 

// 获取组合框中被选中的蓝牙设备对象

TBluetoothDevice * SelDevice = PairedDevices ->Items[cbPairedDevices->ItemIndex];

 

// 获取该蓝牙设备的服务列表

TBluetoothServiceList * ListServices = SelDevice->GetServices();

 

// 在服务列表中查询是否支持SPP服务(代码略)

 

// 若支持SPP服务

 

// SPP服务UUID创建一个客户端Socket

TBluetoothSocket *BtSocket = SelDevice ->CreateClientSocket(StringToGUID(SPP_GUI), false);

 

// 用客户端Socket连接蓝牙模块。

BtSocket ->Connect();

 

// 调用客户端SocketSendData()发送数据给蓝牙模块,蓝牙模块会将收到的数据通过UART转发给嵌入式设备。

BtSocket ->SendData(DataArray); // DataArray是一个数组

 

// 如果嵌入式设备发送数据给蓝牙模块,蓝牙模块会转发给手机,手机会缓存这些数据,App可调用客户端SocketReceiveData()接收数据。"

BtSocket->ReceiveData(50); // 接收数据,限时等待50ms

 

黛丝:

"以上就是手机App与蓝牙模块间收发数据的基本流程及其实现。"

高飞狗:

"黛丝,你讲得太深入浅出了!啊哦,快到饭点了,我请你吃个便饭,聊表谢意!"

黛丝:

"已经有人约我吃饭了,你们就赶紧回去试验,有什么问题随时Call我。"

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇activity间数据传递 下一篇Activity切换的时候生命周期的变化

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目