无线自组网实训报告_第1页
无线自组网实训报告_第2页
无线自组网实训报告_第3页
无线自组网实训报告_第4页
无线自组网实训报告_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、南京工业职业技术学院项目技术报告曲以丄書飲栄圾船#豌Nanjing Institute Of Industry Technology无线节点自组网开发与设计综合实训姓名:陈荣荣、王娜学号:1204333127、 1204333142班级:物联1211指导教师:戴娟、何志勇课程名称:无线节点自组网开发与设计综合实训提交日期:2014年6月20日概 要本实训通过无线节点组网系统的完整的设计,使学生理解并 掌握zigbee2007协议内涵,能利用该协议完成组网、跳频、跳网 编程,进一步将已学过的相关内容课程和在课程中初步掌握的单 项、单元(技能)能力有机的融合在一起,培养学生完成一个实 际无线节点网

2、络系统从设计开发到功能调试完整的综合职业能 力。在此过程中充分发挥学生的主动性、创造性,经进一步培养 他们在整个工作过程中的团队协作能力和敬业爱岗意识。-2 -南京工业职业技术学院项目技术报告概要.、八、-刖言第一章 ZigBee 的简介第二章无线传感器网络技术第三章自组网及协议栈各层功能第四章 CC2530常用的控制寄存器第五章 ZigBee 节点自动跳频、跳网问题第六章自组网典型应用结论致谢-3 -南京工业职业技术学院项目技术报告通过5个星期的实训,我对无线网络技术有了更深层次的了 解,对ZigBee的组网也有了进一步的认识,与此同时通过该次实 训还培养了我理论联系实际的能力,提高了我分析

3、问题和解决问 题的能力,增强了独立工作的能力。培养了我与其他同学的团队 合作、共同探讨、共同前进的精神。1. 了解了无线网络技术。2. 熟悉了 ZigBee的基本知识以及ZigBee的协议各层功能。3. 知道了一些基础实验的实现方法。4. 熟悉对组网典型应用的编程和相关的设置。能够正确使用物联网测试仪进行数据的空中抓包并进行数 据的分析。-4 -南京工业职业技术学院项目技术报告第一章ZigBee的简介随着国内经济的高速发展,城市的规模在不断扩大,尤其是 各种交通工具的增长更迅速,从而使城市交通需求与供给的矛盾 日益突出,而单靠扩大道路交通基础设施来缓解矛盾的做法已难 以为继。在这种情况下,智能

4、公交系统 (AdvancedPublicTransportationSystems ,APTS)也就应运而生,并 且成为国内研究的热点。在智能公交系统所涉及的各种技术中, 无线通信技术尤为引人注目。而 ZigBee作为一种新兴的短距离、 低速率的无线通信技术,更是得到了越来越广泛的关注和应用。 市场上也出现了大量与ZigBee相关的各种产品,根据中国物联网 校企联盟的统计分析表明:zigbee虽然广受推崇,但是在数据中, 推出zigbee相关产品的中小型企业在 2012年的发展并不可观。Zigbee是基于IEEE802.15.4标准的低功耗局域网协议。 根据 这个协议规定的技术是一种短距离、低

5、功耗的无线通信技术。这 一名称 来源于蜜蜂的八字舞,由于 蜜蜂(bee)是靠飞翔和“嗡 嗡”(zig)地抖动翅膀的“舞蹈”来与同伴传递花粉所在方位信息, 也就是说蜜蜂依靠这样的方式构成了群体中的通信网络。其特点 是近距离、低复杂度、自组织、低功耗、低数据速率、低成本。 主要适合用于自动控制和远程控制领域,可以嵌入各种设备。简 而言之,ZigBee就是一种便宜的,低功耗的近距离无线组网通讯 技术。第二章无线传感器网络技术无线传感器网络是大量的静止或移动的传感器以自组织和多跳的 方式构成的无线网络,其目的是协作地感知、采集、处理和传输 网络覆盖地理区域内感知对象的监测信息,并报告给用户。它的英文是

6、 Wireless Sensor Network, 简称 WSN 大量的传感器节 点将探测数据,通过汇聚节点经其它网络发送给了用户。在这个定义中,传感器网络实现了数据采集、处理和传输的三种功 能,而这正对应着现代信息技术的三大基础技术,即传感器技术、 计算机技术和通信技术。典型的无线传感器网络一般包括三个节 点:传感器节点(Sensor node)、汇聚节点(Sink node )和任务 管理节点。-6 -南京工业职业技术学院项目技术报告第三章 自组网及协议栈各层功能自组网自组网是一种移动通信和计算机网络相结合的网络,网络的信息交换采用计算机网络中的分组交换机制,用户终端是可以移动的便携式终端

