4实战zigbee教程实时rssi实验_第1页
4实战zigbee教程实时rssi实验_第2页
4实战zigbee教程实时rssi实验_第3页
已阅读5页,还剩2页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

1、实时 RSSI 实验显示通信节点的 RSSI值2014/3/28OSAL 是协议栈的躯干,可以理解为一个超级简单的操作系统目录前言2必要条件2原理图2编程参考2准备工作3源码分析311 前言经过前面的学习,我终于来到山顶上了。学习 Z-Stack 是的目的,而前面的学习只是为学习 Z-Stack 协议栈做铺垫。没有前面的知识我将很难有学成今后的实验。下面将进入zigbee 应用。本实验中主要是测量通信中的两节点 RSSI 值。RSSI 是(Received Signal StrengthIndication)接收信号强度指示。在 TI 协议栈中的ingMSGPacket_t 结构体中包含结构体

2、成员变量rssi。有了这个信息就可以很容易的完成本次实验。2 必要条件A 硬件1、 SmartRF 系列开发板,CC2530 或者 CC2531 2、 CC-Debugger 仿真器B1、 IAR for 8051 开发环境,版本:8.202、 Flash Programmer 固件烧写3、 Source Insight3.5 代码阅读。3 原理图见 CC2530 开发板资料-0 开始:入手开发套件-原理图-SCH-NewSmartRF-V1.0.pdf 这是板子的原理图。4 编程参考OSAL 实验中,需要参考的有两份文档1、 HALAPI.pdf(位于协议栈安装目录DriverTexas),

3、对于英语比较好一点的读者可以直接阅读InstrumentsZStack-CC2530-2.5.1a这份英文资料,这个是由 TI 提供的。还有一份中文文档在开发板资料0 开始:入手开发套件协议栈中API(中).pdf提供资料的目录下 CC2530中文件中文翻译HAL 驱动2、 Z-Stack API.pdf(位于协议栈安装目录 Texas Instrument ZStack-CC2530-2.5.1a),对于英语比较好一点的读者可以直接阅读这份英文资料,这个是由 TI 提供的。还有一份中文文档在提供资料的目录下 CC2530 开发板资料0 开始:入手开发套件协议栈中中文件中文翻译ZStack A

4、PI 接口(中).pdf2此函数定义在 BindTable.c 文件中,读者可以使用 SI 创建工程,并用其搜所功能定位bindAddEntry 函数。5 准备工作使用 SourceInsight3.5 来创建一个代码阅读工程,来帮助与中级篇都有说明,请参考之前的说明。学习。具体步骤在基础篇6 源码分析请将 CC2530 开发板资料-4 实战:ZIGBEE 实战战-实战 15:实时 RSSI 实验下的工程到 协 议 栈 的 安 装 目 录 下TestRoutineTexasInstrumentZStack-CC2530-2.5.1aProjectszstackSles 目录下双击打开 IAR

5、工程 TestRoutine.EWW)为了能使终端设备在刚上电时就将自己的父备加入到自己的绑定表中。在终端设备的ZDO_SE_CHANGE 事件处理中,加入了绑定代码。同时启动 TestRoutine_SEND_MSG_EVT事件,即一秒钟定时器。3在 TestRoutine_bindAddEntry 函数点将自己的父设备添加到自己的绑定表中,系统函数 NLME_GetCoordShortAddr 是获得自己父设备的网络地址。系统函数 bindAddEntry 执行绑定操作。具体的代码见下图所示。完成绑操作之后,节点就可以向自己的父设备发送相应的消息,在TestRoutine_SEND_MSG

6、_EVT 事件中可以看到,节点向父设备发送的数据为OxFF。此数据没有任何实际意义,只是作为父设备判断的依据。所以在协调器的ING_MSG_CMD系统事件中通过判断来自终端的信息,并通过ingMSGPacket_t 事件结构中rssi 成员此进的RSSI 值。ingMSGPacket_t 事件结构如下所示。4从ingMSGPacket_t 结构体中rssi 的定义可知,它的数据类型是有符号八位数据。再者根据实际情况,rssi 一般为负值。所以结构体中的rssi 值为负数,而负数在储方式是以二进制的补码形式存放的。所以要进行相应的转换。具体见下图代码。的存代码中的rssi_value = (rs

7、si_value-1);的指令是将实际 rssi 值转换成了绝对值(负数二进制的源码,反码,补码知识用户可以查看相应的资料)。源码的分析就到这里,下面我就将程序下到板子上看看实验现象。在此实验中最少需要 2块的开发板。一个作为协调器,一个作为终端设备。在编译时,在IAR 工程的左侧选择 CoordinatorEB,点击 Rebuild ALL 。完成时将程序烧录到板子上,此时板子就是网络中的协调器,它将会显示终端设备发送的信息。编译完协调器,再编译终端设备。在 IAR 工程的左侧选择 EndDeviceEB,点击 Rebuild ALL 。完成时将程序烧录到板子上,此时板子就是网络中的终端设备。它在上电时会搜索网络并加入。终端设备会每 1s 向父节点发送一次数据。5节点协调器们:ContactWuxi Ghosty

温馨提示

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

最新文档

评论

0/150

提交评论