无线传感网络技术与应用完整版ppt课件全套教程教程(最新)_第1页
无线传感网络技术与应用完整版ppt课件全套教程教程(最新)_第2页
无线传感网络技术与应用完整版ppt课件全套教程教程(最新)_第3页
无线传感网络技术与应用完整版ppt课件全套教程教程(最新)_第4页
无线传感网络技术与应用完整版ppt课件全套教程教程(最新)_第5页
已阅读5页,还剩262页未读 继续免费阅读

下载本文档

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

文档简介

1、项目一 智能水杯的设计项目目标能力目标素质目标重点难点项目目标能力目标熟悉IAR编译环境掌握仿真调试器驱动的安装能够对PxSEL、PxDIR、PxINP寄存器进行编程能够全面掌握中断使能的步骤能够通过设置定时器1、3,用中断方式来实现灯闪烁能够串口发送和接收数据能够使用CC2530里的温度传感器采集温度能够使用ZigBee CC2530驱动LCD12864 液晶屏项目目标素质目标学生通过学习制作智能水杯,能够掌握CC2530芯片的功能,具备硬件测试的能力,提高了实际动手的能力。项目目标重点难点理解CC2530片上系统的结构及内部模块功能掌握IAR编译软件的安装、编辑与修改掌握通用I/O端口的输

2、入输出设置熟悉PxSEL、PxDIR、PxINP寄存器的应用掌握中断屏蔽寄存器、中断标志寄存器的应用项目目标重点难点掌握定时器1、3寄存器的工作原理和应用理解串行通信接口的概念、特点、工作方式以及寄存器的具体应用掌握使用CC2530里的温度传感器采集温度掌握使用ZigBee CC2530驱动LCD12864 液晶屏知识纲要CC2530片上系统、IAR、Smart flash、PxSEL、PxDIR、PxINP寄存器、中断屏蔽寄存器、中断标志寄存器、定时器1、3寄存器、串行通信接口、温度传感器、液晶显示项目分析许多家庭给新出生的宝宝冲奶粉的时候总是掌握不好水的温度,不同牌子的奶粉有不同的配比说明

3、,但一般来说都是用4060的温水冲较好。这个温度不仅有利于加快化学反应的速度,促使糖、奶粉等在液体里的溶解,调出比较均匀的溶液,且能保证奶粉里的营养物质不被破坏。冲好牛奶后,等温度降到约37度时给宝宝喝。可是爸爸妈妈们如何掌握好水温呢?本项目主要设计一款智能水杯,主要针对有婴儿或者老人的家庭不能直观的感知水温的问题,结合传感器等技术,提出一种能够显示温度的智能水杯。任务目录任务1 智能水杯开发平台任务2 测试智能水杯开发平台任务3 CC2530片上系统I/O端口控制任务4 CC2530片上系统外部中断控制任务5 CC2530片上系统定时器控制任务6 CC2530片上系统串口通信任务7 智能水杯

4、的温度采集任务8 智能水杯的LCD显示任务1 智能水杯开发平台任务描述任务目标知识学习任务实施任务小结任务1 智能水杯开发平台任务描述在各种各样的制作智能水杯的技术解决方案中,我们需要选择一款合适的开发平台。需要有支持Zigbee协议栈的硬件应用到Zigbee无线传感器网络中,所以该智能的开发采用TI公司的CC2530无线片上系统。任务1 智能水杯开发平台任务目标了解ZigBee的概念、特点了解常见的ZigBee开发的片上系统理解CC2530片上系统的结构及内部模块功能掌握IAR编译软件的安装、编辑与修改任务1 智能水杯开发平台知识学习1. ZigBee标准概述2. 常见的ZigBee开发的片

5、上系统3. CC2530片上系统的结构及内部模块功能任务1 智能水杯开发平台知识学习(1)CC2530的主要功能特性(2)CC2530结构分析(3)功能模块介绍CPU 和内存外设无线设备任务1 智能水杯开发平台知识学习4相关硬件设计任务1 智能水杯开发平台知识学习5. IAR编译软件的安装(1)IAR简介嵌入式IAREmbeddedWorkbench是一个非常有效的集成开发环境(IDE),它使用户充分有效地开发并管理嵌入式应用工程。(2)IAR7.51安装任务1 智能水杯开发平台知识学习6. IAR工程和项目的建立(1)新建第一个IAR工程选择 FileNewWorkspace。现在用户已经建

6、好一个工作区,可创建新的工程并把它放入工作区。(2)添加文件或新建程序文件选择菜单ProjectAdd File或在工作区窗口中,在工程名上点右键,在弹出的快捷菜单中选择Add File,弹出文件打开对话框,选择需要的文件单击“打开”退出。任务1 智能水杯开发平台知识学习6. IAR工程和项目的建立(3)设置工程选项参数任务1 智能水杯开发平台任务实施1. 编译、连接、下载选择 ProjectMake或按F7键编译和连接工程2.IAR工程的编译和修改(1)编译项目在工作区中选择需要编译的文件,选择Project-Compile菜单项,或者单击工具栏上的Compile按钮,对源程序进行编译。(2

7、)连接项目和调试进行Debugger和J-Link设置。 进行调试操作,用J-link将目标板和电脑连接之后,点击工具栏上的“Debugger”按钮。任务1 智能水杯开发平台任务小结在本次任务主要讲述了使用IAR集成开发环境进行Zigbee开发的基本流程,讲解了工程的建立、源文件的添加、编译与调试。任务2 测试智能水杯开发平台任务描述任务目标知识学习任务实施任务小结任务2 测试智能水杯开发平台任务描述为了保证智能水杯开发平台的稳定性,在安装调试完IAR软件平台后,还需要安装仿真调试器的驱动并进行调试,进行IAR工程源码的烧写。任务2 测试智能水杯开发平台任务目标掌握仿真调试器驱动的安装掌握IA

