CC2530无线通信丢包率测试Word下载.docx
- 文档编号:22932090
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:21
- 大小:61.23KB
CC2530无线通信丢包率测试Word下载.docx
《CC2530无线通信丢包率测试Word下载.docx》由会员分享,可在线阅读,更多相关《CC2530无线通信丢包率测试Word下载.docx(21页珍藏版)》请在冰豆网上搜索。
三、详细设计6
3.1CC2530介绍6
四、设计总结9
五、附录10
六、参考文献16
七、致谢17
前言
我国的无线通信产业通过短短几十年的发展,已经发展到第三代和第四代移动通信技术,多种无线通信技术都得到了广泛的应用是利用电磁波信号可以在自由空间中传播的特性进行信息交换的一种通信方式,由于无线通信技术具有成本廉价、建设工程周期短、适应性好、扩展性好、设备维护上更容易实现等诸多优点,所以近些年来是信息通信领域中,发展最快、应用最广的通信技术。
本课设设计一个简单无线通信的应用,该设计可以用来测试不同环境或不同通信距离的误码率以及信号的强弱。
完成本实验需要两个模块,一个设置为发送模块,一个设置为接收模块;
其中发送模块主要是通过板上按键设置不同的发送参数,然后发送数据包。
接收模块接收发送模块的数据包,然后计算误码率和信号的强度。
一、基本原理
1.1无线通信概述
通信按传输媒体分为无线通信和有线通信两大类。
移动通信、卫星、微波、无线接入等都是无线通信,无线通信信号以电磁波的形式通过空间传送,具有信道不可预见性大,使用灵活、方便等特点。
无线通信是通过无线信道来实现的,所以无线信道质量的好坏直接影响通信的质量。
新一代的个人通信对通信时的传输速率和误码率有很高的要求,因此对于无线信道的研究有助于提高传输速率并降低误码率。
无线信道是一个充满复杂干扰的信道。
由环境中的各种障碍物所引起的信号多径传播是其主要特点之一。
同一发射机发射的电磁波向各个方向辐射,不同的波遇到不同的障碍物发生反射折射以及散射衍射等作用会使得波束到达接收机时的时间、幅度和相位均发生延迟与畸变,比如若发射一个窄脉冲经过无线信道后将在接收端收到一连串幅度和相位均不同的脉冲串,如果在这个期间内连续发射多个脉冲,将在接收端产生混叠发生误码的几率大大提高。
另一个特点是多普勒效应。
无线通信中的终端基本处于移动的状态,这就导致了电磁波的多普勒效应。
由于到达接收机的杂散波的方向相位均不同所引起的多普勒效应也不尽相同,更加恶化了接收信号。
1.2CC2530配置
本设计主要是在学会了配置CC2530RF功能基础上,一个简单无线通信的应用,该设计可以用来测试不同环境或不同通信距离的误码率以及信号的强弱。
完成本设计需要两个模块,一个设置为发送模块,一个设置为接收模块;
其中按键功能分配如下:
SW1---开始测试(进入功能选择菜单)
SW2---设置功能加
SW3---设置功能减
SW4---确定按钮
在每完成一个参数设置或选择,都是通过SW4来确定,然后进入下一个参数设置,其中发送模式下的发送开始和停止也是通过SW4控制的。
在测试中,接收模块可以通过SW4来复位测试结果。
发送模块需设置的参数有:
1、信道选择,802.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和50/S四种速度。
通过SW2和SW3来选择。
接收模块只需要设置和发送模块相同的信道即可。
接收模块测量时显示的信息有:
1.数据包丢失率(显示为x/1000)。
2.信号强度(RSSI)。
3.收到的数据包个数。
其中LED1为工作指示灯,当工作不正常时,LED2将为亮状态。
1.3丢包率的测试与分析
在我们网络上形成的数据包通过途径传输到另一个数据库上面,一般通过网络传输的过程中会因为一些原因比如距离过大而产生小部分数据包被丢失,而大部分数据包被成功传输到终端数据库上。
这样就形成了一个网络丢包的过程。
而其中丢包的大小和传输数据包的大小就是网络丢包率。
比如工厂在A地买了一车货,然后运送到B地,其中因为搬运工搬运和其他原因造成这批货和在A地的所测量的数值要少一些,这个过程就是被丢失的货物,也就是网络中网络丢包,而丢失的货物和货物的总量的比值就是网络丢包率。
通常这些只是磨损消耗,属于很正常的。
网络丢包率怎样解决呢?
主要有以下几个方面。
1、物理线路故障
如果是物理线路故障所造成网络丢包现象,则说明故障是由线路供应商提供的线路引起的,需要与线路供应商联系尽快解决问题。
联系你的服务商来解决网络丢包很严重的情况。
2、设备故障
设备方面主要包括软件设置不当、网络设备接口及光纤收发器故障造成的。
这种情况会导致交换机端口处于死机状态。
那么可以将你的光纤模块更换掉,换一条新的模块替换掉。
3、网络被堵塞、拥堵
当网络不给力的时候,在通过网络传输数据,就会将网络丢包更多,一般是路由器被占用大量资源造成的。
解决方法就是这时应该showprocesscpu和showprocessmem,一般情况下发现IPinputprocess占用过多的资源。
接下来可以检查fastswitching在大流量外出端口是否被禁用,如果是,则需要重新使用。
用showinterfaces和showinterfacesswitching命令识别大量包进出的端口。
一旦确认进入端口后,打开IPaccountingontheoutgoinginterface看其特征,如果是攻击,源地址会不断变化但是目的地址不变,可以用命令“accesslist”暂时解决此类问题。
4、路由错误
网络中的路由器的路径错误也是会导致数据包不能正常传输到主机数据库上这种情况属于正常状况,它所丢失的数据也是很小的。
所以用户可以忽略这些数据丢包,而且这也是避免不了的。
二、系统分析
2.1程序流程图
2.2具体步骤
1.给智能主板供电(USB外接电源或2节干电池)。
2.将两个无线节点模块分别插入到两个带LCD的智能主板的相应位置。
3、将2.4G的天线安装在无线节点模块上。
4、将CC2530仿真器的一端通过USB线(A型转B型)连接到PC机,另一端通过10Pin下载线连接到智能主板的CC2530JTAG口(J203)。
5、将智能主板上电源开关拨至开位置。
按下仿真器上的按钮,仿真器上的指示灯为绿色时,表示连接成功。
6、使用IAR7.51打开“…\OURS_CC2530LIB\lib12(PERTest)\IAR_files”下的PERTest.eww文件,下载程序。
7、关掉智能主板上电源,拔下仿真器,按4、5步骤对另一个模块下载程序。
8、打开两个模块的电源,当LED1处于亮时,按下SW1进入下级菜单,按SW2和SW3对通信信道进行选择(两个模块必须设置相同的信道)。
选定后,按SW4进入下一个设置。
9、一个模块按下SW3设置为接收模式,按下SW4确定。
接收模块设置完成(此时接收模块已经处于接收待命状态)。
10、另一个模块按下SW2设置为发送模式,按下SW4确定进入下一个设置。
11、使用SW2和SW3对发送模块发射功率选择,选定后,按SW4进入下一个设置。
12、使用SW2和SW3对发送模块发射数据包数量选择,选定后,按SW4进入下一个设置。
13、使用SW2和SW3对发送模块发射速度选择,选定后,按SW4进入发送准备状态。
14、将发送和接收模块安放在不同的地方,按下发送模块的SW4开始发送数据(再次按下将停止发送)。
观察接收模块的测试结果(此时按下接收模块的SW4,将会清除测试结果)。
15、改变两个模块的位置,再次测量,观察测量结果。
注:
如果需要重新设置模块的收发功能,按复位按键。
三、详细设计
3.1CC2530介绍
3.1.1CC2530概述
CC2530是用于2.4-GHz
IEEE802.15.4、ZigBee和RF4CE应用的一个真正的片上系统(SoC)解决方案。
它能够以非常低的总的材料成本建立强大的网络节点。
CC2530结合了领先的RF收发器的优良性能,业界标准的增强型8051CPU,系统内可编程闪存,8-KBRAM和许多其他强大的功能。
CC2530有四种不同的闪存版本:
CC2530F32/64/128/256,分别具有32/64/128/256KB的闪存。
CC2530具有不同的运行模式,使得它尤其适应超低功耗要求的系统。
运行模式之间的转换时间短进一步确保了低能源消耗。
CC2530F256结合了德州仪器的业界领先的黄金单元ZigBee
协议栈(Z-Stack™),提供了一个强大和完整的ZigBee解决方案。
CC2530F64结合了德州仪器的黄金单元RemoTI,更好地提供了一个强大和完整的ZigBeeRF4CE
远程控制解决方案。
3.1.2引脚描述
引脚名称引脚引脚类型描述
AVDD128电源(模拟)2-V–3.6-V模拟电源连接
AVDD227电源(模拟)2-V–3.6-V模拟电源连接
AVDD324电源(模拟)2-V–3.6-V模拟电源连接
AVDD429电源(模拟)2-V–3.6-V模拟电源连接
AVDD521电源(模拟)2-V–3.6-V模拟电源连接
AVDD631电源(模拟)2-V–3.6-V模拟电源连接
DCOUPL40电源(数字)1.8V数字电源去耦。
不使用外部电路供应。
DVDD139电源(数字)2-V–3.6-V数字电源连接
DVDD210电源(数字)2-V–3.6-V数字电源连接
GND-接地接地衬垫必须连接到一个坚固的接地面。
GND1,2,3,4未使用的引脚
连接到GND
P0_019数字I/O端口0.0
P0_118数字I/O端口0.1
P0_217数字I/O端口0.2
P0_316数字I/O端口0.3
P0_415数字I/O端口0.4
P0_514数字I/O端口0.5
P0_613数字I/O端口0.6
P0_712数字I/O端口0.7
P1_011数字I/O端口1.0-20-mA驱动能力
P1_19数字I/O端口1.1-20-mA驱动能力
P1_28数字I/O端口1.2
P1_37数字I/O端口1.3
P1_46数字I/O端口1.4
P1_55数字I/O端口1.5
P1_638数字I/O端口1.6
P1_737数字I/O端口1.7
P2_036数字I/O端口2.0
P2_135数字I/O端口2.1
P2_234数字I/O端口2.2
P2_333数字I/O模拟端口2.3/32.768kHzXOSC
P2_432数字I/O模拟端口2.4/32.768kHzXOSC
RBIAS30模拟I/O参考电流的外部精密偏置电阻
RESET_N20数字输入复位,活动到低电平
RF_N26RFI/ORX期间负RF输入信号到LNA
RF_P25RFI/ORX期间正RF输入信号到LNA
XOSC_Q122模拟I/O32-MHz晶振引脚1或外部时钟输入
XOSC_Q223模拟I/O32-MHz晶振引脚2
3.1.3功能介绍
·
RF/布局
–适应2.4-GHzIEEE802.15.4的RF收发器
–极高的接收灵敏度和抗干扰性能
–可编程的输出功率高达4.5dBm
–只需极少的外接元件
–只需一个晶振,即可满足网状网络系统需要
–6-mm×
6-mm的QFN40
封装
–适合系统配置符合世界范围的无线电频率法规:
ETSIEN300328和EN300440(欧洲),FCCCFR47第15部分(美国)和ARIBSTD-T-66(日本)
低功耗
–主动模式RX(CPU空闲):
24mA
–主动模式TX在1dBm(CPU空闲):
29mA
–供电模式1(4μs唤醒):
0.2mA
–供电模式2(睡眠定时器运行):
1μA
–供电模式3(外部中断):
0.4μA
–宽电源电压范围(2V–3.6V)
微控制器
–优良的性能和具有代码预取功能的低功耗8051微控制器内核
–32-、64-或128-KB的系统内可编程闪存
–8-KBRAM,具备在各种供电方式下的数据保持能力
–支持硬件调试
外设
–强大的5通道DMA
–IEEE802.5.4MAC
定时器,通用定时器(一个16位定时器,一个8位定时器)
–IR发生电路
–具有捕获功能的32-kHz睡眠定时器
–硬件支持CSMA/CA
–支持精确的数字化RSSI/LQI
–电池监视器和温度传感器
–具有8路输入和可配置分辨率的12位ADC
–AES安全协处理器
–2个支持多种串行通信协议的强大USART
–21个通用I/O
引脚(19×
4mA,2×
20mA)
–看门狗定时器
四、设计总结
本学期为期三周的嵌入式课程设计在不知不觉中结束了,虽说这次课程设计时间不是很长,但是感觉自己收获颇丰,不仅学习到了一些新知识,回顾了以前的一些快要遗忘的知识点,而且使自己的学习目标更加明确,学习方法更加完善,也体会到软件开发的趣味,更加清楚地认识到了自己在软件开发及学习上的一些不足之处。
下面就来详细写一下我关于此次课程设计的总结:
此次课程设计给老师选择项目是在Linux下用C语言开发一个程序。
项目的实施方式是团队分组合作,共同完成,虽说一些些技术我们在课堂上也曾学习过,但是大多停留在理论学习上,实际开发很少,而这次课程设计给了我们一个很好的边学习边实践的机会,对我们深入学习这些技术有很大帮助,深刻体会到了这些技术的实用性。
每当自己成功调试一段代码或者通过自己的努力克服一个技术困难,都颇有收获感。
这次实训让我们体验了软件开发的全过程,发现自己的不足,了解了当前流行技术的软件开发,增加了一定的项目开发经验,增强了一定的就业竞争力。
五、附录
#include"
hal_board.h"
hal_int.h"
hal_mcu.h"
hal_rf.h"
basic_rf.h"
LCD.h"
#defineRF_CHANNEL25//2.4GHzRF使用信道25
#definePAN_ID0x2011//通信PANID
#defineSWITCH_ADDR0x2530//开关模块地址
#defineLIGHT_ADDR0xBEEF//灯模块地址
#defineAPP_PAYLOAD_LENGTH1//命令长度
#defineLIGHT_TOGGLE_CMD0//命令数据
//应用状态
#defineIDLE0
#defineSEND_CMD1
//应用角色
#defineNONE0
#defineSWITCH1
#defineLIGHT2
#defineAPP_MODES2
//按键
#defineHAL_BUTTON_11
#defineHAL_BUTTON_22
#defineHAL_BUTTON_33
#defineHAL_BUTTON_44
#defineHAL_BUTTON_55
#defineHAL_BUTTON_66
staticuint8pTxData[APP_PAYLOAD_LENGTH];
//发送数据数组164
staticuint8pRxData[APP_PAYLOAD_LENGTH];
//接收数据数组
staticbasicRfCfg_tbasicRfConfig;
//RF初始化结构体
externvoidhalboardinit(void);
//硬件初始化函数
externvoidctrPCA9554FLASHLED(uint8led);
//IIC灯控制函数
externvoidctrPCA9554LED(uint8led,uint8operation);
externuint8halkeycmd(void);
//获取按键值函数
#ifdefSECURITY_CCM//安全密钥
staticuint8key[]={
0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,
0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,
};
#endif
staticvoidappLight();
//灯应用处理函数
staticvoidappSwitch();
//开关应用处理函数
staticuint8appSelectMode(void);
//应用功能选择函数
/**************************************************************************************************
*函数名称:
appLight
*功能描述:
接收模式应用函数,初始化RF一些参数,接收另一个模块发送的控制命令,然后控制相应的LED灯
*参数:
无
*返回值:
**************************************************************************************************/
staticvoidappLight()
{
basicRfConfig.myAddr=LIGHT_ADDR;
//设置接收模块的地址
if(basicRfInit(&
basicRfConfig)==FAILED)//RF初始化
ctrPCA9554FLASHLED(5);
//RF初始化不成功,则所有的LED5闪烁
}
basicRfReceiveOn();
//打开接收功能
//Mainloop
while(TRUE)
while(!
basicRfPacketIsReady());
//准备接收数据
if(basicRfReceive(pRxData,APP_PAYLOAD_LENGTH,NULL)>
0)//接收数据
if(pRxData[0]==LIGHT_TOGGLE_CMD)//判断命令是否正确
ctrPCA9554FLASHLED
(1);
//关闭或打开LED1
appSwitch
发送模式应用函数,初始化发送模式RF,通过按下SW4向另一个模块发送控制命令。
staticvoidappSwitch()
pTxData[0]=LIGHT_TOGGLE_CMD;
//向发送数据中写入命令
basicRfConfig.myAddr=SWITCH_ADDR;
//设置发送模块的地址
basicRfReceiveOff();
//关闭接收功能
if(halkeycmd()==HAL_BUTTON_4)//判断是否按下SW4
basicRfSendPacket(LIGHT_ADDR,pTxData,APP_PAYLOAD_LENGTH);
//发送数据
halIntOff();
//关闭全局中断
halIntOn();
//打开中断
/**************************************************************************
appSelectMode
通过SW2或SW3选择模块的应用模式。
LIGHT--接收模式
*SWITCH--发送模式
*NONE--不正确模式
**********************************************************************/
staticuint8appSelectMode(void)
uint8key;
GUI
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CC2530 无线通信 丢包率 测试