物联网实验指导书_第1页
物联网实验指导书_第2页
物联网实验指导书_第3页
物联网实验指导书_第4页
物联网实验指导书_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、精选文档 物 联 网实 验 指 导 书四川理工学院通信教研室2014年11月目 录前言1实验一 走马灯IAR工程建立实验5实验二 串口通信实验14实验三 点对点通信实验18实验四 Mesh自动组网实验21附录25实验一代码25实验二代码26实验三代码28实验四代码29精选文档前言1、ZigBee基础创新套件概述无线传感器网络技术被评为是未来四大高科技产业之一,可以预见无线传感器网络将会是继互联网之后一个巨大的新兴产业,同时由于无线传感网络的广泛应用,必然会对传统行业起到巨大的拉动作用。无线传感器网络技术,主要是针对短距离、低功耗、低速的数据传输。数据节点之间的数据传输强调网络特性。数据节点之间

2、通过特有无线传输芯片进行连接和转发形成大范围的覆盖容纳大量的节点。传感器节点之间的网络能够自由和智能的组成,网络具有自组织的特征,即网络的节点可以智能的形成网络连接,连接根据不同的需要采用不同的拓扑结构。网络具有自维护特征,即当某些节点发生问题的时候,不影响网络的其它传感器节点的数据传输。正是因为有了如此高级灵活的网络特征,传感器网络设备的安装和维护非常简便,可以在不增加单个节点成本同时进行大规模的布设。无线传感器网络技术在节能、环境监测、工业控制等领域拥有非常巨大的潜力。目前无线传感器网络技术尚属一个新兴技术,正在高速发展,学习和掌握新技术发展方向和技术理念是现代化高等教育的核心理念。“Zi

3、gBee基础创新套件”产品正是针对这一新技术的发展需要,使这种新技术能够得到快速的推广,让高校师生能够学习和了解这项潜力巨大的新技术。“ZigBee基础创新套件”是由多个传感器节点组成的无线传感器网络。该套件综合了传感器技术、嵌入式计算技术、现代网络及无线通信技术、分布式信息处理技术等多种技术领域,用户可以根据所需的应用在该套件上进行自由开发。2、ZigBee基础创新套件的组成CITE 创新型无线节点(CITE-N01 ) 4个物联网创新型超声波传感器(CITE-S063) 1个物联网创新型红外传感器( CITE-S073) 1个物联网便携型加速度传感器(CITE-S082) 1个物联网便携型

4、温湿度传感器(CITE-S121 ) 1个电源 6个天线 8根CC Debugger 1套(调试器,带 MINI USB接口的USB线,10PIN排线)物联网实验软件 一套2.1CITE创新型无线节点( CITE-N01) 支持 IEEE 802.15.4 标准以及 ZigBee、 ZigBee PRO 和 ZigBee RF4CE 标准 2.4G ISM 工作频率 传输速度 250Kbps, 最大输出功率 10dBm,接收灵敏度-97dBm MCU: 增强型 8051MCU, 256KFlash 低功耗:主动模式 RX, 24mA主动模式 TX 在 1dBm, 29mA供电模式 1 ( 4u

5、s 唤醒), 0.2mA供电模式 2(睡眠定时器运行), 1uA供电模式 3(外部中断), 0.4uA宽电源电压范围( 2V-3.6V) 液晶屏显示:便于观察实验现象 自带 3 种传感器: 光照传感器, 3 轴加速度传感器,温度传感器 3个彩灯, 5 个按键:便于实现多种输入输出组合 锂电池和 DC5V 两种供电方式可选, 锂电池充电时间一般需要 45 个小时,可以使用 200 个小时,在使用锂电池的情况下,如果长时间不使用,请关闭电源开关2.2物联网创新型超声波传感器( CITE-S063)物联网创新型超声波传感器(CITE-S063)由 CC2530 无线模块和超声波传感器底板组成。传感器

