|
本次就来深入分析下Nordic的最新蓝牙芯片nRF52832。9 {7 o0 B! _" {
目前有很多的芯片原厂发布了自己的BLE SoC芯片,其中NORDIC半导体的nRF52832是知名的nRF51822的后续作品,它将BLE SoC带到了一个新的高度。这款产品有很多让人兴奋的地方,它带来了更高的性能、更低的功耗以及更多的功能。, ]; X* K, {& F. v9 c. k, s
从nRF51822/nRF51422升级而来4 w/ U. W {! |+ B/ h" f7 d
知名的nRF51822是一颗Bluetooth Low Energy的SoC,它拥有Cortex-M0内核,运行频率为16Mhz。而nRF52832则是Cortex-M4F内核,并且拥有更大的RAM和Flash,还有更多的功能以及更好的RF性能。
& r6 z$ q, ^5 C! ?; V 下表对比了nRF52832和nRF51822还有另外一个厂家的BLE芯片:* e; s6 i- N0 Y$ \8 U( T' A9 n
3 @8 I! H" x/ T4 f4 V$ n' T0 G
下面我们来看看这些参数中有哪些亮点。( M p F- q* o2 x7 F! }; R
. I& S% R* b. K/ z" o$ @
功耗
& C# J u! O- ~4 O8 @2 p5 Z5 X
* K* v4 ^7 x' m2 | 每一代新的BLE SoC出来,必定在功耗上面做些优化,nRF52832更是在nRF51822的基础上几乎将功耗降低了一半:& I6 m# x: [, {2 l* M
& i, _ \& |' f- i" @) O; G7 V5 Q D) Q# _- X0 h! z; l
Active-mode RX:5.5 mA7 y/ e% ?2 w, N
Active-mode TX @ 0dBm: 5.5mA
5 M3 ], x" ^2 F+ c/ e) x: ` Active-mode TX @ 4dBm: 7.7mA( h' z& o, Q) G9 G9 ]( ]4 U
9 ~& D. V; v( W$ O0 } 这些功耗数据对比TI的CC26XX很有优势,即使是对比其他家的产品也是如此。( R J9 y* O$ ]% D% k
4 a3 Y6 W, ]' X7 v+ X s
真正使用时的功耗还依赖于很多其他因素,比如运行的频率或者BLE的参数(连接或者广播的间隔)
6 r( f6 s' @" H, j+ O |. @0 n9 D0 b) W9 Q# h- i: k( w- q
Cortex-M4F 内核
- R( r4 L5 U6 P' C, J8 l% O
& Z: _5 n- D5 h; e 新一代的nRF52832加入了很多新的功能。比如Cortex-M4F的内核,它能够更强大的运算能力以及浮点运算的技术。现在很多的穿戴设备或者工业化设备需要内置非常复杂的算法,所以需要MCU有更快的运行速度。这颗Cortex-M4F的内核运行期64Mhz,比其他厂家的芯片提高了很多。4 W8 r' n6 x1 \; f$ ~& l
" ]/ r% R9 l( g/ \0 Y) R: V
这颗SoC有512KB的Flash和64KB的RAM,这也超出其他厂家的芯片一大截。Nordic称将会有400KB的Flash可以用于应用程序。如果你曾经开发过BLE的产品就会知道,BLE的协议栈至少要占80KB以上的Flash。如果像大多数的BLE SoC那样只提供128KB的Flash的话,应用程序只有大概40KB的空间,不过对于一般的传感器采集的任务来说是差不多的。之前的nRF51822最高提供256KB的Flash,这在当时也是比较少见的,我们很高兴看到Nordic再次提升了Flash的空间。
A% x! O8 Z7 f
6 q8 k3 S& L5 F6 J 额外的Flash和RAM空间也意味着nRF52832可以支持多协议,并且在运行时自动切换。现在有很多产品已经支持了多协议这个特性(见上篇文章),看来这似乎会变成业界标准,因为目前并不是只有BLE一个无线协议。4 Y" e& ]5 v. r; o$ G! q: Y$ h
: ]6 X' y' F5 V8 Z" Q1 N
BLE协议栈
5 p: g2 u% K# K6 q6 K: P2 ]
& m( F, i- ~4 V( Y$ ~ Nordic将Cortex-M0内核升级到Cortex-M4F内核,可以保证BLE协议栈无需更改。这就意味着开发者可以使用一个更加稳定的协议栈,并且直接运行之前的几十种例程。
. O( ?, |2 _* s, j6 z: L# C( j
, {( Z7 A- l k/ D& O: v8 n Nordic目前没有提到关于Bluetooth 4.2方面的事情,不过可以肯定是,既然新的硬件已经出来了,通过升级软件来做到更多的事情是肯定的。Bluetooth 4.2(见下一篇文章)提供了更快的传输速度、更高的安全性以及更低的功耗。
4 ]. R6 Y( B' G9 p1 e f+ ]' h# T% g' `& O, F5 ~
RF效率
! L4 I1 j0 I6 i2 Z, {) ]$ b% z. ~
* L8 x! Z* }; X0 r j( f: m. z9 H 我们必须谈一下RF的部分,毕竟所有的数据都是要通过这里的。7 p1 l8 ]8 L) ^- f, t" _
* D3 y( i! H" J. i2 w 新的nRF52832提供了-96dBm的灵敏度,这个数据非常接近于TI的-97dBm,更高的灵敏度意味着更远的传输距离。) Z+ a2 w5 F& N4 y. N
+ P1 t. W- N$ k; W/ i" W2 D 另外一项改进就是内置了Balun芯片。在之前的nRF51822设计中,必须加入Balun匹配电路,或者分立的或者Balun芯片,来匹配天线的50欧姆阻抗。现在nRF52832集成了这个功能,既节省了空间又节约了成本。并不适合只有Nordic一家这么干,Dialog和TI都一样,都把能够集成进来的全部弄进来。, L k7 f& y+ D) w8 f% W. J
" \9 c* ~, _" X5 ?: o: V: ^7 ~ 外部只需要一个额外的电感和一个电容,用来微调这些参数。总之,内置Balun大概能节约5-6个外部阻容器件。) D8 A8 y5 k6 n/ w, ^6 Q
' w) X* J5 U1 D" _. o2 J 多协议支持和NFC
' g& t Q/ Q9 Y; ]8 ~7 q4 J$ Q/ s Y- |! I& B6 w6 u: k- H
现在很多的这类芯片都能提供多协议的支持,比如BLE, ANT, Zigbee这些协议。目前在物联网领域还没有绝对的王者,因为每种无线协议都有自己的优势。现在看来实际的应用中更加趋向于不同的应用场景使用不同的技术,多协议支持就解决了这个问题。因为无线的硬件是一样的,只需要更换协议栈就行了,或者把多个协议集成进一个协议栈,对用户来说就像是同时运行这几个无线协议一样。
. k3 n/ v) P( b0 Y; c0 c1 p+ }/ F f( m
nRF52832支持Bluetooth Smart (Low Energy), ANT/ANT+ and proprietary 2.4GHz多种协议,这样就可以连接 nRF51, nRF24AP and nRF24L之类的产品。不过,它不支持Zigbee or Thread ,这两个协议在长距离传输上有更大的优势。Google正在力推Thread技术,Thread也慢慢的在智能家居的应用场景下变成BLE的对手之一。不过也许Bluetooth的Mesh网络技术能够解决这个问题。
) L' X {/ A5 b0 l
* B# h) x/ X! C7 {* x$ b Nordic同时引进了NFC技术,它支持NFC-A,也就是可以作为“标签”(Tag)来使用。配合智能手机可以用于近距离的安全连接工作,毕竟有一些应用中需要这种安全的方法,集成进来之后对整体成本和体积都有好处。不过新的Bluetooth 4.2协议中已经有了新的安全规范。5 g V. b4 j6 p6 N$ g1 Q" _
9 z( B' C( L3 {# |% t9 \ nRF52832适合我们的产品吗?
1 a# i: ?& {( b& Y2 |- b0 K& l3 e
( w8 k- N0 @$ b3 {9 c 回答这个问题比较复杂,不过有以下几个关键点可供参考:1 L& F! e" F2 X
* f, B$ D: @8 e. V8 x, Y: }# f+ i3 I: L, ]
Only part with 512kB flash and 64kB RAM, E; t; G/ R2 R1 R; N9 y. ~: Q$ ?
64MHz processor with Floating point support
* ^, a- R* y4 WVery low power – 5.5mA9 s" ~! U5 P3 i
Mature stack with Central and peripheral Mode J# L4 t, ?( |( a* l
Concurrent Multiprotocol Timeslot support
( w/ a, V% s- N6 M% |2 RA slew of peripherals for many applications' P% P Y+ z, [5 [; S. n0 j
/ l! |, Q- W/ m b3 z E: t
还有其他几个事情:
5 z, O8 p; A5 D* f/ o& E
. M4 Y6 }( [" @. _( c1 ~9 Z: f
. E( s4 Q6 S0 P4 b- D更多的Flash和RAM而价格不变
5 O( p; u7 E9 d) P! C没有ZigBee或Thread的支持* E7 r. O: |: y6 |7 @2 f; J h3 \
开启BLE之后有些功能会受限(比如系统的实时性)
8 U9 w5 |1 {& @ _ ]4 z, r1 R: l6 }( d5 b5 o: t& m0 N1 ~, {- B
Flash的容量增加会增加芯片的制造成本,不过长期看来nRF52832的价格会和现在nRF51822的价格差不多。
; t$ M. z3 G, Z' V+ o# z2 Z nRF52832还是一颗单核的SoC,也即是说启动BLE协议栈之后,协议栈处于最高的优先级。而应用程序优先级会比协议栈低,在如电机控制这样的实时性要求很高的应用中可能会影响性能。% F6 @* [+ ^ q1 a+ o
在穿戴设备的市场中需要更强的计算能力,但是在其他应用中,比如仅仅是传感器采集和简单的处理nRF51822也是很好的选择。
- n. u k K" J- i2 f5 Z 总结,这是一颗非常强大的BLE SoC,同时包括了非常多的功能和比nRF521822低一半的功耗,以及Nordic多年积累的蓝牙协议栈。值得推荐! TEL18025394686/QQ2355573216 郭R$ c* h8 J& _" `: P' q3 f9 j
|
|