7、,自组网中每个用户终端都兼有路由器和主机两种功能。作为主机,终端需要运行各种面向用户的应用程序,如编辑器、浏览器等;作为路由器,终端需要运行相应的路由协议,根据路由策略和路由表完成数据分组的转发和路由维 护工作,故要求节点实现合适的路由协议。自组网路由协议的目标是快速、 准确和高效,要求在尽可能短的时间内查找到准确可用的路由信息,并能适应网络拓扑的快速变化,同时减小引入的额外时延和维护路由的控制信息, 降低路由协议的开销,以满足移动终端计算能力、储存空间以及电源等方面的限制。目前自组网路由协议的设计主要有三种思路:1)修改现有的常规路由协议,使其能够适应自组网的需要,女口 DSDV(Desti

8、nationSequeneedDistanee Vector)协议就是通过修改常见的RIP协议得来;2)采用按需发现的路由原则,不通过周期性广播路由信息来维持路由表,仅当需要建立路由时才发出请求以建立路由,从而有效地减少对网络资源的消耗,典型的有动态源路由(DSR)、AODV(Ad-hoc On-demand Distanee Vector)等;3)基于服务质量(QoS)的路由,节点根据收集到的网络资源情况(而不是通常的跳数)选择一条最有可能满足用户QoS要求的路由,如LS-QoS(Link State-QoS)协议。表驱动的路由协议适合于常规有线网络,但对无线自组网来说,由于 网络自身存在的

9、诸多限制,周期性广播控制信息分组会大量消耗网络带宽, 维护路由表会大量消耗移动终端的资源,拓扑结构的快速变化会使很多路由信息很快变得过时,造成资源的浪费。即使将表驱动协议针对无线自组网进 行改动,仍然在很大程度上存在这个问题。相比之下,按需路由协议更能适应自组网拓扑结构快速变化的特点。目前流行的几种典型按需路由协议中,DSR使用了源路由的机制,要求在每一个数据包头部包含完整的路径信息,大大增加了路由协议的开销,且断链发生需要重建路由时,需要将断链信息发回源节点,由源节点重新发起路由发现过程,带来了很大的延迟。AODV协议使用逐跳转发机制解决了这个问题,但它需要使用周期性的 Hello信息来维持

10、节点之间的连接状态, 增加了开销,而且在发生断链时,则采用和DSR同样的方式进行重建路由。 TORA协议除了自身的开销大外,还需要特殊硬件提供支持,如GPS设备提供全网节点的时间同步功能,并需要数据和控制两个独立的无线信道,其应用局限较大。自组网的原型是美国早在 1968年建立的ALOHA网络和之后于1973提 出的PR(Packet Radio)网络。ALOHA网络需要固定的基站,网络中的每一个节点都必须和其它所有节点直接连接才能互相通信,是一种单跳网络。直到PR网络,才出现了真正意义上的多跳网络,网络中的各个节点不需要直接连接,而是能够通过中继的方式,在两个距离很远而无法直接通信的节点之间

11、传送信息。PR网络被广泛应用于军事领域。IEEE在开发802.11标准时,提出将PR网络改名为Ad Hoc网络,也即今天我们常说的移动自组织 网络。移动自组织网络能够利用移动终端的路由转发功能,在无基础设施的 情况下进行通信,从而弥补了无网络通信基础设施可使用的缺陷。自组网技术为计算机支持的协同工作系统提供了一种解决途径,主要特点有:(1) 网络拓扑结构动态变化在移动自组织网络中,由于用户终端的随机移动、节点的随时开机和 关机、无线发信装置发送功率的变化、无线信道间的相互干扰以及地形等综 合因素的影响,移动终端间通过无线信道形成的网络拓扑结构随时可能发生 变化,而且变化的方式和速度都是不可预测

12、的。(2) 自组织无中心网络移动自组织网络没有严格的控制中心,所有节点的地位是平等的,是 一种对等式网络。节点能够随时加入和离开网络,任何节点的故障都不会影 响整个网络的运行,具有很强的抗毁性。(3) 多跳网络由于移动终端的发射功率和覆盖范围有限,当终端要与覆盖范围之外 的终端进行通信时,需要利用中间节点进行转发。值得注意的是,与一般网络中的多跳不同,无线自组网中的多跳路由是由普通节点共同协作完成的,而不是由专门的路由设备完成的。(4)无线传输带宽有限无线信道本身的物理特性决定了移动自组织网络的带宽比有线信道要低很多,而竞争共享无线信道产生的碰撞、信号衰减、噪音干扰及信道干扰等因素使得移动终端