8、R工程源码的烧写掌握程序仿真调试的方法任务2 测试智能水杯开发平台知识学习首先需要连接硬件平台才能进行调试,在计算机与ZigBee硬件系统连接前,要在计算机上安装仿真器驱动。任务2 测试智能水杯开发平台任务实施1. 仿真调试器驱动的安装驱动文件在C:Program FilesIAR SystemsEmbedded Workbench 5.38051driversTexas Instruments。2. IAR工程源码的烧写任务2 测试智能水杯开发平台任务实施1. 仿真调试器驱动的安装驱动文件在C:Program FilesIAR SystemsEmbedded Workbench 5.3805

9、1driversTexas Instruments。2. IAR工程源码的烧写烧写完后CC2530上的两个LED连续闪烁10次,表示等待配置任务2 测试智能水杯开发平台任务实施3.程序仿真调试(1)进入调试 (2)调试窗口管理 (3)调试管理任务2 测试智能水杯开发平台任务小结在本次任务主要介绍了仿真调试器驱动的安装和调试的基本方法,并且进行IAR工程源码的烧写。为下一步硬件测试准备好了软件环境。任务3 CC2530片上系统I/O端口控制任务描述任务目标知识学习任务实施任务小结任务3 CC2530片上系统I/O端口控制任务描述智能水杯通过温度传感器获取水蒸气的温度,采集的数据是如何传输的呢?我

10、们可以通过控制CC2530的I/O端口来实现。CC2530芯片模块大致可以分为三类:CPU和内存相关的模块;外设、时钟和电源管理相关的模块以及无线电相关的模块。其中I/O控制器负责所有通用I/O引脚。我们通过CC2530片上系统I/O端口控制来实现点亮LED和按键控制LED交替闪烁的操作。任务3 CC2530片上系统I/O端口控制任务目标掌握通用I/O端口的输入输出设置熟悉PxSEL、PxDIR、PxINP寄存器的应用任务3 CC2530片上系统I/O端口控制知识学习1. 通用I/O端口简介2. 通用I/O端口相关寄存器(1)寄存器 PxSEL(2)用寄存器 PxDIR(3)寄存器PxINP任

11、务3 CC2530片上系统I/O端口控制任务实施1. 点亮灯试验(1)实验现象程序实验点亮 LED1。(2)实验过程CC2530 的 IO 口配置我们需要配置三个寄存器 P1SEL 、P1DIR 、P1INP。任务3 CC2530片上系统I/O端口控制任务实施1. 点亮灯试验源程序代码(全)#include #define LED1 P1_0 /定义 P10 口为 LED1 控制端void IO_Init(void)P1DIR |= 0 x01;/P1_0 定义为输出void main(void)IO_Init();/调用初始化程序LED1=0;/点亮 LED1while(1);任务3 CC2

12、530片上系统I/O端口控制任务实施2. 按键控制灯闪烁(1)实验现象依次按下按键 S1 控制 LED1 的亮和灭。(2)实验过程CC2530的IO口配置我们需要配置三个寄存器 P1SEL 、P1DIR 、P1INP。任务3 CC2530片上系统I/O端口控制任务实施2. 按键控制灯闪烁(1)实验现象依次按下按键 S1 控制 LED1 的亮和灭。(2)实验过程CC2530的IO口配置我们需要配置三个寄存器 P1SEL 、P1DIR 、P1INP。任务3 CC2530片上系统I/O端口控制任务实施2. 按键控制灯闪烁部分源码/* LED初始化函数*/void InitLed(void)P1DIR

13、 |= 0 x01;/P1_0定义为输出LED1= 1;/LED1灯熄灭/*按键初始化函数*/void InitKey()P0SEL&= 0X10;/设置P04为普通IO口P0DIR&= 0X10;/按键在P04口,设置为输入模式P0INP&= 0 x10;/打开P04上拉电阻,不影响/*按键检测函数*/uchar KeyScan(void)if(KEY1=0)Delayms(10);if(KEY1=0)while(!KEY1);/松手检测return 1;/有按键按下return0;/无按键按下任务3 CC2530片上系统I/O端口控制任务小结在本次任务中首先向大家介绍了CC2530通用I/

14、O端口的输入输出设置和寄存器PxSEL、PxDIR、PxINP的应用。通过实验点亮灯试验,让大家能够更加直接的认识到寄存器的基本操作。然后介绍了中断屏蔽寄存器和中断标志寄存器,通过实验按键控制灯闪烁,让大家能够更加直接的认识到中断寄存器的基本操作。任务4 CC2530片上系统外部中断控制任务描述任务目标知识学习任务实施任务小结任务4 CC2530片上系统外部中断控制任务描述CC2530芯片中包含的中断控制器总共提供了18个中断源,分为六个中断组,每个与四个中断优先级之一相关。当设备从活动模式回到空闲模式,任一中断服务请求就被激发。一些中断还可以从睡眠模式(供电模式1-3)唤醒设备。我们通过CC