6、底板上采用的是两个超声波探头, MCU 部分采用 Silicon Laboratories 公司的C8051F206。超声波传感器底板输出 02000mm 测量距离,并将测量距离发送给 CC2530 无线模块。传感器底板上有一个彩色灯,通过编程可以显示各种不同颜色,随着测量距离的不同变换不同的颜色。传感器底板与 CC2530 无线模块间通过串口通信,电平转换为 RS232。2.3物联网创新型红外传感器( CITE-S073)物联网创新型红外传感器( CITE-S073)由 CC2530 无线模块和红外传感器底板组成。传感器底板上件采用的是红外传感器, MCU 部分采用 Silicon Labo

7、ratories 公司的C8051F206。红外传感器底板输出 0 或 1 开关量,并将开关量发送给 CC2530 无线模块。传感器底板上有一个彩色灯,通过编程可以显示各种不同颜色,红色表示红外传感器没有检测到物体,绿色表示红外传感器检测到物体。传感器底板与 CC2530 无线模块间通过串口通信,电平转换为RS232。2.4物联网便携型加速度传感器(CITE-S082)物联网便携型加速度传感器(CITE-S082) 是由 CC2530 无线模块和 KIONIX 公司的3轴加速度传感器 KXTF9-1062 组成。 CC2530 可以通过 I2C 总线读取加速度传感器中 3 轴加速度的值。使用时

8、用 2 节 1.5V 干电池供电。2.5物联网便携型温湿度传感器(CITE-S121)物联网便携型温湿度传感器(CITE-S121 ) 是由 CC2530 无线模块和 SENSIRION公司的温湿度传感器 STH11 组成。 CC2530 可以读取传感器采集的温湿度值。使用时用 2节1.5V干电池供电。3、系统连接注意事项:在无线通信过程中,相同信道之间会产生信号干扰,由于所有实验箱在出厂时默认的都是同一信道的演示实验程序。所以在做实验时,为了防止实验箱之间信号的互相干扰,保证实验效果,请同一个实验箱用同一个频率同一个信道,不同实验箱用用不同的频率与不同的信道。打开产品实验箱后,里面包含了搭建

9、系统所需要的所有器件和配件。连接步骤为:1. 将所有模块上的天线连接好;2. 将 CITE 创新型无线节点( CITE-N01 )、 CITE-S073 物联网创新型红外传感器和CITE-S063 物联网创新型超声波传感器的电源接口与电源进行连接;3. 将 CITE-S082 物联网便携型加速度传感器和 CITE-S121 物联网便携型温湿度传感器分别装入两节 1.5V 的干电池;4. 在计算机上安装 CITE-N01 模块的串口驱动;5. 将贴有红色圆标签的 CITE 创新型无线节点( CITE-N01 ) 的 MINI USB 端口与计算机的 USB 串口用提供的 A-MINI USB 线

10、进行连接,打开电源开关;依次打开剩下模块的电源开关;6. 运行计算机上的 CITE-LAB 软件。实验一 走马灯IAR工程建立实验1 、实验目的了解 IAR 集成开发环境。学习安装 SmartRF Flash Programmer 软件下载程序。2、实验设备硬件: PC 机(一台)ZigBee 基础创新套件(一套)软件: IAR Embedded Workbench 开发工具、SmartRF Flash Programmer 软件、CITE-LAB 软件3、 实验预习要求仔细阅读 IAR 相关文档,熟悉本节实验步骤。IAR Embedded Workbench(以下简称为 IAR) 嵌入式系统