13、的实际带宽远远小于理论值。(5)移动终端的局限性自组织网络中的移动终端(如笔记本电脑、手机等)具有灵巧、轻便、移 动性好等优点,但同时其电源有限、内存小、CPU性能低等限制,使得我们在开发应用程序时,需要考虑这些因素。组网zigbee协议栈-层的解说ZigBee协议栈由一组子层构成,每层为其上层提供一组特定的服务:一个 数据实体提供数据传输服务;一个管理实体提供全部其他服务。每个服务实体通过一个服务接入点(SAP)为其上层提供服务接口,并且每个SAP提供了一系列的基本服务指令来完成相应的功能。ZigBee设备在工作时,各种不同的任务在不同的层次上执行,通过层 的服务,完成所要执行的任务。每层的

14、服务主要完成 2种功能:一种功能是 根据他的下层服务要求,为上层提供相应的服务;另一种功能是根据上层的 服务要求,对他的下层提供相应的服务。各层服务通过服务原语来实现。ZigBee协议栈的体系结构包 括ZigBee应用层,ZigBee网络层, IEEE802.15.4 MAC 层和IEEE802.15.4 PHY层。它虽然是基于标准的 7层开 放式系统互联(OSI)模型,但仅对那些设计 ZigBee层予以定义。IEEE802.15.4 2003标准定义了最下面的两层: 物理层(PHY)和介质接入控制子层(MAC)。 ZigBee联盟提供了网络层和应用层(APL。框架的设计。其中应用层的框架包括

15、了应用支持子层(APS), ZigBee设备对象(ZDO。和由制造商制定 的应用对象。-10 -南京工业职业技术学院项目技术报告软件协议栈采用了 Z-Stack,是TI提供的符合ZigBee规范(由ZigBee 联盟制定)的免费协议栈,完全可以运行在GAINST CC2430节点上,利用Z-Stack,用户能够简单快速的开发出适合自己的ZigBee应用。App :应用层目录,这是用户创建各种不同工程的区域,在这个目录中 包含了应用层的内容和这个项目的主要内容,在协议中一般是以操作系统的任务实现的。HAL :硬件层目录,包含有与硬件相关的配置和驱动及操作函数。MAC : MAC层目录,包含了 M

16、AC层的参数配置文件及其MAC的LIB库的函数接口文件。MT :实现通过串口可控制各层,并与各层进行直接交互NWK :网络层目录,包含网络层配置参数文件网络层库的函数接口文 件及APS层库的函数接口。OSAL :协议栈的操作系统。Profile : AF ( Application framework 应用框架)层 目录,包含 AF(Application framework 应用框架)层处理函数文件。应用框架层是应用程 序和APS层的无线数据接口。他包含了一个应用程序进行无线传输(通过 APS和NWK )时所使用的函数。该层也是输入数据复用的终端(the endpointmultiplexe

17、r for incoming data messages )。(这里写的很罗嗦, 而且我也确实还 有些不清楚,我的理解就是AF层是个专门用来处理数据的输入输出的,每个任务要想发送数据需要通过调用AF层的发送函数来实现,而设备收到的数据也是通过AF层被各个任务读取,这一层里也规定了无线传输的各种数 据格式和描述符,也就是结构体)Security :安全层目录,包含安全层处理函数,比如加密函数等Services:地址处理函数目录,包括地址模式的定义及地址处理函数。 Tools:工程配置目录,包括空间划分及Z-Stack相关配置信息。文件夹中包含文件:f8w2430.xcl存储器配置,用于程序烧录f

18、8wC on fig.cfg通用的编译选项文件,例如指定在设备启动时要用到的频道和 PANId值。f8wCoord.cfg协调者设备的编译选项F 8wE ndev.cfg终端节点的编译选项8wRouter.cfg路由节点的编译选项ZDO : ZDO 目录ZMac: MAC层目录,包括 MAC层参数配置及 MAC层LIB库函数回 调处理函数。ZMain :主函数目录,包括入口函数及硬件配置文件。Output:输出文件目录,由IAR IDE自动生成。第四章CC2530常用的控制寄存器POSEL(P1SEL相同):各个I/O 口的功能选择,0为普通I/O功 能,1为外设功能D7D6D5D4D3D2D

19、1P0 7功能P0 6功能P0 5功能P0 4功能P0 3功能P0 2功能P0_1 功P2SEL ( DO到D2位)端口 2功能选择和端口 1外设优先级控 制什么是外设优先级:当PERCF分配两个外设到相同的引脚时,需 要设置这两个外设的优先级,确定哪一个外设先被响应D7D6D5D4D3D2D1D0未 用0:USART)优先1: USART 优先0:USART1优先 1:定 时器3 优先0:定时器1 优先1:定时器4优先0:USART0优先 1:定 时器1优先P2_4 功能选 择P2_3功能选 择P2_0功能选 择PERCFG设置部分外设的I/O位置,0为默认I位置1,1为默认位 置2D7D6

20、D5D4D3D2D1D0未 用定时器1定时器3定时器未用未用USART1USARTCPODIR( P1DIR相同):设置各个I/O的方向,0为输入,1为输出D7D6D5D4D3D2D1D0P0 7方P0 6方P0 5方P0 4方P0 3方P0 2方P0 1方P0 0方向向向向向向向向P2DIR : D0D4设置 P2_0至U P2_4 的方向D7、D6位作为端口 0外设优先级的控制D7D6D5D4D3D2D1D07、/未使P2_4 方P2 3方P2 2方P2_1 方P2 0方XX用向向向向向D7D6意义00第1优先级:USART 0 第2优先级:USART 1 第3优先级:定时器101第1优先

21、级:USART 1 第2优先级:USART 0 第3优先级:定时器110第1优先级:定时器1通道0-1 第2优先级:USART 1 第3优先级:USART 0 第4优先级:定时器1通道2 - 311第1优先级:定时器1通道2-3第2优先级:USART 0第3优先级:USART 1第4优先级:定时器1通道0 - 1P0INP(P1INP意义相似):设置各个I/O 口的输入模式,0为上拉/下拉,1为三态模式D7D6D5D4D3D2D1D0P0_7 模式P0_6 模式P0_5 模式P0_4 模式P0_3 模式P0_2 模式P0_1 模式模Q式需要注意的是:P1INP中,只有D7D2分别设置对应I/O

22、 口的输入 模式。D1DC两位无作用。P2INP: D0D4控制P2_0P2_4的输入模式,0为上拉/下拉,1 为三态;D5D7设置对P0 P1和P2的上拉或下拉的选择。0为 上拉,1为下拉;D7D6D5D4D3D2D1D0端口 2端口 1端口 0P2_4 模P2_3 模P2_2 模P2_1 模P2_0 模选择选择选择式式式式式POIFG (P1IFG相同):终端状态标志寄存器,当输入端口有中断 请求时,相应的标志位将置1。D7D6D5D4D3D2D1D0P0 7P0 6 :P0 5P0 4 :P0 3P0 2f P0 1 P0 0P0IEN(P1IEN相同):各个控制口的中断使能,0为中断禁

23、止,1为 中断使能。D7D6D5D4D3D2D1匚D0 丁P0 7P0 6P0 5P0 4P0 3P0 2P0 1P0 0 P2IFG: D0D4为P2_0P2_4的中断标志位D5为USD D中断状态标志,当D+线有一个中断请求未决时 设置该标志,用于检测 USE挂起状态下的USB恢复事件。当USB 控制器没有挂起时不设置该标志。D7D6D5D4D3D2D1D0 1未用未用USB D+P2 4P2 3P2 2P2 11 P2 0 1P2IEN: D0D4控制9 P2_0P2_4的中断使能D5控制USB D+勺中断使能D7D6D5D4D3D2D1D0未用未用USB D+P2 4P2 3P2 2P

24、2 1P2 0PICTL: D0D3设置各个端口的中断触发方式,0为上升沿触发,1 为下降沿触发。D7控制I/O引脚在输出模式下的驱动能力。选择输出 驱动能力增强来补偿引脚DVD啲低I/O电压,确保在较 低的电压下的驱动能力和较高电压下相同。0为最小驱动能力增强。1为最大驱动能力增强。D7D6D5D4D3D2D1D0I/O驱动能力未用未用未用P2 0P2 4LP1 4P1 7卩1 0P1 3P0 0P0 7IENO:中断使能0,0为中断禁止,1为中断使能D7D6D5D4D3D2D1D0总中断EA未 用睡眠定 时器中 断AES加密/解密中断USART1 RX中断USART0 RX中断<AD

25、C中断RF TX/RFFIFO中断IEN1:中断使能1,0为中断禁止,1为中断使能D7D6D5D4D3D2D1D0未用未用端口 0定时器4定时器3定时器2定时器1DMA专输IEN2:中断使能2,0为中断禁止,1为中断使能D7D6D5D4D3D2D1do q未用未用看门狗定时 器端口 1USART1 TXUSART0 TX端口 2RF 一般中 断T1CTL定时器1的控制,D1D0控制运行模式,D3D2设置分频划 分值7D6ID5D4D3D2D1D0未 用未 用未 用未 用00:不分频01: 8 分 频10: 32 分频11: 128分频00:暂停运行01:自由运行,反复从0x0000到Oxfff

26、f 计 数10:模计数,从0x000到T1CCC反复计数11:正计数/倒计数,从0x0000到T1CC0反 复计数并且从T1CC0倒计数到0x0000T1STAT定时器1的状态寄存器,D4D0为通道4通道0的中断标 志,D5为溢出标志位,当计数到最终技术值是自动置1。D7D6D5D4D3D2D1D0未 用未 用溢出中 断通道4中 断通道3中 断通道2中 断通道1中 断通道0中 断T1CCTL0T1CCTL4定时器1通道0通道4的工作方式设置。D1D0 为捕捉模式选择:00为不捕捉,01为上升沿捕获,10为下降沿捕 获,11为上升或下降沿都捕获。D2位为捕获或比较的选择,0为捕获模式,1为比较模

27、式。D5D4D 为比较模式的选择:000为发生比较式输出端置1,001为发生比较 时输出端清0,010为比较时输出翻转,其他模式较少使用。LD7D6D5D4D3D2D1D0未用未用比较模式捕获/比较捕捉模式IRCON中断标志4, ; 0为无中断请求。1为有中断请求。D7D6D5D4D3D2D1D0睡眠定时 器必须为0端口 0定时器4定时器3定时器2定时器1DMA 成T3CTL/T4CTL定时器3或定时器4的方式控制寄存器。D7D6D5 设置分频:000为无分频、001为2分频、010为4分频、011为8 分频、100为16分频、101为32分频、110为64分频,111为128 分频。D4为启

28、动位,启动时1,停止工作为0。D3位为中断使能 位,0为禁止,1为使能,默认为1; D2为复位,置1时定时器复 位。D1D0为计数器模式选择:该位与 T1CTL的D1D0位意义相同。D7D6D5D4D3D2D1D0分频启动定时器溢出中断清除计数器计数模式T3CCTL0/T3CCTL1/T4CCTL0/T4CCTL定时器 3 或定时器 4 的通道0和通道1的方式控制,D6为该通道的中断使能位,0为禁止,1为使能,默认为1; D5D0与 T1CCTL0相同D7D6D5D4D3D1D0未用中断使能比较模式捕获/比较捕捉模式TIMIF :定时器1的溢出中断屏蔽与定时器 3、4的中断标志。D6 为定时器

29、1的溢出中断屏蔽,0为屏蔽,1为使能,默认为1.D5D0 为定时器3和4中各个通道的中断标志。D7D6D5D4D3D2D1D0未 用T1溢出中 断使能T4通道1 中断标志T4通道0 中断标志T4溢出标 志中断标志T3通 道1T3通 道0T3溢出中 断标志CLKCONCM时钟频率控制寄存器D7D6D5D3D2D032KHZ时间振荡器选择系统时钟选择定时器输出标记系统主时钟选择D7位为32KHZ时间振荡器选择,0为32KRC震荡,1为32K晶振。 默认为1。D6位为系统时钟选择。0为32M晶振,1为16MRC震荡。当D7位 为0时D6必须为1。D5D3为定时器输出标记。000为32MHZ001为1

30、6MH,10为8MHZ 011 为 4MHZ 100 为 2MHZ 101 为 1MHZ 110 为 500KHZ 111 为 250KHZ默认为001。需要注意的是:当D6为1时,定时器频率 最高可采用频率为16MHZD2D0系统主时钟选择:000为32MHZ001为16MHZ010为8MHZ 011 为 4MHZ 100 为 2MHZ 101 为 1MHZ 110 为 500KHZ 111 为250KHZ当D6为1时,系统主时钟最高可采用频率为 16MHZCLKCONSTA寸间频率状态寄存器。D7 - D6D5D3D2D0当前32KHZ时间振荡 器当前系统时 钟当前定时器输出标当前系统主时

31、 钟D7位为当前32KHZ寸间振荡器频率。0为32KRC震荡,1为32K晶 振。D6位为当前系统时钟选择。0为32M晶振,1为16M RC震荡。D5D3为当前定时器输出标记。000为32MHZ 001为16MHZ 010 为 8MHZ 011 为 4MHZ 100 为 2MHZ 101 为 1MHZ 110 为 500KHZ 111 为 250KHZD2D0为当前系统主时钟。000为32MHZ001为16MHZ010为8MHZ 011 为 4MHZ 100 为 2MHZ 101 为 1MHZ 110 为 500KHZ 111 为 250KHZU0CSR USART控制与状态;D7D6D5D4D

32、3D2D1D0模式接收器SPI主/从帧错误奇偶错误接受传送收发主动选择使能模式状态状态状态状态状态D7为工作模式选择,0为SPI模式,1为USART模式D6为UART接收器使能,0为禁用接收器,1为接收器使能D5为SPI主/从模式选择,0为SPI主模式,1为SPI从模式。D4为帧错误检测状态,0为无错误,1为出现出错。D3为奇偶错误检测,0为无错误出现,1为出现奇偶校验错误。D2为字节接收状态,0为没有收到字节,1为准备好接收字节。D1为字节传送状态,0为字节没有被传送,1为写到数据缓冲区的 字节已经被发送。D0为USAR接收 /传送主动状态,0为USAR空闲,1为USART亡 碌。U0GCR

33、 USART0S用控制寄存器;D7D6D5D4D0SPI时钟极性SPI时钟相位传送位顺序波特率指数值D7为SPI时钟极性:0为负时钟极性,1为正时钟极性;D6为SPI时钟相位:D5为传送为顺序:0为最低有效位先传送,1为最高有效位先传送。D4D0为波特率设置:波特率指数值小数部分2400659480075996008591440082161920095928800921638400105957600102167680011591152001121623040012216U0BAUD波特率控制小数部分。(取值参考上表)-19 -南京工业职业技术学院项目技术报告第五章ZigBee节点自动跳频、跳网

34、问题Zigbee在网络通信中通常使用一个固定的频率(信道CHANNEL ,即信号加载的频段),从868MHz到2.4GHz。自动跳频的原因是,Zigbee受到其 他2.4G信号(蓝牙、WIFI等)的干扰,会自动选择另外一个干扰少的信道 来使用。自动跳频实现的原理为,在Zigbee建网过程开始,网络层将请求介质访问控制层(MAC层)对规定的信道或由物理层默认的有效信道进行能量 检测扫描,检测可能的干扰。网络层管理实体对能量扫描的结果以递增的方 式排序,丢弃那些能量值异常的信道,由网络层管理实体执行一次扫描,结合检查PANID描述符,对剩下的信道选择一个合适的建立网络。自动跳频实现的方法: 对于协

35、调器,CHANNEL设置一个缺省的,指定 设备(协调器、路由器和终端)的 CHANNEL值在flash保存,每次单片机 启动,直接从flash中读取,而不是从配置文件中获取缺省值,当硬件测得 信号能量异常时,即频道被占有后会信道号自动加一,跳频到其他频道。CC253X典型设置RF频率编程方法:#defi ne MIN_CHANNEL11 / 2405 MHz#defi ne MAX_CHANNEL26 / 2480 MHz#defi ne CHANNEL_SPACING5 / MHzFREQCTRL = (MIN_CHANNEL + (cha nnel - MIN_CHANNEL) * CHA

36、NNEL_SPACING);特殊功能寄存器FREQCTRL是CC253X射频单片机自带的(地址0X618F)控制载波频率的,复位后为0X0B(2405MHz),由7位控制6:0,载波频率范围从 2394MHz至U 2507MHz,可编程在 1 MHz的步进。美国 IEEE802.15.4-2006协议指定用 16个信道channel,从11到26将载波范围 以5MHz间隔分开。【3】这样通过改变channel的值就可以改变载波频率了,每变一个数实际改变 5MHz。节点跳网跳网是平时常说的多跳, 多跳是指节点 ZED通过其他节点ZR (可有多 个组合途径)再转到目的节点 ZC,即间接通信;而直接