15、2530的按键控制灯亮灭来实现外设中断的操作。任务4 CC2530片上系统外部中断控制任务目标了解中断的概念掌握中断屏蔽寄存器的应用掌握中断标志寄存器的应用任务4 CC2530片上系统外部中断控制知识学习了解中断的概念掌握中断屏蔽寄存器的应用掌握中断标志寄存器的应用任务4 CC2530片上系统外部中断控制知识学习1. 中断概述CPU有18个中断源。任务4 CC2530片上系统外部中断控制知识学习2. 中断屏蔽(1)中断屏蔽寄存器任务4 CC2530片上系统外部中断控制知识学习2. 中断屏蔽(1)中断屏蔽寄存器任务4 CC2530片上系统外部中断控制知识学习2. 中断屏蔽(1)中断屏蔽寄存器任务

16、4 CC2530片上系统外部中断控制知识学习2. 中断屏蔽(1)中断屏蔽寄存器寄存器P0IEN、P1IEN、P2IEN为P0、P1和P2端口每个引脚设置中断使能任务4 CC2530片上系统外部中断控制知识学习3. 中断处理当中断发生时,无论该中断使能或禁止,CPU都会在中断标志寄存器中设置中断标志位,在程序中可以通过中断标志位来判断是否发生了相应的中断。TCON、S0CON、S1CON、IRCON、IRCON2是CC2530的5个中断标志寄存器P0IFG、P1IFG、P2IFG、是端口0、端口1、端口2每一位的中断标志寄存器4. 中断优先级中断组合成为 6 个中断优先组,每组的优先级通过设置寄

17、存器 IP0 和 IP1 实现。当同时收到几个相同优先级的中断请求时,采用轮流探测顺序来判定哪个中断优先响应任务4 CC2530片上系统外部中断控制任务实施1. 实验现象依次按下按键 S1 控制 LED1 的亮和灭。2. 按键控制灯亮灭来实现外设中断CC2530 的外部中断我们需要配置三个寄存器 P0IEN 、PICTL 、P0IFG、IEN1。任务4 CC2530片上系统外部中断控制任务实施1. 实验现象依次按下按键 S1 控制 LED1 的亮和灭。2. 按键控制灯亮灭来实现外设中断CC2530 的外部中断我们需要配置三个寄存器 P0IEN 、PICTL 、P0IFG、IEN1。任务4 CC

18、2530片上系统外部中断控制任务实施部分源码/*中断处理函数*/#pragmavector = P0INT_VECTOR/格式:#pragma vector =中断向量, /紧接着是中断处理程序_interruptvoidP0_ISR(void)Delayms(10);/去除抖动LED1=LED1;/改变LED1状态P0IFG= 0;/清中断标志P0IF =0;/清中断标志任务4 CC2530片上系统外部中断控制任务小结在本次任务中向大家介绍了中断的概念、中断屏蔽寄存器的应用和中断标志寄存器的应用。通过实验按键控制灯亮灭,让大家能够更加直接的认识到中断寄存器的基本操作。通过做实验,大家能够学习

19、到中断寄存器的操作方法部分关键性代码的编写,开发者可以对CC2530片上系统的有更加深刻的认识。任务5 CC2530片上系统定时器控制任务描述任务目标知识学习任务实施任务小结任务5 CC2530片上系统定时器控制任务描述人类最早使用的定时工具是沙漏或水漏,但在钟表诞生发展成熟之后,人们开始尝试使用这种全新的计时工具来改进定时器,达到准确控制时间的目的。 MCU 的定时器博大精深,由普通定时计算、到 CPU 的分时复用,无不体现定时器的巨大作用。我们通过CC2530的不同定时器实现传统的点灯操作。任务5 CC2530片上系统定时器控制任务目标理解定时器的概念、工作原理掌握CC2530定时器T1的

20、操作掌握CC2530定时器T3的操作掌握通过中断和查询两种方式实现点灯任务5 CC2530片上系统定时器控制知识学习1. 定时器T1简介定时器T1的主要功能有:(1)五个捕获/比较通道(2)上升沿、下降沿或任何的边沿输入捕获(3)设置、清楚或切换输出比较(4)自由运行、模或正技术/倒技术操作(5)可被1、8、32、128整除的时钟分频器(6)在每个捕获/比较和最终计数上生成中断请求(7)DMA触发功能任务5 CC2530片上系统定时器控制知识学习2. 定时器T1中断对T1CNTL寄存器的所有写入访问将复位16位计数器。当达到最终计数值(溢出)时,计数器产生一个中断请求。定时器分配了一个中断向量

21、,当下列定时器事件发生时,将产生一个中断请求:(1)计数器达到最终计数值;(2)输入捕获事件;(3)输出捕获事件。任务5 CC2530片上系统定时器控制知识学习3. 定时器T1操作(1)自由运行模式(Free-Running Mode)在自由模式下,计数器从0 x0000开始,每个活动时钟边沿增加1,当计数器达到0XFFFF,计数器重新载入0X0000,继续递增它的值(2)模模式(Modulo Mode)在模模式下,16位计数器从0X0000开始,每个活动时钟边沿增加1,当计数器达到寄存器T1CC0(T1CC0H:T1CC0L)保存的最终计数值,计数器将复位到0X0000,并继续递增。如图1-

22、63所示。(3)正计数/倒计数模式(Up/Down Mode)在正计数/倒计数模式,计数器反复从0X0000开始,正计数直到达T1CC0保存的值,然后计数器将倒计数直到0X0000。任务5 CC2530片上系统定时器控制知识学习3. 定时器T1操作任务5 CC2530片上系统定时器控制知识学习4.定时器T1寄存器定时器1由以下寄存器组成:T1CNTH 定时器 1 计数高位;T1CNTL 定时器 1 计数低位;T1CTL 定时器 1 控制;T1STAT 定时器 1 状态;任务5 CC2530片上系统定时器控制知识学习5. 定时器T3概述定时器T3和定时器T4是两个8位定时器,定时器T3/T4有以

