概述
蓝牙技术正在迅速进入各种新产品。由于它们被集成到智能手机中,它们允许用户在没有任何外部适配器的情况下与任何打开蓝牙功能的产品轻松对话。
从2011年10月的iPhone 4S开始,苹果增加了对蓝牙v4.0的支持。苹果决定的一个重要部分是避免使用经典蓝牙的数据通信所需的认证处理器。这意味着任何人都可以使用BLE芯片组和iOS应用程序来控制设备和交换数据。
这为一大批新设备打开了闸门。你不再需要使用昂贵的认证处理器,这降低了成本。
鉴于低成本和BTLE的低功率,新的应用比如钥匙链寻找器诞生了,这些产品以前由于之前蓝牙的高功率消耗而不实用。
选择合适的芯片组以及生态系统对开发产品或小组件十分重要,因为:
- BLE产品和其应用依赖于低功率,因为它们是通过小型纽扣电池供电的。错误的设备类型会消耗更多的电流。
- 现在有越来越多的供应商提供具有不同能力和性能的蓝牙芯片,它们都是不一样的。
- BLE设备的成本通常很关键,因为产品本身的成本很低。
我们决定把我们从与多个客户合作开发BLE和蓝牙产品中了解到的许多信息,以及如何正确开发蓝牙产品都写出来。
我是否需要BLE或经典蓝牙?
我们问客户的第一个问题,也是你应该问自己的问题,就是你想传输什么样的信息。Bluetooth Smart(Bluetooth Special Interest Group一般这样叫)是为低功耗和低延时而设计的。v4.0之前的蓝牙规格侧重于发送大量的数据,如音频。这导致它们具有较高的连接延迟和高功率消耗。另一方面,BTLE牺牲了高吞吐量来实现低功率。因此,BLE不能用于流媒体音频或音乐,但它非常适合于不频繁地发送少量数据,如传感器数据。请看下面的表格,尝试看看两者之间的一些区别:
Feature |
Bluetooth LE |
Bluetooth Classic |
Audio/Headset Support |
Low quality compressed audio |
Yes |
Data Transfer |
Yes |
Yes |
A/V Control |
Non-Native |
Native |
Throughput |
1Mbps/2Mbps |
1Mbps-3Mbps |
Authentication for Apple |
Not Required for Data |
For Non-Audio Only |
Smartphone Support |
Major Support Since 2011-2012 |
Mid 2000’s |
关于是否只使用BLE(称为单模式Single Mode),只使用经典蓝牙,或同时使用经典蓝牙+BLE(称为双模式Dual Mode),有几个考虑方面。第一个是成本。支持蓝牙EDR(经典)通常更复杂,成本更高。通常,你会在两种情况下采用这种方法:
- 你必须支持没有BLE的手机。BTLE规范并不向后兼容。由于BLE在2011年之前真正开始兴起,支持旧手机需要支持旧版本的蓝牙。随着越来越多的制造商在其设备中加入BT LE,这个问题正在慢慢消失。
- 你需要支持流媒体音频或任何需要高吞吐量和低损耗的东西。
另一方面,使用BLE的理由是:
- 你的产品需要用一个小电池运行很长时间
- 你只需要从传感器、警报器等发送少量或低速率的数据
- 成本考量很重要
今天,大多数开发者都在使用只支持BLE的单模式设备。由于应用数量激增和物联网的发展,大量的供应商也专门提供这些芯片组。例如,一个智能灯泡只需要BLE来发送开/关或颜色命令,这使它的成本更低。
蓝牙芯片组和设备
让我们来了解一下一些芯片组和供应商的情况:
Mode |
Integrated Processor |
Flash |
RAM |
Current Consumption BLE (RX/TX) |
Average Current 1 sec / 4sec connection interval |
|
TI CC2540/CC2541 |
Single Mode v4.0 |
8051 |
128kB/256kB |
8kB |
17.9mA / 18.2mA to 14.7mA / 14.3mA |
24uA / 6.8uA |
Texas Instruments CC256x |
Dual Mode Classic + BLE/ANT |
No - External |
None |
None |
- |
- |
Texas Instruments CC26xx |
Single Mode BLE v4.1 |
Cortex-M3 |
128kB |
20kB |
5.9mA |
- |
Nordic Semiconductor nRF51822 |
Single Mode v4.1 / ANT |
Cortex-M0 |
128kB / 256kB |
16kB / 32kB |
9.7mA / 8mA |
15.5uA / 5.6uA |
Nordic Semiconductor nRF8001 |
Single Mode v4.0 |
None |
None |
None |
14.6mA/12.7mA |
- |
Dialog Semiconductor DA14580 |
Single Mode BLE v4.1 |
Cortex-M0 |
32kB OTP |
42kB + 8kB |
4.9mA / 4.9mA |
- |
Cypress Semiconductor PSoC 4 BLE / PRoC BLE |
Single Mode BLE v4.1 |
Cortex-M0 |
128kB / 256kB |
16kB / 32kB |
15.6mA / 16.4mA |
18.9uA / 6.2uA |
CSR CSR101x |
Single Mode BLE v4.1 |
16-bit RISC |
64kB |
64kB |
16mA |
28uA / 10.8uA |
你首先会注意到,表中的大多数设备都是单模式的,而且大多数都运行蓝牙规范的4.1版本。蓝牙v4.2还没有完全进入市场,因为它需要更新硬件,而且需要链接两边的支持。由于成本和支持蓝牙BR/EDR(经典)的复杂性,双模式设备在新的应用中并不那么受欢迎。
功耗,通常是决策的关键因素,总是一个复杂的问题,你应该看的不仅仅是BLE的峰值电流。看一下上表中的BLE峰值电流,就能了解到该解决方案能持续工作多久的一些信息。这是因为在纽扣电池设计中(这很常见),有大的峰值实际上会进一步降低容量。但是,这只是故事的一部分。每个应用都是不同的,在某些情况下,峰值的差别要小于关机模式下的电流消耗。对于系统处于睡眠状态,等待事件偶发发生的应用,或者广播和连接相对较少的应用,就是这种情况。
大多数器件提供两种封装。QFN和WLCSP。QFN是标准的四方形无引线封装,易于在产品中使用。芯片级封装(CSP)或晶圆级芯片级封装(WLCSP)基本上是带有焊球的硅模,与BGA非常相似。
我们来看看两者的区别:
- QFN封装的成本更高,体积更大,但更容易使用,而且可以减少制造问题
- WLCSP/CSP封装的成本较低,因为它们含有较少的材料,并且经过较少的加工。它们通常更小,但需要设计经验和更严格的公差,以及更多的PCB层。
虽然你可能会因为价格而选择WLCSP,但WLCSP器件的PCB设计需要更严格的公差,而且通常要超过2层,所以它更昂贵。最终,你通过使用WLCSP所节省的费用可能会被更高的PCB成本所抵消。
正确的设计和制造是至关重要的,因为糟糕的设计或制造问题可能会导致焊球的裂缝等问题。这是低合格率的主要原因之一。WLCSP适合于非常小的产品或模块,而QFN则不适合,但要用好需要一番功夫。
接下来我们将讨论上面列出的可选器件的一些优点和缺点。我们已经尽力提供尽可能多的相关信息和零件的特点,这可能与你的设计有关,但你可以想象,还有很多其他方面。
Texas Instruments CC2540 and CC2541
CC2540和它的改进版CC2541几年来一直非常受欢迎。这两种器件都有一个8051处理器,使你的应用在没有外部微控制器的情况下运行,所以总的系统成本较低。这也有一个缺点,是大多数集成解决方案所共有的。你的应用将被绑在8051处理器上,无论好坏。在许多应用中,这不会是一个问题,但在某些情况下,你的产品对性能有更高的要求。
下面是该部件的一些更详细的规格:
- 支持的蓝牙:V4.0 BLE单模式
- 完整的片上系统解决方案,包括集成BLE、微控制器和外围设备
- 集成片上8051,具有256kB或128kB闪存和8kB RAM
- 6x6mm QFN封装
- 最大0dBm输出功率
- -94dBm 灵敏度
- 模拟信号:12位ADC,比较器,温度传感器和电池监视器
- $3.29/1ku (Kilo Units)
你可以看到这个设备的外设很丰富,涵盖了很多产品。
对于CC2540和CC2541,需要考虑的一个重要方面是开发工具集。大多数单芯片BLE设备实际上是小型的软件定义无线设备。实际上,是芯片上的固件程序管理着一些低层次的BLE功能。这种灵活性可能是好事,也可能是坏事。一方面,软件定义意味着TI可以提供新的和改进的固件。另一方面,BLE库需要由链接器集成到您的软件中,这意味着它必须使用指定编译器进行链接。TI目前的BLE软件库,使用的是IAR的8051 IDE。在30天的试用后,你基本上要支付3千至4千美元才能继续用。IAR是一个非常好的编译器,但许多业余爱好者买不起这个工具。
CC2541不仅仅是一个BLE无线设备,还可以运行专有协议,而CC2540不具备这样的能力。其他区别包括:
- 最低功率模式下的RX电流从19.6mA降至17.9mA
- CC2541没有USB接口
- CC2541有硬件I2C接口。
- CC2541的TX功率只能达到0dBm,而CC2540为4dBm。
Nordic Semiconductor nRF8001
nRF8001是一个单独器件,需要一个外部微控制器,但它在内部运行BLE协议栈,所以很多低级任务已内部处理。它是通过发送命令和数据,以及从设备接收事件来控制的。SPI是一个非常常见的接口,所以很容易将其连接到大多数微控制器。使用这种设备的好处是,你可以使用你喜欢的微控制器,只要它满足你所有的应用要求,以及你已经拥有的工具集。然而,使用一个外部微控制器可能意味着一个更昂贵的解决方案。以下是一些规格说明:
- 支持的蓝牙:V4.0 BLE单模式
- 完整的BLE解决方案,集成BLE协议栈。
- 需要外部微控制器
- 6x6mm QFN
- 1.96美元/1ku
由于采用了外部微控制器,开发人员的工作量更大了,因为需要移植和处理低级别的驱动程序,以及移植示例软件。
关于nRF8001需要注意的另一点是,由于对制造商特定数据的限制,它不能发送iBeacon数据包。
Nordic Semiconductor nRF51822
北欧半导体在nRF8001之后发布了nRF51822,它是最受欢迎的BLE器件之一。这是一个集成的解决方案,因为它的体积小而吸引着开发者。它集成了一个Cortex-M0 CPU,这意味着有许多编译器可供开发。事实上,北欧公司解释了如何使用ARM GCC编译器、Eclipse和其他一些工具来设置开发环境。这可以使任何开发人员使用免费工具来使用RF51822。对于产品的开发,通常建议使用供应商的工具链,如IAR或Keil。nRF51822的一些与众不同的价值:
- 支持的蓝牙:V4.1 BLE单模式
- 完整的BLE解决方案,集成BLE协议栈。
- 集成片上ARM Cortex-M0,具有256kB或128kB闪存和16kB至32kB RAM
- 可采用6x6mm QFN和3.5×3.8mm WLCSP封装
- 电源电压:1.8V-3.6V
- 2.31美元/1ku
还记得TI在其芯片组中的软件实现的无线电控制吗?Nordic的BLE芯片组是支持多协议的设备。它支持标准的2.4GHz专有无线电功能,有三种不同的数据速率,最高可达2Mbps。如果你需要一些专有通信,这可以帮助你的产品不会过时。它与Nordic的nRF24L无线电完全兼容,这些无线电已被用于相当多的产品中。
Nordic最近发布了运行IPv6的nRF51822,这为通过互联网控制nRF51822的产品打开了大门,而不是使用Wi-Fi。这会使成本更低。这对产品开发商来说是非常有吸引力的。
nRF51822的一个优点是,它是一个成熟的器件,目前处于第三版,所以你知道Nordic已经解决了许多早期的问题,使你的产品更加可靠。
Dialog Semiconductor DA14580
Dialog是BLE领域的一个相对新成员,他们采取了不同的方法。他们的DA14580芯片组没有集成闪存。正因为如此,他们可以降低设备的成本和功耗。闪存既需要专门的电路,也需要更高的电压。Dialog的设备可以直接用碱性电池工作。让我们看看它有什么不同之处:
- 支持的蓝牙:V4.1 BLE单模式
- 集成片上ARM Cortex-M0,运行频率为16MHz,具有32kB的一次性可编程存储器
- 有6x6mm QFN. 5x5mm QFN和2.5×2.5mm WLCSP封装。
- 电源电压:0.9V-3.6V
- 用于射频的50欧姆输出阻抗
- 10位ADC
- 2.31美元/1ku
一次性可编程存储器就是这样,可编程一次。对于开发来说,用户应用和蓝牙协议栈通过JTAG加载到存储器中。该器件可以通过SPI或I2C连接到外部存储器以加载固件程序。虽然没有片上Flash那么灵活,但它可以减轻固件更新的问题。
该器件的一个很好的优点是它的射频输出已经匹配到50欧姆,所以不需要外部元件。甚至高速时钟的晶体加载电容也是集成的。
作为目前市场上电流消耗最低的部件之一,它对需要运行多年的低功率产品非常有吸引力。
Cypress Semiconductor PSoC 4 BLE / PRoC BLE
赛普拉斯PSoC 4 BLE和PRoC 4 BLE器件是独特的器件,不仅集成了BLE和ARM Cortex-M0内核,还增加了赛普拉斯独有的可编程模拟和数字模块。PSoC 4 BLE还包括赛普拉斯的CapSense控制器,该控制器是目前销售的顶级电容式触摸解决方案。
PSoC 4 BLE器件有几个优势:
- 1.9V至5.5V的宽电压,简化了电源设计,减少了与系统接口的外部元件。其他大多数BLE SoC是1.8V到3.6V,这意味着你需要额外的电压电平转换。
- 模拟转换的高度集成 - 12位1MSPS(Million Samples per Second)的ADC在BLE SoC中相对不常见。但PSoC也增加了集成的运算放大器、比较器和其他可以配置的部件。
- 灵活性--事后改变硬件会花费很多时间和成本,特别是当你已经发货的时候。PSoC架构允许你使用软件重新配置系统,因此你不会被束缚在一个特定的配置中。
- 可配置的逻辑 -通用数字块是可编程的逻辑,类似于PLD和FPGA。虽然它们不能等同于PLD和FPGA的尺寸,但它可以支持很多应用,而不必为增加逻辑等投入外部零件。
- 256kB的闪存和32kB的RAM - 当BLE堆栈占用80kB时,128kB的器件在其可支持的应用方面受到限制。256kB为更多现实世界的应用打开了大门,因为那里有更多来自传感器的数据处理。
- 48MHz的CPU速度 - BLE SoC的速度通常是有限的,16MHz是非常普遍的。但有限的速度意味着处理数据的时间更少,特别是当CPU时间与蓝牙堆栈共享时。
- 高集成度和低成本 - PSoC系统通常比较小,因为它们集成了运算放大器、ADC和其他通常需要从外部添加的元件。
- 非常低的电流消耗模式--当然,RX/TX的峰值电流数字较高(而且可能会提高),但在实际应用中,这些峰值并不总是重要的。在实际应用中,CPU可能是决定性的因素,拥有可配置的智能外设,降低CPU负载,防止它处理低级别的操作,可以大大降低功耗。
- CapTouch - 可以说是界面开发者的最佳电容式触摸解决方案。在实际产品中,它创建良好和可靠的电容式触摸界面。
- 免费的集成开发环境--赛普拉斯利用其PSoC Creator平台让客户集成PSoC外设,但它同时也作为ARM内核和BLE系统的完整开发环境。所有这些都是免费的,所以即使是小开发者团队也可以开始使用。
对于需要大量模拟部件的应用,我们是PSoC 4 BLE的忠实粉丝,在这些应用中,你可以通过避免使用外部部件来节省成本。我们所做的很多产品都受益于ADC和OpAmps,包括医疗和工业产品。
以下是该部件的一般规格:
- 支持的蓝牙:V4.1 BLE单模式
- 集成平衡器 - 天线匹配网络
- -92dBm RX灵敏度,+3dBm TX输出功率
- 集成片上ARM 48MHz Cortex-M0,具有128kB/256kB闪存和16kB/32kB SRAM
- 独特的PSoC架构,具有可编程的数字和模拟块
- 提供7x7mm 56-、3.9×3.5mm 68-球WLCSP和4.1×3.9mm 76-球WLCSP。
- 电源电压:1.9V-5.5V
Texas Instruments CC256x
在我们讨论的所有产品中,CC256x是唯一能够支持通常称为双模式配置的经典蓝牙的产品。这使它能够串流音频并支持您在想到蓝牙时通常会想到的功能。CC256x可供任何人使用,因为TI提供了评估和开发套件以及软件。其他供应商的双模式解决方案对小型制造商来说并不容易获得。
- 支持的蓝牙:v4.0 BLE和蓝牙经典 - 双模式
- 双模式解决方案可达到HCI水平
- 需要外部微控制器运行堆栈
- 8.10×7.83毫米
- 3.00美元/1ku
开发方面的考虑
分立与基于模块的设计
在进行BLE设计时,除了选择芯片组本身外,主要的考虑因素之一是是否使用蓝牙模块,或者是否进行分立蓝牙设计。
蓝牙需要FCC和Bluetooth SIG认证。使用预先认证的模块可以避免你的认证,而且通常可以更快地进入市场。但是,不同供应商出售的模块成本更高。正确的决定通常取决于产品的数量。
在某些情况下,混合使用这些方法是最好的。做你自己的模块将需要一些时间,但可以用于多种产品,并且随着时间的推移,摊销会更快。
选择模块时要注意的几个重要问题是:
- 使用的芯片组以及它与应用的契合程度
- 成本
- 关键信号的引脚布局和可用性
- 供应商提供数量的能力
- 认证以及它们如何适合预期的产品市场
RF and Antenna / 射频和天线
(Bluetooth Low Energy RF Front End Circuit)
无论你选择的是分立设计还是模块,射频设计对于确保你的系统实现最佳链接和通信范围至关重要。
BLE无线电的输出通常需要一个Balanced to Unbalanced (Balun)网络,将输出阻抗转换为标准的50Ω阻抗。
一旦转换,PCB必须保持50Ω的阻抗,以确保来自蓝牙无线电的所有功率到达天线。如果阻抗不匹配,输出功率会降低,你可能会出现错误(可能还有FCC认证问题)。
实现50Ω阻抗是导线的几何形状和使用的参考地平面的组合。有两种常见的设计:Microstrip 和 Stripline。哪一个更好取决于具体的布局和需要的堆叠。
达到良好的使用范围通常意味着使用一个好的天线并遵循最佳实践。在非常小的产品中,天线必须要小。成本也是一个因素,使PCB跟踪天线成为一个非常有吸引力的选择。但是,芯片天线通常稍贵一些,但体积较小。
清除天线周围的任何金属是很重要的,除了正常设计的接地覆铜( ground plane)。如果在天线周围存在不该有的金属,则连接可能变得不可靠。
BLE功能和堆栈
即使供应商将他们的设备称为实现了某一版本的蓝牙规范,也可能有许多功能被限制或遗漏。蓝牙规范有许多可选部分,供应商可能因为时间或技术考虑而没有实现。例如,Nordic公司提供了一个32kB版本的nRF51822部件,专门用于利用新的蓝牙功能,如支持IPv6。拥有较小RAM尺寸的供应商在技术上受到限制,无法实现某些功能。
另一个问题可能是支持的同时连接的数量。每个连接都需要更多的内存,所以一些供应商限制了可以进行的BLE连接的数量。
正因为如此,了解协议栈能做什么和不能做什么很重要。拥有更成熟设备的公司,如TI和Nordic,拥有更强大的功能,但其他供应商正在迎头赶上。
例如,nRF8001对每个BLE连接事件只能支持2-3个数据包,而nRF51822支持6个。这使得nRF51822成为吞吐量更高的设备,这在Over-The-Air下载等一些情况下可能非常重要。限制归结于内存。nRF8001只是一个网络处理器,所以它的内存不多。
外围设备 Peripherals
虽然我们已经广泛地讨论了BLE功能和处理器,但现实是,一个好的系统设计师会关注设备上的外设。外围设备几乎不需要任何软件,从而加快了开发速度。它们还可以不通过CPU以执行其他任务,这可以带来更高的性能,而且它们还可以导致整体功耗降低,因为CPU可以保持睡眠模式。
始终关注你如何能够巧妙地利用外设,即使在其他规格可能看起来很吸引人的情况下。我们曾与客户合作,某个外设意味着电池可以多运行一年。
Timers |
GPIO |
Interfaces |
Analog |
ADC |
Other |
|
CC2540/CC2541 |
3 |
21 |
2x USART |
Op-Amp |
12-bit |
USB |
CC26xx |
4 |
10, 15, 31 |
2x SSI |
Comparator, Current Source |
12-bit 200ksps |
I2S, RTC, Sensor Controller |
nRF51822 |
3 |
Up to 31 |
1x I2C UART RTC |
Temperature Sensor |
10-bit |
Quadrature Decoder |
DA14580 |
2 |
12, 22, 32 |
2x UARTS SPI I2C |
ADC |
10-bit |
Quadrature Decoder, Keyboard Controller |
PSoC4 BLE |
4 |
Up to 36 |
2x Comm Blocks |
4x OpAmps 2x Comparators |
12-bit 1Msps |
CapSense Controller |
CSR101x |
1 |
12 |
UART I2C/SPI |
ADC |
10-bit |
PWM |
一些器件带有更多的模拟功能,这对非常小的器件很有帮助。但这些模拟功能的成本也更高,特别是在C26xx和PSoC BLE器件中,这些器件的价格更高。
大多数BLE器件只有10位ADC,只有高端部件才有12位ADC。一些应用,如医疗设备可以更好地利用这一点,但这真的取决于应用。
CC26xx系列包括一个可以独立于CPU的传感器控制器,以及一个12位ADC,还有RTC等更完整的功能。
赛普拉斯的PSoC 4 BLE系列具有可编程的数字和模拟功能,可以使其在需要非常高集成度的产品中非常有用,但它们也是有代价的。
集成BLE芯片组的最大问题之一是GPIO的数量有限。在某些情况下,数量非常少,而且需要与LCD、按钮、LED、数字接口和模拟共享。在你开始设计之前,你应该仔细检查所有的要求,确保有足够的数量。在某些情况下,用数字接口(如SPI或I2C)替换部件很容易,可以使用更少的引脚。I/O端口扩展器很贵,但有时是不可避免的。
性能
根据您的产品,原始性能可能是关键。采用Cortex-M0器件的BLE芯片组的处理能力有限。如果你正在寻找一个高性能的集成解决方案,TI的CC26xx可能是你想要的,它是Cortex-M4F解决方案。
你也可以挑选自己的微控制器,并将其与网络处理器(如nRF8001),甚至是nRF51822等设备搭配。使用外部处理器需要更多空间,而且可能更昂贵,但它也有一些优势。首先是你可以为你需要的性能挑选合适的设备。你还重用此处理器的代码。你还可以避免芯片组制造商施加的限制,如有限的GPIO数量或缺乏外围设备、内存、闪存等。一个缺点是,由于样本代码较少,你将不得不更多地依靠你的技术专长来使解决方案工作。
如果你在比较设备,一定要看一下关于RAM和Flash/ROM的细则。在某些情况下,RAM被用于BLE堆栈或其他用途,你的空间将比你想象的要小。
总结
我们已经介绍了一些最受欢迎的BLE和蓝牙设备,它们的规格以及在做决定时需要注意的一些关键方面。
与往常一样,在创建BLE产品时,有许多细节和问题需要考虑。
参考:
A Guide to Selecting a Bluetooth Chipset | Argenoxhttps://www.argenox.com/library/bluetooth-low-energy/a-guide-to-selecting-a-bluetooth-chipset/