37、通信又称单跳,ZED 直接到目的节点 ZC。跳网主要是解决长距离或有障碍时的通信问题。(a)星单跳拓扑ZEDZR(b)网多跳拓扑实现原理如图中:终端设备ZED利用和其他路由节点 ZR绑定,得到确认后,数据就可通过绑定的路由节点ZR再转到目的ZC。实现方法:单片机程序主要有四部分:允许绑定;源地址匹配;匹配确认;数据发送。下面逐一说明。ZED跳网传递必须进行绑定,只有经过了源地址ZR绑定之后,ZED的数据才可以通过多跳才可以进行传递。可以通过发送绑定事件:osal_start_timerEx(sapi_TasklD,ZB_ALLOW_BIND_TIMER,timeout *1000);源地址匹配

38、:if(eve nts &ZB_ALLOW_BIND_TIMER) afSetMatch(sapi_epDesc.simpleDesc->E ndPoi nt,FALSE);return(eve nts ZB_ALLOW_BIND_TIMER);匹配确认:if(reportState) osal_set_eve nt(sapi_TasklD,MY_REPORT_EVT);确认成功就可调用 Zb_Se ndDataRequest()函数请求数据发送。第六章自组网典型应用编写程 序,实现:采集电压数据(可调电位器),显示于LCD上,当电压超过指定值,则启动报警。1、打开工程2、设置信