11、应用程序的开发工具,支持汇编、 C 和 C+语言。它提供完整的集成开发环境,包括工程管理器、编辑器、编译链接工具和 C-SPY 调试器。 IAR Systems 以其高度优化的编译器而闻名。每个 C/C+编译器不仅包含一般全局性的优化,也包含针对特定芯片的低级优化,以充分利用所选芯片的所有特性,确保较小的代码尺寸。能够支持由不同的芯片制造商生产,且种类繁多的 8 位、 16位或 32 位芯片。4实验内容(1)安装 IAR。(2)启动 IAR。(3)新建一个 IAR 工作区。(4)打开一个 IAR 工作区。(5)安装调试器驱动。(6)连接计算机、 CC Debugger 与物联网创新型红外传感器

12、(CITE-S073)。(7)设置项目参数。(8)编译、下载程序。(9)安装 SmartRF Flash Programmer 软件,这个软件主要用于无线网络实验、传感器实验中的实验 3 以及综合实验的程序下载。(10)使用 SmartRF Flash Programmer 软件下载程序。5、实验连接逻辑图6实验步骤安装IAR。点击光盘中的图标,出现如图所示的对话框。选择第二项“Install IAR Embedded Workbench”并点击,出现解压界面如图所示:等待出现安装界面如图所示。点击“Next”,出现对话框如图所示。点击“Accept”,出现图对话框如图所示。输入姓名和公司名称

13、(任意输入),双击,生成License number 与Licese key,并填写到软件相应的位置并完成激活。点击“Browse”选择“Licence Key”,点击“Next”,出现对话框如图所示。点击“Next”,出现对话框如图所示。选择“Full”,点击“Next”,出现对话框如图所示。点击“Next”,出现对话框如图所示。点击“Next”,出现开始安装话框如图所示。等待安装结束后会弹出对话框如图所示。点击“Finish”,安装完成。启动IAR。安装结束后,在开始菜单中选择“IAR Embedded WorkBench”,即可打开IAR开发环境。IAR安装目录如图所示。当打开IAR开发

14、环境时,如果已经建好了工作区,会出现如图所示的窗口,可以选择窗口里需要打开的工作区。如果要新建或打开一个工作区则点击“Cancel”。打开一个IAR工作区。要打开光盘中“物联网实验”文件夹中的“实验1”中的CITE-T-ZA-Led。工作区打开方法为:点击FileOpen Workspace,如图所示。选择并打开名称为CITE-T-ZA-Led的工作区,如图所示。打开的工作区如图所示。(5)安装调试器驱动。将CC Debugger通过A-MINI USB线与计算机的USB口连接,计算机会弹出“找到新的硬件向导”,选择“从列表或指定位置安装(高级)”,点击“下一步”,如图所示。点击“浏览”按钮,

15、选择驱动所在路径,驱动文件在IAR程序的安装目录下,具体位置为C:Program FilesIAR SystemsEmbedded Workbench 5.38051driversTexas Instruments,如图所示,点击“下一步”。等待驱动安装完成,点击“完成”按钮,完成调试器驱动安装,如图所示。点击 CITE-T-ZA-Led-Debug工程文件,点击 ProjectOptions,如图所示。选择“Linker”选项,设置“Output”和“Config”选项卡,如图所示。选择“Debugger”选项,设置“Setup”选项卡,如图设置取一个物联网创新型红外传感器(CITE-S07

16、3),连接CC Debugger、物联网创新型红外传感器(CITE-S073)和计算机,连接电源,连接好后,打开电源开关。(8)编译、下载程序。 选择CITE-ZA-Led.c 文件,点击ProjectRebuild All,编译程序并生成目标文件。编译情况会在界面下方的“Messages”显示出来,如果编译时出现错误或警告,请根据提示进行修改,直至没有错误。再点击ProjectDebug将程序下载到物联网创新型红外传感器(CITE-S073)中,连接方法如图所示;点击运行程序,可以观察到物联网创新型红外传感器(CITE-S073)上D2D5的4个灯轮流闪烁。实验小结通过本小结的学习,学会定时

