Zigbee之旅(一):开天辟地(转)
一、前言
首先自我介绍一下~我是来自湖北某高校的一名大三学生。因专业及个人爱好,最近对Zigbee比较感兴趣。于是我和几个班里的同学商量了下,凑了些钱购置了一套基于CC2430芯片的Zigbee开发板,打算抽时间摸索一下。于是我想到在博客园发表相关博文,介绍我们自学Zigbee的点滴历程。
本系列博文适合对C-51系列单片机有一定的理论或实践经验,并对Zigbee技术感兴趣的朋友。博文的部分内容取材于互联网以及开发板附带的学习资料,其余内容均属原创,欢迎各位朋友转载,转载的同时也请注明作者及出处,谢谢!
二、Zigbee简介
物联网→传感器→无线传感器网络→Zigbee
可能大多数人都是第一次见到Zigbee这个词,但如果提到物联网这三个字,我想比较关心最新技术趋势的朋友应该都耳熟能详。物联网的百度百科定义为:
通过射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把任何物体与互联网相连接,进行信息交换和通信,以实现对物体的智能化识别、定位、跟踪、监控和管理的一种网络。(详见百度百科)
物联网中很重要的一部分就是传感器,其负责收集来自真实物理世界的信息。而无线传感器网络(Wireless Sensor Nnetwork,WSN),则是当前在国际上备受关注的前沿热点研究领域。它综合了传感器、嵌入式计算、现代网络及无线通信和分布式信息处理等技术,能够通过各类集成化的微型传感器协同完成对各种环境或监测对象的信息的实时监测、感知和采集,这些信息通过无线方式被传送,并以自组多跳的网络方式传送到用户终端,从而实现物理世界、计算机世界以及人类社会这三元世界的连通。
提到WSN,就不能不提Zigbee。
Zigbee是IEEE 802.15.4协议的代名词,是一种短距离、低功耗的无线通信技术。这一名称来源于蜜蜂的八字舞,因为蜜蜂(bee)是靠飞翔和“嗡嗡”(zig)地抖动翅膀的“舞蹈”来与同伴传递花粉所在方位信息。Zigbee的特点是近距离、低复杂度、自组织、低功耗、低数据速率、低成本,所以特别适合用来组建无线传感器网络。
Zigbee的应用领域包括:
家庭和楼宇网络:空调系统的温度控制、照明的自动控制、窗帘的自动控制、煤气计量控制、家用电器的远程控制等;
工业控制:各种监控器、传感器的自动化控制
商业:智慧型标签等
农业控制:收集各种土壤信息和气候信息
医疗:老人与行动不便者的紧急呼叫器和医疗传感器等
Zigbee的极其广阔的应用领域和巨大的发展前景,正是我们选择它作为学习对象的重要原因,我们也希望有更多志同道合的朋友能够加入Zigbee的队伍。
三、Zigbee开发板的购置
我们班同学五个人,一起凑了500来块,在淘宝网上的 Enjoy MCU电子开发工作室 购买了基于CC2430芯片的 ZigBee 开发套件(2模块+2彩色显示屏+1仿真器)。不错的客户评价、精美的产品外观、比较全面的学习资料,让我们最终选择这一款Zigbee产品。
四、开发环境配置
(1)破解 IAR (仅用于学习和测试,不得用于商业用途)
我们一般选择 IAR Embedded Workbench for MCS-51 7.51A 作为 Zigbee开发的IDE,下面简单提一下其破解过程:
首先下载 IAR软件包与序列号生成器,然后启动IAR的安装:
一路Next,直到下一画面出现:
此时,以管理员身份打开破解程序:
Product类型:Embedded Workbench For MCS-51 v7.50A ,点击“Get ID”即可获取安装序列号和许可证。
将 License number 复制到IAR安装界面的 "License#" 输入框中,点击Next,然后将 License Key 复制到IAR安装界面的 "License Key" 输入框中:
然后一路按提示操作,和谐版IAR开发软件就安装完毕了~
(2)Zigbee调试器驱动安装
首先下载 SmartRF驱动 并解压到某一文件夹内,然后按 Zigbee开发板 → 调试器 → PC的USB接口 的顺序连接设备,打开计算机的设备管理器,会发现存在“无法识别的USB设备”,右键,点击“更新驱动程序软件”,选择“浏览计算机以查找驱动程序软件”,然后选择下载的驱动的文件夹路径,点击“下一步”,就可以成功安装驱动。
五、Zigbee学习路线
接下来说说Zigbee的学习方法,因为本人在这方面也属于菜鸟级别,仅在大三上有过一些51单片机的科班学习经验。在此我参照一下《Zigbee技术实践教程》的目录,给自己定下了Zigbee的学习路线:
(1)准备篇:
通过一系列小实验,熟悉CC2430芯片中的重要的硬件模块,包括外部中断、定时器、AD、串口通讯、DMA、射频通信等。
(2)基础篇:
深入了解TI Z-Stack协议,并能动手建立简单的Zigbee无线传感器网络。
(3)提高篇:
以某个具体的项目为中心,掌握开发实际Zigbee项目的技能。
六、结语
OK,第一篇就到此为止~我们对Zigbee、开发板设备、以及基本的开发环境的搭建作了简要的介绍。接下来,我们以一个非常简单的小实验,来说明如何运用IAR来开发基于CC2430芯片的应用程序。