39、道和PANID3、设置事件并定时void SenericApp_HandleKeys( byce shift, byte keys )辽(Z t HAL_KEY_SW_L )按健启动启动事假定时4caa 1_5et_event (GenericApp_Ta3LlZ)r cllectVcltage);C3al_atari:_timerEM (GrLericAppasIDfCollctVoltaje, ICO'-);-22 -南京工业职业技术学院项目技术报告GenencAppx " | f8w匸onfig,旳 | ZMarrt, GeneritAppLh */ dsvzce ne

40、sds#define GENERICM P_ENDPOINI10define GENERICAPP_PRC-riDOxOFOi# de fine GENERI CAP P_DE3H CEID0x0001SENERICAPP_DEVICEJ7ERSION:define GENERICAPP FLAGS0# de fine GENERICAF P_HW_CLU5I ER5:define GENtRICAPF_CLU3TERID1/ Snd M-ssaqs Tinsaut/ Every 5 sesondsOlefine CENERICA£F_SEt4DIMEOCTT 50C 3/ Appl

41、iedt丄or Evenis (OSAL) - Thse are hit eigted dfusitisrs, # tie fine GENERICAPF SENC MSG EVT0x0001MACS?OS金诗 亡*左* 左士* i- -fr ir Jr sfr i 士*善3書 左 * 士* 主* F* 警 i击 丘:# k 去 * 左* i- dr # x- -fr Jr rir 十占#*击士占 i甫 合去舌 i由-* HJNCTIONS4、编写电压米集事件£亡nerkApp.t * 审艸匚0<1何,旳 | ZMaimcz | GenericApp.h 千UINTL6 Gen

42、ericApp_Proce33Event ( byte W31r_id, UINT16 events IafIncomingMSGPa eket_t *MSGpkt;(void) ta3k_id; / Ijitentioca丄丄丫 jz:referenced par=zie;;srif ( events e SYS_EVEN7_MSG )MSGplct (a fl ncomingMSGPa c Jce t *) o s a l_Jns _re ceive I Se ne r i c App_raj if ID ); while ( MSGpkt )switch ( MS Gpkt->hd

43、r,eve nt )case KE_CEIMIGE:jMSGplTEl ->keGenericApp_riandleKey3 ( (keyChange_t *) MSGptn | ->3tate t (keyChanget break;case AF_INCCMING_MSG_CMD:3ene ri cflpp3 ageMSGCB( MSGptt );breai;case ZDO_SrArE_CHANGE:breeik;default:breai;/ Heleist th# ssEoryO3al_msg_deallocAte ( (uintfi *MSGpti: j;/ Next出

44、岳;pkt = (afIncajtingMSGFack已*) osial_jn3g_receive 5eneri cApp_Tas11D ; ) _ _ _ 一/ rettirn unproc*jstd sventireturn (events " SY5_EVENT_MSG);)iffeventa t CollectVoltage)return (events t CcllectVoltage):f f l" A * * A *i-5*" "E t ITTiT i V T.用FK5、编写电压采集代码-24 -南京工业职业技术学院项目技术报告1f(tvt

45、nti i CDIlectVfilt)uihlQ value; 荐 站毛理訝亶RPCF1G = OkSO ;FOSEL I- OiSO;FODIR s- *0x30:POINF | 0x80?1AL_DEIA¥) ; HAL_DELAY | ;valueHalAdcRead(0x07,HAL_ADC_RE50LUTI0N_&) ;/P0_G英3住血蔚J?HalLcalRTiueString "VoluageBuz ze r " P EiAL_LCC_LINE_3 i;HalLcdWriteSuringValue("DianWeiji:wrvalu

46、er 1 £:HAL_ZcD_LINE_41; if(va lue>0jr601/电压佢夫7 Ox五欝在寿屈口議&苗煨笔卒Ha 1 Le dS st (?itL_LED_2 f HJiL_LED_HClDE_CJr ; /.LED2 斤誉捧世壽F1SEL &叶汕:P1D1R 1-3x50;ZMP1S_12P1INP = 0x80;Pl_7=l;/Ml *管頼鹽出高电平给蚩电誌总鎳理饕垂)elserHi I LidS tt (?1AL_LED_2 r ?iAL_LED_HODEjOFF);P1SEL & 弼汕;P1DIR =OxSO;P1INP = OlS

47、fl;Pl 7=0;3al_3tart_timexEx (SenericAppTasklDp CallectVoltageg 13 0 3) J return (ev«nrs £ CalleetVoltagei;6、添加头文件-25 -南京工业职业技术学院项目技术报告GenerkAppx * fSwConfig.dig | ZMain.c | GenericApp.h *#include "ZDObject.tiwinclude "ZDFrofile.h"inalude GenericApp,h"#include "Debu

48、gTraceh"#if !defined( WIN32 )#include "CnBoardh"/* HAL */#include *tial_lcd,h*'include whal_led*h°#mcludE *hal_key.huinulubg Eji占 1include whal_adc*h"#*首七* 士*去皆尸*打吉看*士*冬*卍舌k*才七*音*者卷啬*音*打*着*啬*看*黑*脅*賢*啬*舍轟* *骑*鲁* MACHOS*/* CONSTANTSV去*咗*世*±卄去十*:|1去*塞*書去去* 去*咗*畫*誉去 書*1

49、|去* 去* 徒去!去咗*誉*!去编写程序,实现:路由节点按键通过协调器控制(广播形式)三 个路由节点的灯亮和灭。1、打开 switch。2、工作空间选择 coordi natorEB3、设置信道、PANID。4、修改发送函数将图一改成图-26 -南京工业职业技术学院项目技术报告GenerbcApp.c *fS'A'Configcfg | ZMain.c*士 returnnonevcid| Gen&ricApp_5&ndTheMje3jaffe f void char uheMessageData d,Hello World11;if ( AF_DataRegu

50、e3t ( tGen已ricApp_DsJtAddr r t&sn已rioApp_epDesc,GEKER ICAFP_CLU5T ERID.(tyt已) EheHeaag已Dat日)+1, (byte *) ttheHesaageData,4t?enerieApp_TEan3lDtAF-DISCVROUIE, Af_DE FAULI_RADIUS 1 = afS tatus_5UCCE S S ) ( 一 -/ Sucressfuily regueted to be sent,1else/ Exror oceiirred zn recjiiedt to end.修改函数声明Gener

51、>cApp,c Sreturu 口。口已 f8Monfig.匸fig | EMain.c: | Gen皀rkiApp,h干 LOCAL FVKCTIC17S*/void enericAppProcessZDOHags( 2dalncomint *inM3g );void jEnericApp_HandleKey3( byte shif匸 byre keys );voi<! 阮皀33且寸巨昭GCE 匸);/void GenericApp_SendTheMessae( void )?口irrc普 &enerfcApp_SendTheMea3ageuinE16 len tuinr

52、S *buf );/*“ & *&*&*隹承总总丽* 丽 i丽色* 岂尸一一一 一丄n 一 n_ _ : r n._ _ 一5、编写发送代码*/void 'Se neri cApp_Ini t ( byte Lask_id )G« neti eApp_Ta3 Jcl D ® tasle_id;Gs neri cAppNwkSt ate = DEV_INIT?&e neri cApp_TransID = 0;/ Device iardvare 1232tidlAzaticn ca.n be added here or ut js超昱且0

53、 fZEaut/ If Efie hardware is applicatian specific - ddd it h楚里亠"玮鼻jte鼻占Mm兴d事爭枣弹曽:pe皆孚。藥勺鼻e已。申赳百d静鼻&e neri cApp_Ds t Addr. addrMode = afAddrMode_t:) AddrBr oadca a t; / fatJ AdcfrNo tFresent;Generi cApp_C,stAdidr endPoint = G-EETERICiAPP_END POINT ;/0;Sener i cApp_D3t Add r addr. aher tAddr = 0且兰:£££/07/ fill out the endpoint description-Ge neri

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论