17、器查询方式的使用和I/O 端口的使用,并学会如何控制D2D5灯轮流闪烁。此实验是学习单片机的入门实验,通过学习,对单片机有个基本了解,便于今后更复杂单片机程序的开发。思考题(1)如何改变走马灯闪烁的时间间隔?(2)如何改变4个灯闪烁的次序?实验二 串口通信实验1实验目的学习使用CC2530单片机中断方式实现串口通信。学习如何设置串口的波特率。掌握如何使用串口收发数据。2实验设备硬件:PC机(一台)ZigBee 基础创新套件(一套)软件:IAR Embedded Workbench开发工具CITE-LAB软件3实验内容系统初始化时,以查询的方式向串口发送默认的出厂信息,接下来,串口等待接收数据,

18、串口接收以中断方式接收串口输入的数据,接收到串口上的数据后将数据发还给串口,此时可以在CITE-LAB软件上观察到串口输入的数据。4实验连接逻辑图5实验步骤(1)首先安装CITE 创新型无线节点(CITE-N01)的串口驱动,双击,开始安装驱动直至完成;(2)取一个CITE创新型无线节点(CITE-N01),连接电源,连接好后,打开电源开关,出现一个开机界面如图所示;(3)右键单击“我的电脑”,选择“属性”弹出如图所示对话框;(4)点击“硬件”,选择“设备管理器”,将“端口”选项展开,可以找到CITE创新型无线节点(CITE-N01)与计算机相连接的端口,例如为COM3,(5)启动IAR,打开

19、工作区文件CITE-T-ZA-Uart.eww;(6)点击ProjectRebuild All,编译程序并生成可执行文件;(7)连接CC Debugger、CITE创新型无线节点(CITE-N01)和计算机,如图所示。连接好后,打开电源开关。点击ProjectDebug将程序下载到CITE创新型无线节点(CITE-N01)中;(8)点击运行程序,点击按钮,退出调试环境。(关闭CITE创新型无线节点(CITE-N01)的电源,拔下CC Debugger,将CC Debugger一端的A-MINI USB线拔下,插入CITE创新型无线节点(CITE-N01)上的MiniUSB端口);(9)使用CI

20、TE-LAB软件观察实验现象,CITE创新型无线节点(CITE-N01)上电或复位时,在串口上会显示一串出厂信息,往串口发送数据,可以发现发送的数据被回传;(10)使用CITE-LAB软件观察程序运行情况的过程为:在PC 机上双击 CITE-LAB软件中的图标(如未安装CITE-LAB软件,双击“CITE-LAB软件文件夹”中的安装图标进行安装),点击“进入实验”,选择“基础实验”中的“串口通信实验”,如图所示:点击串口配置按钮,打开如图所示的端口配置界面,在串口中选择COM3,设置波特率为115200,点击“确定”按钮点击“打开选定串口并开始实验”按钮,开始实验,点击选择字符显示方式,打开C

21、ITE创新型无线节点(CITE-N01)的电源或按下复位按键,在“接收数据显示区”窗口中可以观察到出厂信息,如图所示。双击状态栏下方的已发送/已接收的字节,可以将已发送/已接收的字节清为0;在“发送数据输入区”输入需要发送的数据,点击按钮发送数据,此时可以在“接收数据显示区”观察到刚才发送到数据。点击按钮清除数据,点击按钮选择发送数据输入区/接收数据显示区为16进制显示方式,如图A5- 9所示;6.实验小结通过本小结的学习,学会使用单片机的串口功能,进行收发数据,并学会如何设置串口的波特率,如何发送默认的配置信息。7.思考题(1)如何改变串口通信的波特率?(2)如何修改发送的默认信息?实验三

