|
本次就来深入分析下Nordic的最新蓝牙芯片nRF52832。
Z. q' b- q c. i9 c1 _$ I 目前有很多的芯片原厂发布了自己的BLE SoC芯片,其中NORDIC半导体的nRF52832是知名的nRF51822的后续作品,它将BLE SoC带到了一个新的高度。这款产品有很多让人兴奋的地方,它带来了更高的性能、更低的功耗以及更多的功能。
8 k: J4 i+ ?9 v. H4 |8 F' ~ 从nRF51822/nRF51422升级而来
- t3 a9 [# _/ Y0 g' G 知名的nRF51822是一颗Bluetooth Low Energy的SoC,它拥有Cortex-M0内核,运行频率为16Mhz。而nRF52832则是Cortex-M4F内核,并且拥有更大的RAM和Flash,还有更多的功能以及更好的RF性能。- y) g- j3 G0 p1 ~
下表对比了nRF52832和nRF51822还有另外一个厂家的BLE芯片:$ c* h$ |; B% A7 P* n$ `: k
; s7 |+ U5 i( }( A- B: `: C: E 下面我们来看看这些参数中有哪些亮点。3 N. s% Y# q& s: i
d# _1 O( H# K9 @2 r. C! p 功耗' G2 y" {; Y" g" m; s+ G
+ O4 C7 l3 o. ]2 L; V" C 每一代新的BLE SoC出来,必定在功耗上面做些优化,nRF52832更是在nRF51822的基础上几乎将功耗降低了一半:
+ |. P7 I+ d. {. n% K9 q0 V+ E$ r' r: a% `
4 a5 @. ]+ a8 Z% j& E/ r+ b Active-mode RX:5.5 mA
: |0 h- n; R! h Active-mode TX @ 0dBm: 5.5mA
* A$ T$ S l$ u- Z( } Active-mode TX @ 4dBm: 7.7mA0 i P4 }3 @. w
2 u* B8 M+ H4 { X; i 这些功耗数据对比TI的CC26XX很有优势,即使是对比其他家的产品也是如此。
x0 X. u2 m; m0 W& M
' [6 U/ w+ K6 y- } | ?- n 真正使用时的功耗还依赖于很多其他因素,比如运行的频率或者BLE的参数(连接或者广播的间隔)$ f; r8 e. A7 h9 D
: P: |' l7 S& O! W/ G
Cortex-M4F 内核2 h- d% s! N2 E. p! L2 X# C9 Q! N
9 N) z! \, y9 q5 `+ ?. C; \3 S
新一代的nRF52832加入了很多新的功能。比如Cortex-M4F的内核,它能够更强大的运算能力以及浮点运算的技术。现在很多的穿戴设备或者工业化设备需要内置非常复杂的算法,所以需要MCU有更快的运行速度。这颗Cortex-M4F的内核运行期64Mhz,比其他厂家的芯片提高了很多。. f2 `! }5 A$ X3 ?: d2 H- j
4 \0 ?- f1 d+ o2 [9 E
这颗SoC有512KB的Flash和64KB的RAM,这也超出其他厂家的芯片一大截。Nordic称将会有400KB的Flash可以用于应用程序。如果你曾经开发过BLE的产品就会知道,BLE的协议栈至少要占80KB以上的Flash。如果像大多数的BLE SoC那样只提供128KB的Flash的话,应用程序只有大概40KB的空间,不过对于一般的传感器采集的任务来说是差不多的。之前的nRF51822最高提供256KB的Flash,这在当时也是比较少见的,我们很高兴看到Nordic再次提升了Flash的空间。
' o; ^, e- x7 ]+ K) @, t3 r
/ S: n0 W' l7 [6 v; `6 ]7 e 额外的Flash和RAM空间也意味着nRF52832可以支持多协议,并且在运行时自动切换。现在有很多产品已经支持了多协议这个特性(见上篇文章),看来这似乎会变成业界标准,因为目前并不是只有BLE一个无线协议。
- l& c* d7 |# A: |- V, ?& _' N# l# |5 k' w& E0 E% s Y; ^
BLE协议栈
% O% f4 w4 ]& a0 R) R" ?3 E7 V, F1 q7 I% Y+ T1 N8 [0 b2 i2 T) q4 a% f6 M
Nordic将Cortex-M0内核升级到Cortex-M4F内核,可以保证BLE协议栈无需更改。这就意味着开发者可以使用一个更加稳定的协议栈,并且直接运行之前的几十种例程。
H" P: z; s, k0 Y) G- d7 q1 d% c) I2 z, |6 Z* L
Nordic目前没有提到关于Bluetooth 4.2方面的事情,不过可以肯定是,既然新的硬件已经出来了,通过升级软件来做到更多的事情是肯定的。Bluetooth 4.2(见下一篇文章)提供了更快的传输速度、更高的安全性以及更低的功耗。
2 [6 d4 E) F8 N1 p/ i
% U; W; }9 W' A! b/ Z- ^ RF效率6 B J) I1 L' Y7 T8 W& O6 P6 e: F
! B+ p* T8 d9 F
我们必须谈一下RF的部分,毕竟所有的数据都是要通过这里的。
' Q4 w ^2 W; D0 ?9 w! N) ~: g2 k4 V: M* W- m
新的nRF52832提供了-96dBm的灵敏度,这个数据非常接近于TI的-97dBm,更高的灵敏度意味着更远的传输距离。# k! N* j* }% \6 @
7 K! L* ?" v2 _. J0 P 另外一项改进就是内置了Balun芯片。在之前的nRF51822设计中,必须加入Balun匹配电路,或者分立的或者Balun芯片,来匹配天线的50欧姆阻抗。现在nRF52832集成了这个功能,既节省了空间又节约了成本。并不适合只有Nordic一家这么干,Dialog和TI都一样,都把能够集成进来的全部弄进来。9 |* Q4 p7 P+ c: y8 k; n$ Y
4 G" D; [$ e# N, e
外部只需要一个额外的电感和一个电容,用来微调这些参数。总之,内置Balun大概能节约5-6个外部阻容器件。% X1 b8 a( V. j* w
, e9 Q( ~" p* R, R8 k: `, r
多协议支持和NFC3 r( }% Y& P8 a* W" G& @
- D, Q/ Q& p4 g3 A1 i# w
现在很多的这类芯片都能提供多协议的支持,比如BLE, ANT, Zigbee这些协议。目前在物联网领域还没有绝对的王者,因为每种无线协议都有自己的优势。现在看来实际的应用中更加趋向于不同的应用场景使用不同的技术,多协议支持就解决了这个问题。因为无线的硬件是一样的,只需要更换协议栈就行了,或者把多个协议集成进一个协议栈,对用户来说就像是同时运行这几个无线协议一样。
# [' x/ t; e) s6 d8 O8 ^) V( z0 i2 L- h0 x
nRF52832支持Bluetooth Smart (Low Energy), ANT/ANT+ and proprietary 2.4GHz多种协议,这样就可以连接 nRF51, nRF24AP and nRF24L之类的产品。不过,它不支持Zigbee or Thread ,这两个协议在长距离传输上有更大的优势。Google正在力推Thread技术,Thread也慢慢的在智能家居的应用场景下变成BLE的对手之一。不过也许Bluetooth的Mesh网络技术能够解决这个问题。
7 T h+ ?% G& W9 a) `, U' A" G8 [! u& ~* n0 l( W
Nordic同时引进了NFC技术,它支持NFC-A,也就是可以作为“标签”(Tag)来使用。配合智能手机可以用于近距离的安全连接工作,毕竟有一些应用中需要这种安全的方法,集成进来之后对整体成本和体积都有好处。不过新的Bluetooth 4.2协议中已经有了新的安全规范。4 e1 l# |% I/ a ^; b5 U* [! W6 \
9 n6 ]' a ~; \) K
nRF52832适合我们的产品吗?
' S+ r" I- S* E: ^$ R8 R
9 c$ ~. G2 x8 L7 Y3 l" B/ C 回答这个问题比较复杂,不过有以下几个关键点可供参考:
& O _" t, A4 m+ ]- H& }% I/ I& L, v5 Y5 _1 E( \" w$ f
# E: a5 K! U6 v8 f& e( T. y& M# Z
Only part with 512kB flash and 64kB RAM# |) n8 J$ V: e3 a2 W
64MHz processor with Floating point support" h2 P; ?/ Y6 m
Very low power – 5.5mA7 m- ~" I+ L; @& p
Mature stack with Central and peripheral Mode, n- d7 P0 A$ N3 O
Concurrent Multiprotocol Timeslot support4 o5 ?4 h0 d, i L
A slew of peripherals for many applications& D- |2 N6 ?( D& G6 R3 n, R/ u# U
. z. M: n% P* Y5 ?
还有其他几个事情:( q0 L) G7 H+ K- X Q9 H
2 _3 H0 C. a5 u y) K% K8 O% W
1 z: D" {# y) w8 X" m更多的Flash和RAM而价格不变; G: D; z" ^. u3 }# k8 ^) X
没有ZigBee或Thread的支持, l& g. e0 K. ~2 s r. X
开启BLE之后有些功能会受限(比如系统的实时性)
* q1 L j$ c, S+ U. ?% q$ [
, [' o& o( k( @0 A0 |- B) f Flash的容量增加会增加芯片的制造成本,不过长期看来nRF52832的价格会和现在nRF51822的价格差不多。3 ?1 y6 p; r+ w6 _, a# U" ^
nRF52832还是一颗单核的SoC,也即是说启动BLE协议栈之后,协议栈处于最高的优先级。而应用程序优先级会比协议栈低,在如电机控制这样的实时性要求很高的应用中可能会影响性能。 w8 a; G0 U4 _3 h/ l/ ]
在穿戴设备的市场中需要更强的计算能力,但是在其他应用中,比如仅仅是传感器采集和简单的处理nRF51822也是很好的选择。
) y: A6 o! j' V 总结,这是一颗非常强大的BLE SoC,同时包括了非常多的功能和比nRF521822低一半的功耗,以及Nordic多年积累的蓝牙协议栈。值得推荐! TEL18025394686/QQ2355573216 郭R9 g1 [2 i9 E% Q% Z
|
|