原创 低功耗蓝牙BLE之让iPhone5s控制个人PC

2013-10-8 16:50 1103 13 13 分类: 消费电子

    iPhone4s一个重要革新是集成了蓝牙4.0(BT4.0),这是双模蓝牙,支持低功耗,简称BLE,关于蓝牙的方面,可以直接到官网下些文件来了解.

今天对BLE作一简单的说明,好让各位明白用iPhone4s大致是怎么控制到PC的,BLE中有多种角色,其中两种是Central和Peripheral,相当于主和从的意思,一个Central可以连接多个从,主从之间可以双向通信,手机是Central.

为实现标题所言的功能,首先给在iphone4s写一个app,让它产生一个键盘的UI,并且在键按下后可以通过BLE将按下的键发送给Peripheral.至于如何写这么一个app,请移步百度搜索.

在Peripheral一边可以接收到这个键值,之后要通过USB发给PC,这一步就像使用USB键盘一样,使用CC2540会比较容易实现这一环节,因为它自有USB接口,且有TI已经实现的USB HID协议.在BLE-stack 1.1a版本当中,可以找到HIDDemo.eww这一例程,它原本是Central,可以再连接一个BLE键盘,这里以它为原型作更改,利用USB的部分,改变BLE角色,使之成为Peripheral,可以和手机连接.

这个想法已经实现,现在讲个大概:

给工程添加peripherel库"ble_single_chip_slave_pm_off.lib"

移除工程中现有的central.c/.h文件

增加文件peripheral.c/.h, 路径在"Projects\ble\Profiles\Roles"

增加文件simpleGATTprofile.c/.h, 路径在"Projects\ble\Profiles\SimpleProfile"

修改peripheral.c中updateReq.intervalMin = gapRole_MinConnInterval-20;

与苹果连接时必须如此设置.

修改simpleGATTprofile.c中Characteristic 1 Value为数组.

修改相应的读写回调函数

修改hidapp.c文件

增加函数simpleProfileChangeCB,并在些函数中实现对于接收到的按键的处理.将字发送到USB.

如果大家有兴趣,可以到以下网址寻找资源或联系我.

http://dl.dbank.com/c040eraaob

jordum@szrfstar.com Jordum Cheung

1.1a版本协议下载地址:

http://dl.dbank.com/c040eraaob

 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
13
关闭 站长推荐上一条 /3 下一条