22、点对点通信实验1实验目的通过点对点通信实验,建立无线通信概念。了解IEEE 802.15.4无线通信标准,熟悉PHY、MAC、RSSI等概念。2实验设备硬件:PC机(一台)ZigBee 基础创新套件(一套)软件:IAR Embedded Workbench开发工具CITE-LAB软件3实验内容CITE创新型无线节点(CITE-N01)B每隔500ms向CITE创新型无线节点(CITE-N01)A发送一包数据,所以只有模块A能接收到模块B的信息,这样就构成一个点对点的形式。模块A接收到模块B的数据后,将数据通过串口转发至PC,在CITE-LAB软件上显示其内容。读取CC2530寄存器RSSI的值

23、并在液晶屏上显示。实验连接逻辑图如下:4实验步骤(1)启动IAR,打开工作区文件CITE-T-ZA- PeerToPeer-Cen.eww;(2)打开RF.c文件,将宏定义#define PANID 0x2011中的数值部分修改为实验箱相应的PANID编号,点击保存,点击ProjectRebuild All,编译程序并生成可执行文件;(3)取一个CITE创新型无线节点(CITE-N01)作为模块A,连接CC Debugger、CITE创新型无线节点(CITE-N01)和计算机,连接电源,连接好后,打开电源开关,连接方法请参照基础实验五。点击ProjectDebug将程序下载到CITE创新型无线

24、节点(CITE-N01)中,点击然后退出调试状态,关闭模块A上的电源开关并拔掉CC Debugger;(4)同样的方法打开工作区文件CITE-T-ZA- PeerToPeer-End.eww,将宏定义#define PANID 0x2011 中的数值部分修改为与步骤(2)中相同的值,点击保存,点击ProjectRebuild All,编译程序并生成可执行文件。取一个CITE创新型无线节点(CITE-N01)作为模块B,按照步骤(3)的方法下载程序,关闭模块B上的电源开关并拔掉CC Debugger,将CC Debugger一端的A-MINI USB线拔下,插入CITE创新型无线节点(CITE-

25、N01)A上的MiniUSB端口;(5)在PC 机上双击 CITE-LAB软件中的图标,点击“进入实验”,选择“无线射频实验”中的“点对点通信实验”,按照基础实验五的方法设置相应的串口、波特率,点击“打开选定串口并开始实验”按钮,开始实验,点击选择字符显示方式;(6)分别打开CITE创新型无线节点(CITE-N01)模块A和CITE创新型无线节点(CITE-N01)模块B上的电源开关;(7)CITE创新型无线节点(CITE-N01)模块B每隔500ms向CITE创新型无线节点(CITE-N01)模块A发送一组数据,此时在CITE创新型无线节点(CITE-N01)模块A端的CITE-LAB软件上

26、观察到每隔500ms接收到一组数据“Hello World!”,同时模块A在发送数据时LED1的蓝灯闪烁,模块B在接收数据时LED1的绿灯闪烁,液晶屏上显示接收信号RSSI的值。CITE-LAB软件上显示结果如图所5.实验小结通过本小结的学习,认识到在点对点无线通信过程中,要使数据能够正确接收,首先应保证通信双方的信道一致;其次,因为在实验中采用了地址过滤,地址过滤中包含PANID和短地址信息,所以发送方的PANID和目的地址要和接收方的PANID和源地址相同。当然这两个条件只是正确接收数据的必要条件,需要满足的其它条件请参考CC2530使用手册的相关章节。6.思考题(1)如何改变发送字符的内

27、容?(2)本实验中,所有实验箱发送方的目的地址都相同,我们使用PANID过滤来屏蔽其它实验箱的数据,使接收方只接收此实验箱发送方的数据,如果所有实验箱的PANID都相同,如何使用发送方的目的地址过滤来屏蔽其它实验箱的数据?实验四 Mesh自动组网实验1实验目的学习如何建立 Mesh 网络拓扑结构。学习 ZigBee 网络 Mesh 网络拓扑的使用。2实验设备硬件: PC 机(一台)ZigBee 基础创新套件(一套)软件: IAR Embedded Workbench 开发工具SmartRF Flash Programmer 软件CITE-LAB 软件3实验内容Mesh网络即”无线网格网络”,它

