随着低功耗蓝牙技术的发展,各种简单、有趣的智能产品(基于低功耗蓝牙技术)层出不穷,如防丢器、可穿戴计步手环、蓝牙智能灯泡等,这些方案应用相对简单,产品又十分有趣,不少工程师都希望亲自动手DIY一个,无奈很多工程师都受制于对蓝牙通信协议的不了解,即便是脑海中有不少有趣的方案、想法,却都不能付之行动。今天爱板网就为大家介绍一款便于开发的低功耗蓝牙开发套件——赛普拉斯CY8CKIT-042-BLE PIONEER KIT,让你通过简单的学习、实践,实现低功耗蓝牙应用的DIY。
CY8CKIT-042-BLE PIONEER KIT套件是基于赛普拉斯推出的高集成度的单芯片低功耗蓝牙解决方案——PSoC® 4 BLE 可编程片上系统,目的是简化基于传感器的低功耗物联网应用设计,下面一起来看看套件本身。
开箱
CY8CKIT-042-BLE PIONEER KIT所含的学习开发配件非常丰富,主要的硬件开发板包括了:
- 一个BLE基板(预搭载了CY8CKIT-142 PSoC 4 BLE模块)
- 一个CY5671 PRoC BLE 模块
- 一个CY5670 - CySmart USB Dongle
另外配件中还带有一份快速上手指导手册、一根miniUSB线缆、一个纽扣电池 (3V CR2032)、4根跳线以及两根接近式传感器线,方面整个学习开发过程中的上手、调试。
CY8CKIT-042-BLE PIONEER KIT开发套件中的CySmart USB Dongle是一个USB BLE 收发器,可与赛普拉斯提供的CySmart软件工具进行配对,将用户的Windows PC转化为一个低功耗蓝牙调试环境,在出厂的设置中,你也可以理解为是一个蓝牙的主机(类似手机),可与从机,也就是套件中的BLE基板(预搭载了CY8CKIT-142 PSoC 4 BLE模块,也可以换成CY5671 PRoC BLE 模块)进行通信。在实际上电体验前,我们先来看下整套CY8CKIT-042-BLE低功耗蓝牙开发套件的硬件资源组成。
在取下了CY8CKIT-142 PSoC 4 BLE模块后,基板的板载资源如下:(下一页)
- 板载PSoC 5LP CY8C5868LTI-LP039芯片,可以作为编程和仿真工具
- 板载F-RAM型号FM24V10,1Mb的容量,即128K字节容量
- 1个RGB LED指示灯
- 1个接近式感应头、1个包含5个段的电容感应模块、1个用户使用开关、1个BLE模块复位开关
- 兼容开源硬件Arduino接口
- 三种电压供电模式1.9V、3.3V、5V三种电压
蓝牙开发板推荐:
- RFD90102 蓝牙开发套件 一款集成蓝牙4.0 BLE在指尖大小的开发板上并且能够与蓝牙4.0兼容的智能手机和电脑兼容。
- 低功耗蓝牙套件 一款使医疗和健身设备连接到10亿台支持BLE的移动互联网设备同时可与Kinetis模块化塔式系统结合使用。
- WunderBar 开发套件 一款传感器模块自动连接到带有蓝牙低功耗(BLE)连接主模块用来来创建Android或iOS的物联网应用。
BLE基板的设计融合了当下的流行元素,如兼容开源硬件Arduino接口方便工程师DIY,不过最让笔者吃惊的是板卡居然搭载了赛普拉斯自家的FRAM(铁电随机存取存储器,将近7美金的价格),这属于非易失存储器件,具备高速存取、写入模式的高耐受性、低功耗、非易失和出色的防篡改功能。 因此,这款存储器特别适用于需要高安全性和低消耗的智能卡,以及移动电话和其他设备。整个基板的硬件系统框图如下。
重点来看下开发套件中的两个BLE模块。
相信大部分工程师都会好奇,为什么开发套件中附带了两个BLE模块,这两个模块又有什么区别呢?为此,笔者也花功夫细致的比较了下这两个模块的特点,发现除了主芯片不同外,硬件电路是一样的,这两者的不同也就成了芯片之间的比较了。
CY8C4247LQI-BL483
CYBL10563-56LQXI
红色的PSoC 4 BLE模块搭载的是赛普拉斯的CY8C4247LQI-BL483低功耗蓝牙芯片,而黑色的PRoC BLE模块搭载的则为CYBL10563-56LQXI芯片。(PSoC: Programmable Systems-on-Chip;PRoC: Programmable Radio-on-Chip)。这两个SoC都是基于48MHz的Cortex-M0处理器的单芯片解决方案,都集成了一样的BLE射频,所以两者RF参数以及功耗都是一致的:
- TX 输出功率:-18dBm~+3dBm
- RX灵敏度:-89dBm
- TX功耗:15.6 mA @ 0 dBm
- RX功耗:16.4 mA
另外两者都集成了CapSense、LCD驱动等功能,不同的是CY8C4247LQI-BL483更加灵活以及更加注重模拟方面的功能集成,如DAC、低功耗比较器、运放等,两者的具体差别可以参考下表。(下一页)
(点击表格放大)
蓝牙开发板推荐:
- RFD90102 蓝牙开发套件 一款集成蓝牙4.0 BLE在指尖大小的开发板上并且能够与蓝牙4.0兼容的智能手机和电脑兼容。
- 低功耗蓝牙套件 一款使医疗和健身设备连接到10亿台支持BLE的移动互联网设备同时可与Kinetis模块化塔式系统结合使用。
- WunderBar 开发套件 一款传感器模块自动连接到带有蓝牙低功耗(BLE)连接主模块用来来创建Android或iOS的物联网应用。
CY5670 - CySmart USB Dongle收发器
CySmart USB Dongle收发器在这个开发套件中是作为蓝牙的主机设备存在的,配合电脑端的CySmart软件工具可以实现与PSoC BLE开发板配对通信(可以理解成手机端)。
CySmart USB Dongle收发器硬件框图如下:
作为一个USB Dongle收发器,板卡在设计的时候选用了功能极少的CYBL10162-56LQXI(如下表所示),虽然和PRoC BLE属于同一个系列,但是去掉了CapSense、LCD等外设功能,在嵌入式设计的时候遵循了适用就好的原则,减少了一定的成本,使资源利用最大化。
至于CYBL10162-56LQXI SoC的BLE射频参数,那和之前的CY8C4247LQI-BL483以及CYBL10563-56LQXI是一样的,这里就不再重复介绍了。
开发环境
提到开发环境,不得不说、不得不赞叹下赛普拉斯自家的PSoC Creater,这个IDE工具非常好用,可以说是赛普拉斯的呕心力作,目前最新的版本是3.3。
PSoC Creater是通过硬件连接的方式来实现软件驱动的自动化生成,对于驱动这块不熟悉的软件工程师来说绝对的幸福的神器,只要你把相关资源的组件放置好,对应定义好硬件接口,点击编译系统就可以自动的把相关资源的驱动生成。工程师只需要在代码中直接调用API函数即可。在实际开发过程中,可以大大缩短研发周期,从而加快产品的上市。
在赛普拉斯提供的完整软件安装包中,除了PSoC Creater,还包括CySmart、PSoC Programmer等工具,可以配合PSoC 4 BLE开发套件共同使用,而这里有一点要重点说下,在使用PSoC 4 BLE 的KitProg USB转UART驱动的时候,PC机的系统最好不要为Ghost系统,由于精简了一些系统文件,可能会出现无法有效安装的情况,虽然看起来是个小问题,但是实际体验的时候能把人折腾死。(下一页)
蓝牙开发板推荐:
- RFD90102 蓝牙开发套件 一款集成蓝牙4.0 BLE在指尖大小的开发板上并且能够与蓝牙4.0兼容的智能手机和电脑兼容。
- 低功耗蓝牙套件 一款使医疗和健身设备连接到10亿台支持BLE的移动互联网设备同时可与Kinetis模块化塔式系统结合使用。
- WunderBar 开发套件 一款传感器模块自动连接到带有蓝牙低功耗(BLE)连接主模块用来来创建Android或iOS的物联网应用。
CY8CKIT-042-BLE开发
赛普拉斯的PSoC 4系列板卡在爱板网之前的评测文章中我们也有体验过,今天的话就重点来看下BLE的开发。众所周知,BLE由于低成本、低功耗、快速启动、瞬间连接等众多优点在目前炙手可热的智能硬件产品领域有广泛的应用空间。它可以实现点对点,也可以点对多,一个BLE主机可以连接多个BLE从机,组成星形网络,就比如我们目前市面上的蓝牙智能灯泡、寻物防丢器等产品。
在BLE的规范中,定义了GAP(Generic Access Profile)和GATT(Generic Attribute)两个基本配置文件:
- GAP层负责设备访问模式和进程,包括设备发现,建立连接,终止连接,初始化安全特性和设备配置
- 而GATT层则用于已连接的蓝牙设备之间的数据通信
GATT有Service和Client,Service作为服务器端,对GATT Client提供read/write接口,一般情况下,Central作为Client,Peripheral作为Service,这里我们以一个比较经典的应用寻物防丢器来体会下主机(Client)和从机(Service)之间的工作的。
从机开始广播--->然后主机扫描广播的从机--->当从机收到主机的扫描请求后,会向主机发生扫描回应数据--->然后主机发起连接--->最后主从机开始通讯。
在赛普拉斯提供的众多Demo中,就有这么经典的例程——BLE_FindMe,也就是类似寻物防丢器的应用。本例程中,BLE基板(预搭载了CY8CKIT-142 PSoC 4 BLE模块)作为从机,并且作为GATT service设备,CySmart USB Dongle收发器作为主机,并且作为GATT client设备,而主要的功能是实现BLE的LED报警功能,我们来实际看下。
打开PSoC Creator3.3-->File-->Code Example,找到BLE_FindMe例程。
打开这个例程后,我们可以发现,本项目有几个重要的组件:BLE、三个Port输出。(当然,这些组件已经配置完毕。)
LED的配置相对简单,重要的是BLE模块的配置,双击BLE组件即可进入BLE的配置。Find Me就是让其他设备找到这个设备,它作为从机,使用GATT Service规则,如下图中配置的那样。
在Profiles中设置的及时报警功能。
GAP的配置。(下一页)
蓝牙开发板推荐:
- RFD90102 蓝牙开发套件 一款集成蓝牙4.0 BLE在指尖大小的开发板上并且能够与蓝牙4.0兼容的智能手机和电脑兼容。
- 低功耗蓝牙套件 一款使医疗和健身设备连接到10亿台支持BLE的移动互联网设备同时可与Kinetis模块化塔式系统结合使用。
- WunderBar 开发套件 一款传感器模块自动连接到带有蓝牙低功耗(BLE)连接主模块用来来创建Android或iOS的物联网应用。
BLE组件配置完成后,进行最终的硬件引脚的连接。
编译后自动生成相关代码及BLE协议栈代码就可以直接在程序中调用,这里的话已经使用默认的Demo进行编译下载。
下载完成后我们就完成了BLE基板(预搭载了CY8CKIT-142 PSoC 4 BLE模块)的开发,然后接着就要设置CySmart USB Dongle收发器,将这个USB Dongle连接到电脑。
打开CySmart1.1软件,点击相应的串口号进行连接。
再界面中找到Start Scan按钮即能够找到下载Find Me例程后的PSoC 4 BLE开发板,可以看到,由于两块板卡相距很近,信号强度很高。
发起连接,点击Discover ALL Attributes,相关信息与我们Demo中BLE组件配置的一致,然后我们可以在右边窗口写入命令即可实现RGB LED的报警功能,而且还能实现固件的OTA升级,非常不错。(下一页)
蓝牙开发板推荐:
- RFD90102 蓝牙开发套件 一款集成蓝牙4.0 BLE在指尖大小的开发板上并且能够与蓝牙4.0兼容的智能手机和电脑兼容。
- 低功耗蓝牙套件 一款使医疗和健身设备连接到10亿台支持BLE的移动互联网设备同时可与Kinetis模块化塔式系统结合使用。
- WunderBar 开发套件 一款传感器模块自动连接到带有蓝牙低功耗(BLE)连接主模块用来来创建Android或iOS的物联网应用。
手机客户端开发
当然,作为面向物联网、智能硬件应用的低功耗蓝牙开发套件,少不了手机端的控制,赛普拉斯也为CY8CKIT-042-BLE套件提供安卓与苹果的系统APP,以Andriod为例,打开CySmart App与开发板连接。
可以直接通过APP中提供的功能实现LED的警报。
或者也可以通过写入命令来实现警报功能,这与上面演示的PC客户端实现的功能同理。
另外,笔者也将PSoC 4 BLE模块换成PRoC BLE模块进行测试,功能虽然做了一些改变,但是效果原理都是一样的。
CapSense功能演示
RGB LED功能演示
小结
介绍了赛普拉斯CY8CKIT-042-BLE PIONEER KIT整个硬件资源以及开发环境、软件的使用,套件提供了3种不同规格型号的低功耗蓝牙解决方案,配合赛普拉斯独有的PSoC Creator IDE工具(集成了蓝牙BLE协议栈,用户可以在不完全理解蓝牙BLE的情况下进行使用,甚至开发新产品,大大降低了低功耗蓝牙的开发门槛),用户可以通过硬件思维的方式实现软件驱动的生成,然后再通过应用层代码的直接调用即可轻松实现功能,即便是没有BLE基础的小白用户都可以根据官方提供的资料文档、Demo例程的修改DIY一些目前市面上炙手可热的低功耗蓝牙智能硬件产品,有兴趣的朋友也可以向爱板网申请试用。
更多低功耗蓝牙开发板、应用推荐
低功耗蓝牙开发套件:
- 加速蓝牙产品开发——博通WICED Sense开发套件评测
- FireBLE低功耗蓝牙开发板评测 > 可穿戴手环+蓝牙防丢器
可穿戴手环:
- 做加法还是做减法? – 去芜存菁看全球各色智能手环
- 方案在这,用户在哪?——想说爱你不容易的入门级可穿戴设备
- 计步准确,算法智能——体验连爱智能手环
- 华而不实——“智能”穿戴设备Flashclip计步器评测拆解
蓝牙智能灯泡:
- 都是179元,蓝牙智能灯泡哪家强?—Yeelight BlueII与iMagic幻彩智能灯泡对比分析
- 内外兼修,提升明显——iMagic蓝牙智能灯二代拆解
- 智能家居新伙伴——iMagic智能LED灯评测拆解
蓝牙防丢器:
- 加速蓝牙产品开发——博通WICED Sense开发套件评测
- 让你一见倾心的玩意——智能蓝牙寻物防丢器Tile拆解
- 苹果又一项颠覆性创新iBeacon?——estimote拆解评测
- 基于蓝牙4.0低功耗技术——寻物防丢器评测拆解
原创申明:本文为爱板网原创,谢绝转载!
随着低功耗蓝牙技术的发展,各种简单、有趣的智能产品(基于低功耗蓝牙技术)层出不穷,如防丢器、可穿戴计步手环、蓝牙智能灯泡等,这些方案应用相对简单,产品又十分有趣,不少工程师都希望亲自动手DIY一个,无奈很多工程师都受制于对蓝牙通信协议的不了解,即便是脑海中有不少有趣的方案、想法,却都不能付之行动。今天爱板网就为大家介绍一款便于开发的低功耗蓝牙开发套件——赛普拉斯CY8CKIT-042-BLE PIONEER KIT,让你通过简单的学习、实践,实现低功耗蓝牙应用的DIY。
CY8CKIT-042-BLE PIONEER KIT套件是基于赛普拉斯推出的高集成度的单芯片低功耗蓝牙解决方案——PSoC® 4 BLE 可编程片上系统,目的是简化基于传感器的低功耗物联网应用设计,下面一起来看看套件本身。
开箱
CY8CKIT-042-BLE PIONEER KIT所含的学习开发配件非常丰富,主要的硬件开发板包括了:
- 一个BLE基板(预搭载了CY8CKIT-142 PSoC 4 BLE模块)
- 一个CY5671 PRoC BLE 模块
- 一个CY5670 - CySmart USB Dongle
另外配件中还带有一份快速上手指导手册、一根miniUSB线缆、一个纽扣电池 (3V CR2032)、4根跳线以及两根接近式传感器线,方面整个学习开发过程中的上手、调试。
CY8CKIT-042-BLE PIONEER KIT开发套件中的CySmart USB Dongle是一个USB BLE 收发器,可与赛普拉斯提供的CySmart软件工具进行配对,将用户的Windows PC转化为一个低功耗蓝牙调试环境,在出厂的设置中,你也可以理解为是一个蓝牙的主机(类似手机),可与从机,也就是套件中的BLE基板(预搭载了CY8CKIT-142 PSoC 4 BLE模块,也可以换成CY5671 PRoC BLE 模块)进行通信。在实际上电体验前,我们先来看下整套CY8CKIT-042-BLE低功耗蓝牙开发套件的硬件资源组成。
在取下了CY8CKIT-142 PSoC 4 BLE模块后,基板的板载资源如下:(下一页)
- 板载PSoC 5LP CY8C5868LTI-LP039芯片,可以作为编程和仿真工具
- 板载F-RAM型号FM24V10,1Mb的容量,即128K字节容量
- 1个RGB LED指示灯
- 1个接近式感应头、1个包含5个段的电容感应模块、1个用户使用开关、1个BLE模块复位开关
- 兼容开源硬件Arduino接口
- 三种电压供电模式1.9V、3.3V、5V三种电压
蓝牙开发板推荐:
- RFD90102 蓝牙开发套件 一款集成蓝牙4.0 BLE在指尖大小的开发板上并且能够与蓝牙4.0兼容的智能手机和电脑兼容。
- 低功耗蓝牙套件 一款使医疗和健身设备连接到10亿台支持BLE的移动互联网设备同时可与Kinetis模块化塔式系统结合使用。
- WunderBar 开发套件 一款传感器模块自动连接到带有蓝牙低功耗(BLE)连接主模块用来来创建Android或iOS的物联网应用。