23、下特点:(1)两个捕获/比较通道;(2)设置,清除或切换输出比较;(3)每时钟可以被以下分频:1、2、4、8、16、32、64、128;(4)在每次捕获/比较和最终计数事件发生时产生中断请求;(5)DMA触发功能。任务5 CC2530片上系统定时器控制知识学习6. 定时器T3/T4模式控制(1)自由运行模式(2)倒模式(3)在正/倒定时器模式任务5 CC2530片上系统定时器控制知识学习7. 定时器T3/定时器T4中断每一个定时器都分配了一个中断向量,分别为T3和T4。当有以下定时器事件发生时便产生中断请求:(1)计数器到达最终计数值;(2)比较事件;(3)捕获事件。任务5 CC2530片上系

24、统定时器控制知识学习8. 定时器3寄存器定时器3由以下寄存器组成:TnCNT定时器T3计数器T3CTL定时器3控制寄存器T3CCTLn定时器T3通道0/1捕获/比较控制TmCCn定时器T3通道0/1捕获/比较值任务5 CC2530片上系统定时器控制任务实施1. 实验现象分别利用定时器 T1 和 T3 使 LED 周期性闪烁。2. 定时器 T1(查询方式)控制灯闪烁CC2530 的 T1 定时器(16 位)我们需要配置三个寄存器 T1CTL,T1STAT,IRCON。任务5 CC2530片上系统定时器控制任务实施部分源码/*主函数*/voidmain(void)ucharcount;InitLe

25、d();/调用初始化函数InitT1();while(1)if(IRCON0)/查询方式IRCON=0;if(+count=1)/约1s周期性闪烁count=0;LED1=!LED1;/LED1闪烁任务5 CC2530片上系统定时器控制任务实施3. 定时器 T3(中断方式)控制灯闪烁CC2530 的 T3 定时器主要是配置三个寄存 T3CTL,T3CCTL0,T3CC0,T3CCTL1,T3CC1。T1 定时器查询方式的区别就是此处使用 T3 定时器(8 位),中断方式。寄存器配置如下:T3CTL |= 0 x08 ;/开溢出中断T3IE=1; /开总中断和T3中断T3CTL |=0XE0;/

26、128分频,128/16000000*N=0.5S,N=65200T3CTL&=0X03;/自动重装 000 xff65200/256=254(次) T3CTL |=0X10;/启动 EA= 1; /开总中断任务5 CC2530片上系统定时器控制任务实施3. 定时器 T3(中断方式)控制灯闪烁CC2530 的 T3 定时器主要是配置三个寄存 T3CTL,T3CCTL0,T3CC0,T3CCTL1,T3CC1。T1 定时器查询方式的区别就是此处使用 T3 定时器(8 位),中断方式。寄存器配置如下:T3CTL |= 0 x08 ;/开溢出中断T3IE=1; /开总中断和T3中断T3CTL |=0

27、XE0;/128分频,128/16000000*N=0.5S,N=65200T3CTL&=0X03;/自动重装 000 xff65200/256=254(次) T3CTL |=0X10;/启动 EA= 1; /开总中断任务5 CC2530片上系统定时器控制任务小结在本次任务中向大家介绍了CC2530定时器的基础知识,重点讲解了定时器T1 和定时器T3。包括定时器的功能、中断方式、操作模式以及相关的寄存器。通过两个实验定时器T1(查询方式)控制灯闪烁、定时器T3(中断方式)控制灯闪烁,让大家能够更加直接的认识到定时器的基本操作。通过做实验,大家能够学习到CC2530定时器的操作方法、寄存器的设置

28、和部分关键性代码的编写,开发者可以对CC2530片上系统的有更加深刻的认识。任务6 CC2530片上系统串口通信任务描述任务目标知识学习任务实施任务小结任务6 CC2530片上系统串口通信任务描述串口通信是指外设和计算机间,通过数据信号线、地线、控制线等,按位进行传输数据的一种通讯方式。我们可以把程序中涉及的某些中间量或者其他程序状态信息打印出来显示在电脑上进行调试,目前很多MUC 和 PC 机通信都是通过串口来进行的。我们通过CC2530的串行通信接口来测试数据的发送和接收。任务6 CC2530片上系统串口通信任务目标理解串口通信接口的概念、特点掌握CC2530串口通信接口寄存器掌握设置波特

29、率的方法掌握串口的发送、接受的操作任务6 CC2530片上系统串口通信知识学习1. 串行通信接口CC2530有两个USB转串口,分别是USART0和USART1。USART0和USART1是串行通信接口,它们能够分别运行于异步UART模式或者同步SPI模式。UART0对应的外部设置IO引脚关系为:位置1:P0_2-RX P0_3-TX 位置2:P1_4-RX P1_5-TXUART1对应的外部设置IO引脚关系为:位置1:P0_5-RX P0_4-TX 位置2:P1_7-RX P1_6-TX任务6 CC2530片上系统串口通信知识学习2. 串行通信接口寄存器USATR0相关寄存器有以下几种:(1

30、)PERCFG:外设控制寄存器(2)P2DIR :端口2方向和端口0外设优先级控制(3)IEN0 :中断使能0寄存器(4)IRCON2:中断标志控制寄存器(5)UxCSR:USARTx 控制和状态寄存器(6)UxUCR:USARTx 串口控制寄存器(7)UxGCR:USARTx 通用控制寄存器(8)UxBUF:USARTx 接收/发送数据缓冲寄存器(9)UxBAUD:USARTx 波特率控制寄存器任务6 CC2530片上系统串口通信知识学习3. 设置串行通信接口寄存器的波特率当运行在UART 模式时,内部的波特率发生器设置UART 波特率。当运行在SPI 模式时,内部的波特率发生器设置SPI

