欢迎来到天天文库
浏览记录
ID:22281031
大小:213.40 KB
页数:6页
时间:2018-10-28
《实验5--点对点无线通讯实验》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、实验题目:实验5~点对点无线通讯实验实验时间:2015.12.2一、实验目的:使用IAR开发环境设计R程序,利用2个CC2530ZigBee模块实现点对点无线通讯。二、实验原理及程序分析:a)硬件接口原理ZigBee(CC2530)模块LED硬件接口ZigBee(CC2530)模块硬件上设计有2个LED灯,用来编程调试使用。分别连接CC2530的Pl_0、Pl_l两个10引脚。从原理图上可以看出,2个LED灯共阳极,当Pl_0、Pl_l引脚为低电平时候,LED灯点亮。b)关键函数1、射频初始化函数uint8halRflnit(void)设置输出功率Odbm,Rx设置功能描述:zigb
2、ee通信设置,自动应答有效,接收中断有效。参数描述:无返回:配置成功返回SUCCESS2、发送数据钮函数uint8basicRfSendPacket(uint16destAddr,uint8氺pPayload,uint8length)功能描述:发送包函数。入口参数:destAddr目标网络短地址pPayload发送数据也头指针,length包的大小出口参数:无返回值:成功返回SUCCESS,失败返回FAILIZD3、接收数据函数uint8basicRfReceive(Liint8氺pRxData,uint8len,intl6氺pRssi)功能描述:从接收缓存屮拷贝出最近接收到的包。参
3、数:接收数据包头指针接收包的大小返回:实际接收的数据字节数C)软件设计voidmain(void){uint8i;appState=IDLE;//初始化应用状态为空闲appStarted=FALSE;//初始化启动标志位FALSE/*初始化BasicRF*/basicRfConfig.panld=PAN_ID;//初始化个域网IDbasicRfConfig.ackRcqucst=FALSE;//不需要确认halBoardlnit();if(halRflnit()—FAILED)//初始化hal_rfHAL_ASSRRT(FALSE);/*T夬速闪烁8次ledl,led2*/for(i
4、=0;i〈16;i++){halLedToggle(l);//切换ledl的亮灭状态halLedToggle(2);//切换led2的亮火状态haliMcuWaitMs(50);//延时大约50ms}halLedSet(l);//ledl指示灯亮,指示设备己上电运行halLedClear(2);basicRfConfig.channel=OxOB;//设置信道#ifdefM0DE_SENDappTransmittcr();//发送器模式#elseappReceiverO;//接收器模式#endifHAL_ASSERT(FALSE);}voidappTransmitter(){uint
5、32burstSize=0;uint32pktsSent=0;uint8appTxPowcr;uint8n;/*初始化BasicRF*/basicRfConfig.myAddr=TX_ADDR;if(basicRfInit(&basicRfConfig)==FAILED){HAL_ASSERT(FALSE);}/*设置输出功率*///appTxPower=appSelectOutputPower();halRfSctTxPowcr(2);//HALRFTXPOWER4DBM//halRfSetTxPower(appTxPower);/*设置进行一次测试所发送的数据乜数量*///bur
6、stSize=appSelectBurstSizeO;burstSize=100000;/*BasicRF在发送数据包前关闭接收器,在发送完一个数据包后打开接收器*/basicRfReceiveOff();/*配置定吋器和TO*///n=appSelectRate();appConfigTimcr(0xC8);//haljoysticklnit();/*初始化数据毡载荷VtxPacket.seqNumber=0;for(n=0;n7、tsSent
7、tsSent
此文档下载收益归作者所有