iOS – BLE开发笔记

CB Means CoreBluetooth
Refercene To:About Core Bluetooth
The Core Bluetooth framework provides the classes needed for your iOS and Mac apps to communicate with devices that are equipped with Bluetooth low energy wireless technology.
意思是说CoreBluetooth库提供了必要的类来满足iOS和Mac的App与低耗能蓝牙设备进行数据交互。

Central and Peripheral Devices

使用BLE的时候,我们需要区分好什么是中心设备?什么是外围设备?以及两者在蓝牙技术中扮演的角色意义。

如图1-1所示,我们一般使用的手机、电脑、IPad是中心设备,他们需要蓝牙设备传过来的数据;而蓝牙设备、便携式设备等是外围设备,他们可以发送数据给中心设备。
Centrals Discover and Connect to Peripherals That Are Advertising(中心设备发现和连接外围设备是通过广播的方式进行)外围设备会广播数据信息。
我们来看看外围设备的数据组成
中心设备(Central)如何和外围设备(Peripherals)进行数据交互
当中心设备与外围设备连接成功之后,外围设备的数据通过服务和特征传过来,同样的中心设备可以修改和设置特征的值。

Local Centrals and Remote Peripherals

在iOS中,中心设备通过CBCentralManager对象来表示。主要作用:发现和连接远程外围设备。而外围设备使用CBPeripheral对象来表示。如下图1-4所示
而远程外围设备的数据格式主要通过CBServiceCBCharacteristic两个对象来表示,如下图1-5所示
当然除了有【本地中心设备 – 远程外围设备】的模式还有一种就是【本地外围设备 – 远程中心设备】,此时需要CBPeripheralManager和CBCentral对象。当然目前不需要。上述模式如下图所示

以及【本地外围设备 – 远程中心设备】的数据表示方式如下图所示
在BLE中,中心设备有一组需要完成的任务,主要有:
1 discovering and connecting to available peripherals (发现和连接外围设备)
2 exploring and interacting with the data that peripherals have to offer (完成和外围设备的数据交互)
再BLE中,外围设备同样有一组不同于中心设备需要完成的任务
1 publishing and advertising services (分发或者广播服务)
2 responding to read, write, and subscription requests from connected centrals (回复中心设备的各类请求)
下面我们说一下如何使用Core Bluetooth Framework完成最普通的BLE的中心设备功能

  • Start up a central manager object.
  • Discover and connect to peripheral devices that are advertising.
  • Explore the data on a peripheral device after you’ve connected to it.
  • Send read and write requests to a characteristic value of a peripheral’s service.
  • Subscribe to a characteristic’s value to be notified when it is updated.
  • 在程序中,我们如何完成这几步呢?

    欢迎留言

    avatar
      Subscribe  
    Notify of