31、主时钟频率。任务6 CC2530片上系统串口通信任务实施1. 串口发送(hello webee)(1)实验现象在串口调试助手上可以看到不停地收到 CC2530 发过来的:HELLO WEBEE 波特率:115200bps。(2)配置串口步骤(1)配置串口的备用位置,是备用位置1,还是备用位置2。配置寄存器PERCFG外设控制寄存器(2)配置IO,使用外部设备功能。此处配置P0_2和P0_3用作串口UART0(3)配置端口的外设优先级。此处配置P0外设优先作为UART0(4)配置相应串口的控制和状态寄存器。此处配置UART0的工作寄存器(5)配置串口工作的波特率。此处配置为波特率115200(6

32、)将对应的串口接收/发送中断标志位清0,接收/发送一个字节都将产生一个中断,在接收时需要开总中断和使能接收中断,以及运行接收。任务6 CC2530片上系统串口通信任务实施1. 串口发送(hello webee)(3)实验过程寄存器具体配置如下:PERCFG = 0 x00;/位置1 P0口P0SEL= 0 x0c;/P0_2,P0_3用作串口(外部设备功能)P2DIR &= 0XC0;/P0优先作为UART0U0CSR|= 0 x80;/设置为UART方式U0GCR|= 11;U0BAUD |= 216;/波特率设为115200UTX0IF= 0; /UART0 TX中断标志初始置位0任务6

33、CC2530片上系统串口通信任务实施1. 串口发送(hello webee)(3)实验过程voidmain(void) /主函数CLKCONCMD&=0 x40;/设置系统时钟源为32MHZ晶振while(CLKCONSTA&0 x40);/等待晶振稳定为32MCLKCONCMD&=0 x47;/设置系统主时钟频率为32MHZIO_Init(); InitUART();strcpy(Txdata,”HELLOWEBEE“);/将发送内容copy到Txdata;while(1)UartSend_String(Txdata,sizeof(“HELLOWEBEE “);/串口发送数Delay_ms(

34、500);/延时LED1=!LED1;/标志发送状任务6 CC2530片上系统串口通信任务实施2. 串口接收和发送(send & receive)(1)实验现象以 abc#方式发送,#为结束符,返回 abc。波特率:115200bps(2)实验过程CLKCONCMD &=0 x40;/设置系统时钟源为32MHZ晶振while(CLKCONSTA &0 x40);/等待晶振稳定CLKCONCMD &=0 x47;/设置系统主时钟频率为32MHZPERCFG= 0 x00; /位置1 P0口P0SEL= 0 x3c;/P0_2,P0_3,P0_4,P0_5用作串口,第二功能P2DIR&= 0XC0

35、;/P0 优先作为UART0,优先级U0CSR|= 0 x80;/UART 方式U0GCR|= 11;/U0GCR与U0BAUD配合U0BAUD|= 216;/波特率设为115200UTX0IF=0;/UART0TX 中断标志初始置位1(收发时候)U0CSR|= 0X40;/允许接收IEN0|=0 x84;/ 开总中断,接收中断任务6 CC2530片上系统串口通信任务实施2. 串口接收和发送(send & receive)串口发送字符串函数:void Uart_Send_String(char *Data,int len)int j;for(j=0;j4;/ADCL 寄存器低 4 位无效val

36、ue|= (UINT16)ADCH)4);return(value-1367.5)/4.5-4;/根据AD 值,计算出实际的温度,芯片、任务7 智能水杯的温度采集任务实施voidmain(void) /主函数charI;charTempValue6;floatAvgTemp;InitUART0(); /初始化串口initTempSensor(); /初始化 ADCwhile(1)AvgTemp=0;for(I=0;I64; i+)AvgTemp+=getTemperature();AvgTemp=AvgTemp/2; /每次累加后除 2任务7 智能水杯的温度采集任务小结在本次任务中向大家介绍如

37、何将采集到内部温度传感器信息通过串口发送到上位机。重点讲解了CC2530 的内部温度检测需要配置的寄存器,并且配置了这些寄存器。通过做实验,大家能够学习到CC2530芯片温度测试的代码。任务8 智能水杯的LCD显示任务描述任务目标知识学习任务实施任务小结任务8 智能水杯的LCD显示任务描述我们需要使用LCD液晶显示屏来显示温度的数值,在这个任务中我们学习用 ZigBee CC2530 来驱动我们的 LCD12864 液晶屏。LCD 调试较串口相比可操作性更强,更直观。任务8 智能水杯的LCD显示任务目标任务8 智能水杯的LCD显示知识学习认识网蜂物联网 ZigBee 开发平台。任务8 智能水杯

38、的LCD显示知识学习下面是一些重要函数的定义,大家可不必深究,但需要了解其用法:/串行发送IO口定义#defineL_CSP1_2/_CS#defineL_LDP0_0/A0=Hdata A0=Lcommend#defineL_CKP1_5/SCLK#defineL_DAP1_6/SI#defineL_BKP0_7/backlight任务8 智能水杯的LCD显示知识学习/*网蜂WeBeeLCD初始化配置参数*/void initLCDM(void)ucharContrastLevel;/定义对比度ContrastLevel=0 xa0;/对比度,根据不同的LCD调节,否则无法显示。SendCm