28、是“多跳(multi-hop)”网络,是由ad hoc网络发展而来,是解决“最后一公里”问题的关键技术之一。在向下一代网络演进的过程中,无线是一个不可缺的技术。无线mesh可以与其它网络协同通信。是一个动态的可以不断扩展的网络架构,任意的两个设备均可以保持无线互联。(1)建立 Mesh 网络拓扑结构的网络首先协调器上电后按照指定的信道和 PAN_ID 建立无线网络;然后各个模块作为路由器加入这个无线网络,这样一个 Mesh 网络拓扑结构的网络就建立起来了。(2)无线数据传输路由器每隔 1 秒向协调器发送地址信息和网络信息,协调器接收到路由器的信息后, 将这些信息解析后传送给 PC, PC 上的

29、软件根据这些信息显示当前网络的拓扑结构图。(3) ZigBee Mesh 网络拓扑结构如下图所示:实验连接逻辑图4实验步骤(1)修改 f8wConfig.cfg (路径为:无线网络实验ProjectszstackToolsCC2530DB)文件中的信道和 PANID;(2)启动 IAR,打开协调器工作区文件 MeshCenter.eww;工程路径:无线网络实验ProjectszstackCITE-T-ZA-MeshCITE-Mesh-CenterCC2530DBMeshCenter.eww;(3)点击ProjectRebuild All,编译程序并生成可执行文件 MeshCenter.hex;

30、可执行文件路径:无线网络实验ProjectszstackCITE-T-ZA-MeshCITE-Mesh-CenterCC2530DBCoordinatorEB-Pro ExeMeshCenter.hex;(4)启动 IAR,打开路由器工作区文件 MeshEnd.eww;工程路径:无线网络实验ProjectszstackCITE-T-ZA-MeshCITE-Mesh-EndCC2530DBMeshEnd.eww;(5)点击 ProjectRebuild All,编译程序并生成可执行文件 MeshEnd.hex;可执行文件路径: 无线网络实验ProjectszstackCITE-T-ZA-Mesh

