// 取得并保存蓝牙管理器对象 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(); // 调用客户端Socket的SendData()发送数据给蓝牙模块,蓝牙模块会将收到的数据通过UART转发给嵌入式设备。 BtSocket ->SendData(DataArray); // DataArray是一个数组 // 如果嵌入式设备发送数据给蓝牙模块,蓝牙模块会转发给手机,手机会缓存这些数据,App可调用客户端Socket的ReceiveData()接收数据。" BtSocket->ReceiveData(50); // 接收数据,限时等待50ms |