39、d(0 xaf);/开显示SendCmd(0 x40);/显示起始行为0SendCmd(0 xa0);/RAM列地址与列驱动同顺序SendCmd(0 xa6);/正向显示SendCmd(0 xa4);/显示全亮功能关闭SendCmd(0 xa2);/LCD偏压比1/9SendCmd(0 xc8);/行驱动方向为反向SendCmd(0 x2f);/启用内部LCD驱动电源SendCmd(0 xf8);/升压电路设置指令代码SendCmd(0 x00);/倍压设置为4X SendCmd(ContrastLevel);/设置对比度任务8 智能水杯的LCD显示任务实施void main(void)/*定

40、义显示信息*/uchar *mes1 =“WeBee Technology”; uchar *mes2 =“ZigBee CC2530F256”; uchar *mes3 =“Lets study ZigBee!”;P0DIR = 0XFF; P1DIR = 0XFF; ResetLCD(); /复位LCD initLCDM(); /初始化LCDClearRAM(); /请液晶缓存delay_us(100);/*打印刚刚定义的信息*/ Print8(0,0,mes1); Print8(0,2,mes2); Print8(0,4,mes3);任务8 智能水杯的LCD显示任务小结在本次任务中向大家

41、介绍如何如何在液晶显示屏上显示信息。重点讲解了认识网蜂物联网 ZigBee 开发平台及其函数的意义。并且做了试验在液晶显示屏上显示了信息。通过这个试验,学生可以尝试在智能水杯上显示温度数字。实训项目 显示不同颜色的智能水杯的设计本项目开发了一个可以显示温度的智能水杯,但是这样的功能还不全面,同学们可以结合 CC2530片上系统I/O端口控制、外部中断控制、定时器控制设计出能够针对不同温度范围显示不同颜色LED灯的水杯。可以设计为水杯侧面放置一排LED灯,当温度介于100-80度之间时,红色LED灯亮起;当温度介于79-50之间时,黄色灯亮起;当温度介于49-35度之间时,绿色灯亮起;当温度低于

42、34度时,蓝色灯亮起。项目二 智能晾衣架的设计项目目标能力目标素质目标重点难点项目目标能力目标(1)能总结无线传感器网络的结构(2)全面掌握Zigbee技术及其组网方案(3)能掌握Zigbee技术的开发(4)能掌握CC2530片上系统的测试操作(5)能够应用CC2530 BasicRF实现点灯(6)能够对CC2530 BasicRF的数据传输通过串口进行测试(7)应用协议栈进行简单数据传输的能力项目目标素质目标(1)能利用Zigbee技术组建无线传感网络(2)应用CC2530 BasicRF实现无线数据传输的素质(3)协议栈下无线数据传输的素质,程序员应具备的严谨的素质项目目标重点难点(1)掌

43、握无线传感网的概念、特点和应用(2)制定Zigbee组网方案(3)Zigbee网络设备选型(4)了解CC2530 BasicRF(5)通过BasicRF实现无线点灯(6)测试无线传输数据质量(7)了解Zigbee协议栈和Zigbee协议的关系(8)Zigbee协议栈的安装、编译下载(9)通过协议栈实现点对点通信(10)使用无线网络分析仪感受Zigbee无线网络的数据传输过程(11)OSAL的设备管理和分配机制知识纲要ZIGBEE、无线传感网络、CC2530 BasicRF、点对对通信、数据检测、串口通信、架构协议栈、点对点通信、捕获数据包、OSAL项目分析原始的晾衣架既高又不美观,可以说与现代

44、的时尚家居产生了强烈的反差,近几年出现的手摇式晾衣架也需要摇动手柄才能完成升降,如果衣物过重、或者速度过快、摇柄出现问题都会导致不能正常的工作。如果能够让晾衣架自动完成升降功能,不用人力,不需要手摇升降,那真的是特别的方便。本项目的主要任务是完成一种家用智能化的晾衣架的开发研制,主要功能是使用者将清洗后的衣物挂在晾衣杆上,然后通过手持式遥控器来控制晾衣杆匀速升降。任务目录任务1 智能晾衣架的无线传输网络任务2 智能晾衣架无线网络的实现技术任务3 智能晾衣架无线传感网络结构图任务4 遥控器和晾衣架两点间无线通讯任务5 两点间无线传输信号质量检测任务6 智能晾衣架的内部软件系统任务7 智能晾衣架的

45、信号传输任务8 智能晾衣架的无线信号检测任务1 智能晾衣架的无线传输网络任务描述任务目标知识学习任务实施任务小结任务1 智能晾衣架的无线传输网络任务描述使用者通过遥控器来控制晾衣架的升降,那么遥控器是通过什么途径把控制的信号发送给晾衣架呢?因为遥控器和晾衣架之间的控制工作是在较短的范围内实现的,即发送命令的控制端和接受命令的终端之间实现了短距离的通信。那么这种短距离的网络是什么?即无线传感器网络。任务1 智能晾衣架的无线传输网络任务目标理解无线传感网络的概念了解无线传感网络的特点掌握无线传感网络的体系结构了解无线传感网络的发展现状、挑战、研究领域任务1 智能晾衣架的无线传输网络知识学习1. 无