31、CITE-Mesh-EndCC2530DBRouterEB-ProExe MeshEnd.hex;(6)启动SmartRF Flash Programmer 软件(如为安装SmartRF Flash Programmer 软件,双击软件,弹出如图所示的安装界面),分别将可执行文件 MeshCenter.hex 和 MeshEnd.hex下载到协调器和 7 个路由器中,并关闭电源。模块与下载可执行文件的对应关系如下表所示:模块下载可执行文件的名称协调器(1 个 CITE 创新型无线节点(CITE-N01)MeshCenter.hex路由器(剩下 7 个模块)MeshEnd.hex使用 Smart

32、RF Flash Programmer 软件下载MeshCenter.hex程序步骤如下:将计算机、CC Debugger与物联网CITE-N01协调器连接。打开SmartRF Flash Programmer,如下界面设置。打开协调器电源后,会显示与计算机相连接的CC Debugger信息,如图:在 Flash 选项中选择协调器需要下载的Hex文件,可执行文件路径:无线网络实验ProjectszstackCITE-T-ZA-MeshCITE-Mesh-CenterCC2530DBCoordinatorEB-Pro ExeMeshCenter.hex;界面如下。点击“”进行下载。用同样的方法,

33、将MeshEnd.hex下载到剩下的7个模块中;可执行文件路径: 无线网络实验ProjectszstackCITE-T-ZA-MeshCITE-Mesh-EndCC2530DBRouterEB-ProExe MeshEnd.hex;(7) 将协调器和计算机通过 A-MINI USB 线连接起来,打开协调器的电源开关,可以看到协调器模块上彩灯 LED1 的红灯亮,建网成功后变蓝色,并在液晶屏上显示 PANID 号,表示协调器已建立起一个 Mesh 网络,接收到数据时 LED3 的绿灯闪烁;(8) 依次打开 7 个路由器的电源开关,如果是 CITE 创新型无线节点( CITE-N01 ),则在刚上

34、电时路由器设备上彩灯 LED1 的红灯亮,液晶屏的下边显示 OFF 和 Router,表示当前的网络状态(加入或未加入)和设备类型;加入网络成功后变蓝色,并在液晶屏上显示自己的短地址,液晶屏的下边显示 ON 和 Router,表示路由器节点已经加入网络,发送数据时 LED3 的蓝灯闪烁;(9) 在 PC 机上双击 CITE-LAB 软件中的图标,点击 “进入实验”,选择“无线网络实验”中的“自动组网实验(Mesh)”, 选择协调器与计算机连接的MINI USB 端口,例如,为COM3,设置端口波特率为115200bps,点击确定按钮,点击开始按钮,从界面上可以看到当前网络的拓扑结构如图所示;(

35、10)将拓扑图上某个父亲路由器断电后, 例如将短地址为 0x3C0F 的路由器断电,可以观察到只有该路由器消失, 其它路由器通过 Mesh 网络的自愈建网功能可以通过其它路由器重新建网,如图所示7、实验小结本实验通过上位机软件描绘了一个 Mesh 网络拓扑,通过这个拓扑,形象生动的体现了Mesh 网络中设备与设备、设备与协调器之间的关系。通过对某个设备断电或上电体现了Mesh 网络自组网、 自维护的网络特性。8、思考题1、Mesh 网络拓扑结构中,把其中一个设备断电再上电,观察节点是否会重新加入网络。为什么?2、把两个实验箱f8wConfig.cfg文件中的信道和 PANID修改成同样的值,会

36、出现什么现象?附录实验一代码/名称:Delay500()/功能:500ms 定时/入口参数:无/出口参数:无/void Delay500(void)uchar i;T1CTL |= 0x02; /启动模模式计数for(i=0;i<2;i+)while (!(T1STAT & 0x01); /查询定时器 1 定时时间 250ms 是否到达T1STAT &= 0x01; /清定时器 1 中断标志位T1CTL &= 0x02; /停止模模式计数/名称:main()/功能:主函数/入口参数:无/出口参数:无/void main(void)System_Init(); /系

37、统初始化while(1)LED2 = ON; /D2 亮LED3 = OFF; /D3 灭LED4 = OFF; /D4 灭LED5 = OFF; /D5 灭Delay500(); /延时 500msLED2 = OFF;/D2 灭LED3 = ON; /D3 亮LED4 = OFF;/D4 灭LED5 = OFF; /D5 灭Delay500();/延时 500msLED2 = OFF;/D2 灭LED3 = OFF;/D3 灭LED4 = ON; /D4 亮LED5 = OFF; /D5 灭Delay500(); /延时 500msLED2 = OFF;/D2 灭LED3 = OFF;/D

38、3 灭LED4 = OFF;/D4 灭LED5 = ON; /LED5 亮Delay500(); /延时 500ms实验二代码/名称:Initial_uart()/功能:初始化串口/入口参数:无/出口参数:无/void Initial_uart(void)PERCFG = 0x00; /串口 0 在默认位置P0SEL |= 0x0C; /P0.2,P0.3 设置为外设功能U0CSR |= 0x80; /模式选择U0GCR |= 11; /baud_eU0BAUD |= 216; /波特率设为 115200U0CSR |= 0x40; /允许接收IEN0 = 0x84; /总中断允许,串口 0

39、接收中断允许/名称:UART0_RX_ISR()/功能:串口 0 接收中断处理函数/入口参数:无/出口参数:无/#pragma vector = URX0_VECTOR_interrupt void UART0_RX_ISR(void)URX0IF = 0;/清接收标志位* pWrite+ = U0DBUF;/将接收到数据保存到接收 buffer,并将写指针加 1if(IsRxBufWriteEnd)/如果写指针到达 buffer 的结尾处pWrite = Buffer;/将写指针设置为 buffer 的起始处/名称:main()/功能:主函数/入口参数:无/出口参数:无/void main(

40、void)System_Init(); /系统初始化ClearRxBuffer(); /清接收 bufferUart_TX();while(1)if(IsRxBufNotEmpty)/如果接收 buffer 有数据U0DBUF = * pRead+; /发送读指针指向的 buffer 数据,并将读指针加 1while(!UTX0IF);/等待数据发送完成UTX0IF=0;/清发送完成标志位if(IsRxBufReadEnd) /如果读指针到达 buffer 的结尾处pRead = Buffer; /将读指针设置为 buffer 的起始处实验三代码/名称:RF_interrupt()/功能:RF

41、 一般性中断处理函数/入口参数:无/出口参数:无/#pragma vector = RF_VECTOR /RF 一般性中断处理函数_interrupt void RF_interrupt(void)uchar i;S1CON &= 0x03; /清除 RFIF_1 和 RFIF_0 中断标志RFIRQF0 &= 0x40; /清除接收到完整一帧中断标志if(RSSISTAT) /读取 RSSI 值是否有效RSSI_value = RSSI;FrameByteCnt = RXFIFOCNT; /读取帧长度for(i=0;i<FrameByteCnt;i+) /依次赋值给数组

42、Framei = RFD;RFRecvFlag = 1;RFST = ISFLUSHRX; /CSP 指令-立即清除接收缓冲区/名称:UART0_TX_ISR()/功能:串口 0 发送中断处理函数/入口参数:无/出口参数:无/#pragma vector = UTX0_VECTOR_interrupt void UART0_TX_ISR(void)if(UTX0IF)UTX0IF = 0; /清除发送中断标志cnt+; /串口次数加一if(cnt < 12)U0DBUF = Framecnt+10; /依次发送数据elsecnt = 0; /清零发送次数模块 B:/名称:T1_inter

43、rupt()/功能:T1 中断处理函数,因为,溢出一次是 10ms 所以 500ms 应该计数 50 次/入口参数:无/出口参数:无/#pragma vector = T1_VECTOR /T1 中断处理函数_interrupt void T1_interrupt(void)T1STAT &= 0x20; /清除定时器 1 中断标志位Time1Cnt+;if(Time1Cnt = 50)Time1Cnt = 0;Time1Flag = 1; /定时器到/名称:RF_TX()/功能:RF 发送数据/入口参数:无/出口参数:无/void RF_TX(void)uchar i;for(i=0

44、;i<22;i+) /写入数据RFD = MACi;RFST = ISTXON; /启动发送while(!(RFIRQF1&0x02); /等待发送完毕RFIRQF1 &= 0x02;实验四代码协调器/* fn MeshCenter_MessageMSGCB* brief Data message processor callback. This function processes* any incoming data - probably from other devices. So, based* on cluster ID, perform the intende

45、d action.* param none* return none/*void MeshCenter_MessageMSGCB( afIncomingMSGPacket_t *pkt )uint8 comdata60;/addrpacket addr;switch ( pkt->clusterId )case MeshCenter_CLUSTERID:/send the message by uart to pcswitch (pkt->cmd.Data0)case SENADDR:comdata0=0x7e;comdata1=0x7e;comdata2=3+11+pkt->

46、;cmd.Data11*11;/lencomdata3=0x02; /directioncomdata4=0x1C; /frame contrl: addr typeosal_memcpy(void *)&comdata5,(void *)&pkt->cmd.Data1,11+pkt->cmd.Data11*11);comdata5+(11+pkt->cmd.Data11*11)=XorPrc(&comdata2,comdata2+1);HalUARTWrite ( HAL_UART_PORT_0, comdata,comdata2+3);/ comm with PC GUI */break;default:break;

温馨提示

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

评论

0/150

提交评论