易百纳论坛

 找回密码
 注册
搜索
热搜: 海思 四轴 linux
查看: 2191|回复: 1

[分享] Zigbee,想说爱你不简单

[复制链接]
发表于 2013-11-22 22:18:49 | 显示全部楼层 |阅读模式
不知不觉,或者说 机缘巧合 也好,就像每天上下班挤公交,挤地铁一样,我真的就开始了zigbee的开发。
我说的是,我现在的工作是在 cc2530这款芯片上做开发,尽管还没使用到真正的zstack,真正的zigbee组网。

我不知道,你是怎么走上zigbee或者无线射频这条路。
不过,对我而言,这是一条比较曲折的路,而且中间,还有许许多多的拖延......
我不想把这个帖子,写成以前那种滥情路数的文章。

zigbee这个东东,我懒得再去复制那些又空又大多余的解释。
我只提一些我知道,并且我认为有真实意义的内容,那也是我最关心,而我也相信那会是你最想知道的:

1.zigbee是一种短距离自组网,它主要面向控制应用。因为它的网络容量不大,传输速度不高——所以,如果你老想着什么高清视频,我请你出门左拐去找wifi,实在不行也可以找蓝牙。
每一种东西都有自己的定位,过分的期待,只会让它失去自己存在的独特性。

2.关于zigbee技术的实现问题。
   这是个很要命的东西,我知道你一定在网上看到很多定义,说道,但是说到底,我们到底要如何把它变成现实存在?
   zigbee协议,尽管号称相对于蓝牙wifi是一个简单许多的协议,但这种东西的复杂程度,也绝对不是一个什么i2c之类的通信总线可以相比的。
   考虑现实中的情形。据我自己所知,目前的 zigbee实现方案无非两种:
   1.有一些无线射频芯片本身设计的符合zigbee的电气要求,并且硬件上具备了实现协议的能力;
      我相信你一定比我还清楚,目前这个主要指的是 TI 的 CC1xxx cc2xxx以及最近刚听说的 cc3xxx系列芯片。
    2.另一种是 SoC,可以理解为在 上述 的基础上,加入一个相对高性能的单片机内核。
     这个,就是我们更加熟悉的cc2530,cc2430这几个系列。
     它们的内核都是8051内核,是增强型的8051,单周期,而且加入了许多模拟的,数字的外设,甚至有传感器,几乎算得上真正意义上的SoC。
     另一款,最近才知道的,就是现在越来越无所不在的ST芯片,STM32W系列。
     但对于这个系列,我仅仅知道,它和cc2530非常类似,是一种带zigbee协议功能的SoC。

     关于这个问题,我认为我们真正要关心的只有两个问题:
     1.价格,货源。
     有一条选型原则是:尽量不要选用那种只有独家能提供的芯片。
     比方说,一个大家最熟悉的例子,ATMEL在成为8051事实上的标准以后,自己推出了完全属于自己的AVR系列十六位机。
     我个人没使用过这款机型,但是从一些方面我也能了解它是一款非常优秀的芯片,而且,ATMEL为它营造了一个相当不错的生态。
     比如现在相当火热的Arduino,又比如,有一次我在使用一个USB第三方库libusb时,我意外发现,居然有相当多的往AVR上移植这个软USB协议的资料。USB的自定义开发其实是相当复杂的。
     有许多带USB外设的单片机,实际上都是提供了一个只能针对自己硬件的协议栈来实现的。

     然而,AVR却是ATMEL一家提供的机型,结果,很不幸的是真的发生了这类让我们担忧的事情。
     具体时间我记不太清楚,大概是一年左右以前,AVR突然全线提价,这件事情对我最直接的影响是
     当时我使用的AT89S52单片机的下载器是基于 AVR mege8做的,由于AVR的全线提价,居然导致我没办法再买到这根线。

     而此后,更听说一件事,ATMEL官方决定放弃 AVR中的mega8系列,专做中高档的 mega16和mega32。
     另外,ATMEL在08年以及以后的几年里,都曾提过要出一个对AVR的增强系列,名字好像是 XMEGA之类的。
     然而,关于这款芯片,我却从来没听说过,也就是说,它可能从来没有推向过市场,或至少没被开发者广泛使用。

     我们不再轻易评论这些事情,厂商开发者各有各的难处,然而,这些事情恰恰验证了一个说法:一个只有一家提供的机型是非常危险的。
假设以后它停产了,不再升级.......你能怎么办?你不是年消费量上几十万几百万的大客户,你没有资格人家也不屑和你签订量产合约。
     你其实只是一个一年下来可能就消费个几十上百,了不起几千片的个人或者小团队。有些事,你伤不起。人贵有自知之明,不要拿自己的身家性命系在别人的产品线调整上。

     2.为了一个zigbee,你就要换一个芯片?
     zigbee被炒得很火很火,但是不管如何,在我看来,它充其量只是等同于一个无线通信外设。
     但是,cc2530这些系列,stm32w也好,似乎如果不用TI ST的这两款芯片,你就没办法获得这个功能。
     当然你还可以选择 采用CC那几个系列的无线射频芯片,配合自己的单片机来做。

     然而事实上,即便如此,面对相当复杂的zigbee协议,这是一套从硬件底层到应用层的复杂协议。
     TI是提供了好几套协议,如果你选择上述的第二条路,你就只能移植,而这,真心的不会是一件很容易的事情——不然,TI的SoC,估计只能喝西北风去了。
     所有这些,都是风险。

所以,很轻易可以得出一个结论:zigbee想说爱你不简单。

有点晚了,先写到这里,暂时也没想到什么可写了,晚安。
发表于 2013-11-23 22:49:11 | 显示全部楼层
zigbee协议学起来还是比较麻烦的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|易百纳 ( 苏ICP备14036084 )

GMT+8, 2017-10-20 18:36 , Processed in 0.081233 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表