46、线传感网络的概念利用传感器节点来监测节点周围的环境,收集相关数据,然后通过无线收发装置采用多跳路由的方式将数据发送给汇聚节点,再通过汇聚节点将数据传送到用户端。2.无线传感网络的基本特点(1)传感器节点体积小,能量有限(2)分布式、自组织性。 (3)多跳路由(4)动态性网络 (5)以数据为中心的网络(6)可扩展性。 (7)应用相关。任务1 智能晾衣架的无线传输网络知识学习3.无线网络的体系结构通信协议层可以划分为物理层、链路层、网络层、传输层、应用层。而网络管理面则可以划分为能耗管理面、移动性管理面以及任务管理面。任务1 智能晾衣架的无线传输网络知识学习4. 无线传感网络的发展现状5. 无线传

47、感网络面临的挑战(1)低能耗 (2)实时性 (3)低成本(4)安全和抗干扰 (5)协作6. 无线传感网络的应用领域(1)环境监测 (2)医疗护理(3)军事领域 (4)目标跟踪(5)其他用途任务1 智能晾衣架的无线传输网络任务实施经调查发现,目前住宅小区多以高层为主,公摊面积过大,很多开发商为了节省空间故而把阳台设计较小,那么在有限的空间里能够更加合理利用阳台,同时又做到方便快捷,智能晾衣架应运而生。限制于空间,使控制器和晾衣架之间的距离较短,即只要实现短距离的通信即可。无线传感网络可以解决两者之间的通信问题,需要先了解无线传感网络。任务1 智能晾衣架的无线传输网络任务小结在本次任务中向大家介绍

48、了无线传感网络的概念、特点、体系结构、发展现状、挑战和应用领域。通过本任务的学习,学习者对无线传感网有了清晰的了解。任务2 智能晾衣架的无线传输网络任务描述任务目标知识学习任务实施任务小结任务2 智能晾衣架的无线传输网络任务描述了解无线传感网络后,需要利用无线传感网来搭建无线网络,利用无线传感网络搭建网络的技术有多种,其中Zigbee技术是应用最为广泛也是最核心的技术。任务2 智能晾衣架的无线传输网络任务目标了解zigbee的概念、特点理解zigbee与802.15.4的联系掌握zigbee技术协议框架了解zigbee技术的应用领域任务2 智能晾衣架的无线传输网络知识学习1. ZigBee标准

