ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:262.11KB ,
资源ID:27211003      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27211003.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(CC2530无线通信丢包率测试.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

CC2530无线通信丢包率测试.docx

1、CC2530无线通信丢包率测试目录一、摘要 1二、应用背景 2三、CC2530芯片概述 43.1CC2530芯片基本介绍 43.2CC2530芯片功能介绍 43.3 CC2530 芯片引脚功能 53.3.1电源引脚功能 63.3.2控制线引脚 6四、原理 74.1有关无线通信的基本概念 74.2基本原理 74.2.1程序流程图 94.2.2具体步骤 10五、程序代码 11六、参考文献 17七、总结 18致 谢 19一、摘要嵌入式系统是以应用为中心,以计算机术为基础,软硬件可定制,适用于不同应用场合,对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处理机,外围硬件设备

2、,嵌入式操作系统,用户应用程序4个部分组成。用于实现对其他设备的控制,监视和管理等功能。嵌入式系统已经广泛应用于科学研究,工业控制,军事技术,交通通信,医疗卫生,消费娱乐等领域,人们常用的手机,PDA,汽车控制系统,ATM(Auto Teller Machine),智能家电,GPS等均是嵌入式系统的典型代表。CC2530 是用于2.4-GHz IEEE 802.15.4、ZigBee 和RF4CE 应用的一个真正的片上系统(SoC)解决方案。它能够以非常低的总的材料成本建立强大的网络节点。 随着3C融合进程和我国传统产业结构升级的加速,人们对设备越来越高的应用需要已经无法满足当前和未来高性能的

3、应用与发展需求.使用两个CC2530模块利用其板载无线天线,测试在不同环境或不同通信距离内,CC2530无线通信数据包丢失率。关键词:嵌入式 CC2530 丢包率二、应用背景智能家居是一个居住环境,是以住宅为平台安装有智能家居系统的居住环境,实施智能家居系统的过程就称为智能家居集成。以住宅为平台,利用有线和无线网络平台通信技术、包括综合布线系统,安全防范系统,背景乐/广播系统,灯光窗帘控制系统,空调VRV控制系统,以及家庭影院控制系统;将家居生活有关的设施集成,构建高效的住宅设施与家庭日程事务的管理系统,提升家居安全性、便利性、舒适性、艺术性,并实现环保节能的居住环境。智能家居集成是利用综合布

4、线技术、网络通信技术、安全防范技术、自动控制技术、音视频技术将家居生活有关的设备集成。由于智能家居采用的技术标准与协议的不同,大多数智能家居系统都采用综合布线方式,但少数系统可能并不采用综合布线技术,如电力载波,不论哪一种情况,都一定有对应的网络通信技术来完成所需的信号传输任务,因此网络通信技术是智能家居集成中关键的技术之一。安全防范技术是智能家居系统中必不可少的技术,在小区及户内可视对讲、家庭监控、家庭防盗报警、与家庭有关的小区一卡通等领域都有广泛应用。自动控制技术是智能家居系统中必不可少的技术,广泛应用在智能家居控制中心、家居设备自动控制模块中,对于家庭能源的科学管理、家庭设备的日程管理都

5、有十分重要的作用。音视频技术是实现家庭环境舒适性、艺术性的重要技术,体现在音视频集中分配、背景音乐、家庭影院等方面。又称智能住宅。通俗地说,它是融合了自动化控制系统、计算机网络系统和网络通讯技术于一体的网络化智能化的家居控制系统。智能家居将让用户有更方便的手段来管理家庭设备,比如,通过家触摸屏、无线遥控器、电话、互联网或者语音识别控制家用设备,更可以执行场景操作,使多个设备形成联动;另一方面,智能家居内的各种设备相互间可以通讯,不需要用户指挥也能根据不同的状态互动运行,从而给用户带来最大程度的高效、便利、舒适与安全。智能家居控制的发展关键在于设计理念以及经营者的心态,市场目标客户真正需要什么东

6、西,挣什么样的钱都要慎重考虑,如果只注重签单,不设身处地的为客户着想,不兼顾智能解决未来的发展,提供片面的智能家居解决方案,而不考虑客户的适用性,是不可取的,是急功近利的表现,这不仅降低了智能家居的应用效果,还不利于整个智能家居行业的发展。智能家居控制系统的市场不是一般普通的商品买卖,而是一项系统性工程,它涉及到很多技术,涉及到人们生活的方方面面,智能家居控制系统的终极目标是一种理想,更是一种理念,要想智能家居控制系统有很好的发展,研发机构必须本着长远发展的心态,本着简化、实用、性价比高、适合市场的理念,虔诚研究人们的生活、习惯、精神文等需要,并把它看最高目标,运用各种技术手段实现它。智能家居

7、控制系统的经营商更要本着消费者至上的理念,本着从客户利益出发心态,以认真、负责、诚信的态度,真正的从客户的实际需求出发,用心服务,用心为客户做智能家居控制设计和解决方案,把工程做好,让客户花最少的钱得到最大化的实惠,才是企业发展之道,才是智能家居行业发展之道。智能家居控制的发展关键在于设计理念以及经营者的心态,市场目标客户真正需要什么东西,挣什么样的钱都要慎重考虑,如果只注重签单,不设身处地的为客户着想,不兼顾智能解决未来的发展,提供片面的智能家居解决方案,而不考虑客户的适用性,是不可取的,是急功近利的表现,这不仅降低了智能家居的应用效果,还不利于整个智能家居行业的发展。三、CC2530芯片概

8、述3.1CC2530芯片基本介绍CC2530 是一个兼容 IEEE 802.15.4 的真正的片上系统,支持专有的 802.15.4 市场以及ZigBee、ZigBee PRO 和ZigBeeRF4CE标准。CC2530 提供了101dB 的链路质量,优秀的接收器灵敏度和健壮的抗干扰性,四种供电模式,多种闪存尺寸,以及一套广泛的外设集包括 2 个USART、12位 ADC和 21 个通用GPIO,以及更多。除了通过优秀的 RF 性能、选择性和业界标准增强 8051MCU 内核,支持一般的低功耗无线通信,CC2530 还可以配备 TI的一个标准兼容或专有的网络协议栈(RemoTI, Z-Stac

9、k, 或SimpliciTI)来简化开发,使你更快的获得市场。CC2530 可以用于的应用包括远程控制、消费型电子、家庭控制、计量和智能能源、楼宇自动化、医疗以及更多领域。根据芯片内置内存的不同容量,CC2530拥有三种不同的版本:CC2530-F32/F64/F128/F256,编号后缀分别代表了芯片具 32KB,64KB,128KB或 256KB 的闪存。比起第一代 CC2430,CC2530 提供了改进的 RF 性能,多达 256KB的闪存以支持更大的应用,强大的地址识别和数据包处理引擎, 能够很好的匹配 RF 前端,封装更小,IR 一代电路,以及支持 ZigBee PRO 和ZigBe

10、e RF4CE。3.2CC2530芯片功能介绍CC2530 芯片具有如下主要性能:高性能和低功耗的 8051微控制器核;32-、64-或128-KB 的系统内可编程闪存;8-KB RAM,具备在各种供电方式下的数据保持能力;集成符合 IEEE 802.15.4标准的 2.4GHz 的RF 无线电收发机;极高的接收灵敏度和抗干扰性能; 可编程的输出功率高达 4.5dBm;只需一个晶振,即可满足网状网络系统的需要;在供电模式 1 时仅 24mA 的流耗 4s 就能唤醒系统;在睡眠定时器运行时仅 1A 的流耗;在供电模式 3 时仅0.4A 的流耗,外部中断能唤醒系统;硬件支持 CSMA/CA 功能;

11、较宽的电压范围(2.03.6V);支持精确的数字化 RSSI/LQI 和强大的 5 通道DMA;具有捕获功能的 32KHz睡眠定时器;具有电视监视器和温度传感器;具有 8 路舒服和可配置分辨率的 12位 ADC;集成了 AES安全协处理器;带有 2 个支持多种串行通信协议的强大 USART,以及 1 个符合 IEEE802.15.4 规范的MAC定时器,1个 16 位定时器和 1 个8位定时器;强大和灵活的开发工具。3.3 CC2530 芯片引脚功能 CC2530 芯片如图 3.3 所示,它采用 6 mm6 mm的 QFN 封装,共有 40 个引脚。全部引脚可以分为 I/O 端口线引脚,电源线

12、引脚和控制线引脚三类。 CC2530 有 21 个可编程的 I/O 口引脚,P0、P1 口是完全的 8 位口,P2 口只有 5 个可使用的位。通过软件设定一组 SFR 寄存器的位和字节,可使这些引脚作为通常的 I/O 口或作为连接 ADC、计时器或 USART 部件的外围设备 I/O 口使用。 I/O 口有下面的关键特性:可设置为通常的 I/O 口,也可设置为外围的 I/O 使用;在输入时有上拉和下拉能力;全部 21 个 I/O 口引脚都具有响应外部中断源输入口。如果需要外部中断,可对 I/O 口引脚产生中断,同时外部中断事件也能被用来唤醒休眠模式。 1219 脚(P0_7P0_0):具有 4

13、mA 的输出驱动能力。 11,9 脚(P1_0,P1_1):具有 20mA 的驱动能力。 58,3718 脚(P1_7P1_2):具有4mA 的输出驱动能力。 3238 脚(P2_4P2_0):具有 4mA 的输出驱动能力。图3.1 CC2530芯片引脚图3.3.1电源引脚功能 AVDD1(28 脚):为模拟电路连接 2.0V3.6V的电压。 AVDD2(27 脚):为模拟电路连接 2.0V3.6V的电压。 AVDD3(24 脚):为模拟电路连接 2.0V3.6V的电压。 AVDD4(29 脚):为模拟电路连接 2.0V3.6V的电压。 AVDD5(21 脚):为模拟电路连接 2.0V3.6V

14、的电压。 AVDD6(31 脚):为模拟电路连接 2.0V3.6V的电压。 DCOUPL(40 脚):提供1.8V的数字电源去耦电压,不使用外部电路供应。 DVDD1(39 脚):提供2.0V3.6V 的数字电源连接电压。 DVDD2(10 脚):提供 2.0V3.6V的数字电源连接电压。 3.3.2控制线引脚 RBIAS(30 脚):为参考电流提供精确的偏置电阻。 RESET_N(20 脚):复位引脚,低电平有效。 RF_N(26 脚):在 RX 期间向 LNA输入负向射频信号。 RF_P(25 脚):在 RX 期间向 LNA输入正向射频信号。XOSC_Q1(22 脚):32MHz 的晶振引

15、脚 1,或外部时钟输入引脚。 XOSC_Q2(23 脚):32MHz 的晶振引脚 2。 四、原理 4.1有关无线通信的基本概念与有线传输相比,无线传输具有许多优点。或许最重要的是,它更灵活。无线信号可以从一个发射器发出到许多接收器而不需要电缆。所有无线信号都是随电磁波通过空气传输的,电磁波是由电子部分和能量部分组成的能量波。在无线通信中频谱包括了9khz到300000Ghz之间的频率。每一种无线服务都与某一个无线频谱区域相关联。无线信号也是源于沿着导体传输的电流。电子信号从发射器到达天线,然后天线将信号作为一系列电磁波发射到空气中。信号通过空气传播,直到它到达目标位置为止。在目标位置,另一个天

16、线接收信号,一个接收器将它转换回电流。接收和发送信号都需要天线,天线分为全向天线和定向天线。在信号的传播中由于反射、衍射和散射的影响,无线信号会沿着许多不同的路径到达其目的地,形成多径信号。通信,指人与人或人与自然之间通过某种行为或媒介进行的信息交流与传递,从广义上指需要信息的双方或多方在不违背各自意愿的情况下无论采用何种方法,使用何种媒质,将信息从某方准确安全传送到另方。无线通信(Wireless communication)是利用电磁波信号可以在自由空间中传播的特性进行信息交换的一种通信方式。4.2基本原理本设计主要是在学会了配置CC2530 RF功能基础上,一个简单无线通信的应用,该设计

17、可以用来测试不同环境或不同通信距离的误码率以及信号的强弱。完成本设计需要两个模块,一个设置为发送模块,一个设置为接收模块;其中发送模块主要是通过板上按键设置不同的发送参数,然后发送数据包。接收模块接收发送模块的数据包,然后计算误码率和信号的强度。 其中按键功能分配如下: PK1 - 开始测试(进入功能选择菜单) PK2- 设置功能加 PK3- 设置功能减 PK4 - 确定按钮 在每完成一个参数设置或选择,都是通过SW4来确定,然后进入下一个参数设置,其中发送模式下的发送开始和停止也是通过SW4控制的。在测试中,接收模块可以通过SW4来复位测试结果。 发送模块需设置的参数有:1、信道选择,802

18、.15.4中2.4G频段信道有16个。为信道11-26,对应的频率为2405MHz到2480MHz。通过SW2和SW3可以对16个信道进行选择。(注意,测试时要与接收模块选择相同的信道)。 2、发射功率设置,CC2530提供的发送功率有-3dBm、0dBm和4dBm三种,通过SW2和SW3可以选择发送模块的不同发射功率。3、发送数据包数量设置,程序中提供的数据包数量有:1000、10000、100000和1000000四种,推荐测试时,选择1000或10000即可。其中也是通过SW2和SW3来选择的。 4、发送速度设置,发送速度即1s中发送数据包的个数。程序中提供5/S、10/S、20/S和5

19、0/S四种速度。通过SW2和SW3来选择。 接收模块只需要设置和发送模块相同的信道即可。 接收模块测量时显示的信息有: 1.数据包丢失率(显示为x/1000)。 2.信号强度(RSSI)。 3.收到的数据包个数。 其中LED1为工作指示灯,当工作不正常时,LED2将为亮状态。4.2.1程序流程图4.2.2具体步骤1.给智能主板供电(USB外接电源或2节干电池)。2、将两个无线节点模块分别插入到两个带LCD的智能主板的相应位置。3、将2.4G的天线安装在无线节点模块上。 4、将CC2530仿真器的一端通过USB线(A型转B型)连接到 PC 机,另一端通过10Pin下载线连接到智能主板的CC253

20、0 JTAG口(J203)。 5、将智能主板上电源开关拨至开位置。按下仿真器上的按钮,仿真器上的指示灯为绿色时,表示连接成功。 6、关掉智能主板上电源,拔下仿真器,按4、5步骤对另一个模块下载程序。 7、打开两个模块的电源,当LED1处于亮时,按下PK1进入下级菜单,按SPK2和PK3对通信信道进行选择(两个模块必须设置相同的信道)。选定后,按SW4进入下一个设置。 8、一个模块按下PK3设置为接收模式,按下SW4确定。接收模块设置完成(此时接收模块已经处于接收待命状态)。 9、另一个模块按下PK2设置为发送模式,按下SW4确定进入下一个设置。 10、使用PK2和PK3对发送模块发射功率选择,

21、选定后,按PK4进入下一个设置。 11、使用PK2和PK3对发送模块发射数据包数量选择,选定后,按PK4进入下一个设置。 12、使用PK2和PK3对发送模块发射速度选择,选定后,按PK4进入发送准备状态。13、将发送和接收模块安放在不同的地方,按下发送模块的PK4开始发送数据(再次按下将停止发送)。观察接收模块的测试结果(此时按下接收模块的PK4,将会清除测试结果)。 14、改变两个模块的位置,再次测量,观察测量结果。 注:如果需要重新设置模块的收发功能,按复位按键。五、程序代码include hal_board.h #include hal_int.h #include hal_mcu.h

22、#include hal_rf.h #include basic_rf.h #include LCD.h /数码管头文件。#define RF_CHANNEL 25 / 2.4 GHz RF 使用信道25 #define PAN_ID 0x2011 /通信PANID #define SWITCH_ADDR 0x2530 /开关模块地址 #define LIGHT_ADDR 0xBEEF /灯模块地址 #define APP_PAYLOAD_LENGTH 1 /命令长度 #define LIGHT_TOGGLE_CMD 0 /命令数据 / 应用状态 #define IDLE 0 #define

23、SEND_CMD 1 /应用角色 #define NONE 0 #define SWITCH 1 #define LIGHT 2 #define APP_MODES 2 /按键 #define HAL_BUTTON_1 1 #define HAL_BUTTON_2 2 #define HAL_BUTTON_3 3 #define HAL_BUTTON_4 4 #define HAL_BUTTON_5 5 #define HAL_BUTTON_6 6 static uint8 pTxDataAPP_PAYLOAD_LENGTH; /发送数据数组 164 static uint8 pRxDataA

24、PP_PAYLOAD_LENGTH; /接收数据数组 static basicRfCfg_t basicRfConfig; /RF初始化结构体 extern void halboardinit(void); /硬件初始化函数 extern void ctrPCA9554FLASHLED(uint8 led); /IIC灯控制函数 extern void ctrPCA9554LED(uint8 led,uint8 operation); extern uint8 halkeycmd(void); /获取按键值函数 #ifdef SECURITY_CCM /安全密钥 static uint8 ke

25、y= 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, ; #endif static void appLight(); /灯应用处理函数 static void appSwitch(); /开关应用处理函数 static uint8 appSelectMode(void); /应用功能选择函数 /* * 函数名称:appLight * 功能描述:接收模式应用函数,初始化RF一些参数,接收另一个模块发送的控制命令,然后控制相应的LED灯 * 参 数:无

26、* 返 回 值:无 */ static void appLight() basicRfConfig.myAddr = LIGHT_ADDR; /设置接收模块的地址 if(basicRfInit(&basicRfConfig)=FAILED) /RF初始化 ctrPCA9554FLASHLED(5); /RF初始化不成功,则所有的LED5闪烁 basicRfReceiveOn(); /打开接收功能 / Main loop while (TRUE) while(!basicRfPacketIsReady(); /准备接收数据 if(basicRfReceive(pRxData, APP_PAYLO

27、AD_LENGTH, NULL)0) /接收数据 if(pRxData0 = LIGHT_TOGGLE_CMD) /判断命令是否正确 ctrPCA9554FLASHLED(1); /关闭或打开LED1 /* * 函数名称:appSwitch * 功能描述:发送模式应用函数,初始化发送模式RF,通过按下SW4向另一个模块发送控制命令。 * 参 数:无 * 返 回 值:无 */ static void appSwitch() pTxData0 = LIGHT_TOGGLE_CMD; /向发送数据中写入命令 basicRfConfig.myAddr = SWITCH_ADDR; /设置发送模块的地址

28、 if(basicRfInit(&basicRfConfig)=FAILED) /RF初始化 ctrPCA9554FLASHLED(5); /RF初始化不成功,则所有的LED5闪烁 basicRfReceiveOff(); /关闭接收功能 / Main loop while (TRUE) if(halkeycmd() = HAL_BUTTON_4) /判断是否按下SW4 basicRfSendPacket(LIGHT_ADDR, pTxData, APP_PAYLOAD_LENGTH);/发送数据 halIntOff(); /关闭全局中断 halIntOn(); /打开中断 /* * 函数名称

29、:appSelectMode * 功能描述:通过SW2或SW3选择模块的应用模式。 * 参 数:无 * 返 回 值:LIGHT - 接收模式 * SWITCH - 发送模式 * NONE - 不正确模式 */ static uint8 appSelectMode(void) uint8 key; GUI_ClearScreen(); /LCD清屏 GUI_PutString5_7(25,6,OURS-CC2530); /在LCD上显示相应的文字 GUI_PutString5_7(10,22,Device Mode: ); GUI_PutString5_7(10,35,SW2 - Light); GUI_PutString5_7(10,48,SW3 - Switch); LCM_Refresh(); do key = halkeycmd(); while(key = HAL_BUTTON_1); /等

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1