49、概述ZigBee标准是一种新兴的短距离无线网络通信技术,它是基于IEEE 802.15.4协议栈,主要面向低速率无线个人区域网(Low RateWirelessPersonalAreaNetwork2. ZigBee技术特点(1)功耗低。 (2)成本低。 (3)可靠高。(4)容量大。 (5)时延小。 (6)安全性好。(7)有效范围小。 (8)兼容性。任务2 智能晾衣架的无线传输网络知识学习3. zigbee协议框架(1)ZigBee与IEEE802.15.4协议IEEE802.15.4 是IEEE无线个人区域网 (PersonalAreaNetwork,PAN)工作组的一项标准,被称作IEEE

50、802.15.4 技术标准,IEEE 仅处理低级 MAC 层和物理层协议。ZigBee联盟在802.15.4 的基础上,对其网络层协议和 API进行了标准化。(2)Zigbee联盟ZigBee联盟成立于2001年8 月。ZigBee共公布了三个协议标准,分别称为 ZigBee2004,ZigBee2006,ZigBee 2007。ZigBee2007规范了两套功能指令集,分别是ZigBee功能命令集和ZigBeePro功能命令集。任务2 智能晾衣架的无线传输网络知识学习3. zigbee协议框架(3)Zigbee协议分层结构任务2 智能晾衣架的无线传输网络知识学习3. zigbee协议框架(3

51、)Zigbee协议分层结构ZigBee联盟在802. 15. 4基础上定义了网络层和应用层.其中安全层(Security)主要实现密钥管理、存取等功能。ZigBee网络层规范网络层负责拓扑结构的建立和维护、命名和绑定服务,它们协同完成寻址、路由、传送数据及安全这些不可或缺的任务,支持星形(Star) 、树形(Cluster- Tree) 、网格(Mesh) 等多种拓扑结构.MAC子层的参考模型。网络层提供了两种服务,可以通过两个服务存取点(SAP)分别进行访问。这个两个服务是网络层数据服务和网络层管理服务。任务2 智能晾衣架的无线传输网络知识学习3. zigbee协议框架(3)Zigbee协议

52、分层结构ZigBee应用层规范ZigBee协议栈的层结构包括IEEE802.15.4媒体接入控制层(MAC)和物理层(PHY),ZigBee应用层有三个组成部分,包括应用支持子层APS、应用框架AF、ZigBee设备对象ZDO。ZigBee安全服务规范PHY:提供基本的物理无线通信能力;MAC:提供设备间的可靠性授权和一跳通信连接服务;NWK:提供用于构建不同网络拓扑结构的路由和多跳功能;APL:包括一个应用支持子层(APS)、ZigBee设备对象(ZDO)和应用。任务2 智能晾衣架的无线传输网络知识学习4. zigbee技术的应用领域(1)消费性电子设备。(2)工业控制。(3)汽车及智能交通

53、。(4)农业自动化。(5)医疗辅助控制。任务2 智能晾衣架的无线传输网络任务实施通过总结Zigbee的特点,区分Zigbee和802.15.4的不同,本任务逐层分析了Zigbee协议框架各层结构和原理,最终画出Zigbee协议栈结构图。任务2 智能晾衣架的无线传输网络任务小结在本次任务中向大家介绍了Zigbee的概念、特点、协议框架各层结构和原理,以及Zigbee技术的应用领域。通过学习,大家全面了解了Zigbee,为今后无线传感网络的搭建奠定了基础。任务3 智能晾衣架无线传感网络结构图 任务描述任务目标知识学习任务实施任务小结任务3 智能晾衣架无线传感网络结构图任务描述 通过前期分析Zigb

54、ee的特点,最终生成了Zigbee无线网络方案。那么这个智能晾衣架的无线网络的结构是什么样的?任务3 智能晾衣架无线传感网络结构图任务目标掌握zigee技术的主要组网拓扑结构掌握zigbee网络中不同节点的功能了解智能家居系统常见zigbee组网方案任务3 智能晾衣架无线传感网络结构图知识学习1. zigbee网络中的节点(1)协调器节点也称为全功能设备(Full-Function Device,FFD),是唯一的,是Zigbee网络启动或建立网络的设备。ZigBee协调器是启动和配置网络的一种设备,是网络的中心节点,一个ZigBee网络只允许有一个ZigBee协调器(2)路由器(Router

55、)节点,是一种支持关联的设备,能够将消息转发到其他设备,ZigBee网络或树形网络可以有多个ZigBee路由器(3)终端节点,称为精简功能设备(Reduced-Function Device,RFD),位于ZigBee网络的最终端,完成用户功能,比如信息的收集、设备的控制等等。任务3 智能晾衣架无线传感网络结构图知识学习2.zigee技术的主要组网拓扑结构任务3 智能晾衣架无线传感网络结构图知识学习3. 智能家居系统常见zigbee组网方案智能家居系统基层网络采用ZigBee无线组网技术实现家居系统内部网络,基础网络结构采用星型拓扑结构。通过ZigBee无线通讯模块与智能家电以及传感器构成家居

56、内部网络的终端设备;使用FFD(Full Function Device)设备为家居内部ZigBee网络的中心协调器,负责建立和维护网络;在中心协调器与中央控制服务器之间使用RS232串口通信实现连接,并通过PC 机与互联网相连, 任务3 智能晾衣架无线传感网络结构图任务实施使用Visio软件绘制了本系统的Zigbee无线传感网络拓扑结构图,由于本项目只是实现了两个节点之间的控制,所以只需要协调器和终端节点即可。任务3 智能晾衣架无线传感网络结构图任务小结在本次任务中向大家介绍了Zigee技术的几种不同的拓扑结构,三种不同节点的功能及设计理念。通过最终独立设计出Zigbee无线传感网络拓扑结构

57、,项目组确定了Zigbee无线网络方案。任务4 遥控器和晾衣架两点间无线通讯 任务描述任务目标知识学习任务实施任务小结任务4 遥控器和晾衣架两点间无线通讯任务描述本项目的开发可以利用TI公司的CC2530片上系统来实现无线数据传输,无线数据传输最简单的方法就是BasicRF,即我们所说的点对点通信。项目组成员决定通过这种较为简单的方式来实现遥控器和晾衣架之间的数据通信,同时测试所选取的芯片能否实现这个基础无线通讯。任务4 遥控器和晾衣架两点间无线通讯任务目标理解Basic RF通信的概念、功能掌握CC2530芯片RF的配置掌握basicRF的调用方法掌握basicRF的通信方法任务4 遥控器和

58、晾衣架两点间无线通讯知识学习1. Basic RF简介Basic RF 由 TI 公司提供的基于CC253x的软件代码,它包含了 IEEE 802.15.4 标准的数据包的收发功能,是简单无线点对点传输协议。2. Basic RF工作过程 任务4 遥控器和晾衣架两点间无线通讯知识学习3. 工程文件介绍任务4 遥控器和晾衣架两点间无线通讯知识学习4. BasicRF工作过程(1)确保外围器件没有问题。(2)创建一个basicRfCfg_t的数据结构,并初始化其中的成员(3)调用 basicRfInit()函数进行协议的初始化(3)无线发送 创建一个 buffer,把 payload 放入其中。

59、调用 basicRfSendPacket()函数发送(4)无线数据接收 上层通过 basicRfPacketIsReady()函数来检查是否收到一个新数据包 调用 basicRfReceive()函数,把收到的数据复制到 buffer 中。任务4 遥控器和晾衣架两点间无线通讯任务实施1. 实现平台两块 WeBee 功能底板及两块 WeBee 无线模块。2. 实验现象两块 WeBee 模块通信,一个模块作发射(模拟智能晾衣架的遥控器),另外一个模块接收(模拟智能晾衣架的摇杆),发射模块依次按下按键 S1,改变接收模块 LED1 的亮灭的状态。实现无线控制功能。任务4 遥控器和晾衣架两点间无线通讯

60、任务实施3. light_switch.c 代码详解4. 实验操作:第一步:打开.CC2530 BasicRFide 文件夹下面的工程 在 light_switch.c 里面找到 main 函数,找到下面内容,把 appLight();注释掉,下载到发射模块。appSwitch() /节点为按键 S1 P0_4/ appLight(); /节点为指示灯 LED1 P1_4第二步:找到相同位置,这次把 appSwitch();注释掉,下载到接收模块。/appSwitch(); /节点为按键 S1 P0_4appLight(); /节点为指示灯 LED1 P1_4完成烧写后上电,按下发射模块的 S

温馨提示

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

最新文档

评论

0/150

提交评论