资源描述:
《物联网通信技术综合试验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、华北科技学院计算机学院综合性实验实验报告课程名称物联网通信技术实验学期2017至2018学年第一学期实验题目:自定义物联网通信系统的设计与实现 实验地点:物联网实验室 实验时间:2017-10-12 班级 学号学生姓名成绩评定:1、工作量:A(),B(),C(),D(),F()2、难易度:A(),B(),C(),D(),F()3、答辩情况:基本操作:A(),B(),C(),D(),F()代码理解:A(),B(),C(),D(),F()4、报告规范度:A(),B(),C(),D(),F()5、学习态度:A(),B
2、(),C(),D(),F()总评成绩:指导教师:吴静计算机学院制最新范本,供参考!一、实验目的1、熟悉物联网通信系统的工作原理。2、了解ZigBee协议栈的工作原理,掌握ZigBee通信子系统的设计与实现方法。3、了解QT嵌入式开发的基本原理,掌握物联网通信系统的设计与实现方法。二、设备与环境1、硬件:一台PC机、一个物联网实验开发平台2、软件:嵌入式开发软件:VMwareWorkstation虚拟机下安装Linux系统和QTCreator。PC机软件:Windows7、IAR、串口调试助手、putty超级终端、
3、SmartRFFlash烧写工具。三、实验内容1、ZigBee通信子系统的设计与实现设计包含一个传感器终端节点和一个协调器节点的ZigBee通信子系统。利用IAR分别编写两个节点的执行代码,完成传感器终端节点定时向协调器发送感知数据,协调器不断接收数据并通过串口发送给PC机,最终在串口调试助手中正确显示接收数据的功能。2、物联网通信系统的设计与实现设计包含上述ZigBee通信子系统和A8网关的物联网通信系统,协调器和A8网关之间利用串口通信。利用IAR编写协调器程序,完成将接收的感知数据继续通过串口上传给A8网关
4、的功能;利用QTCreator编写A8网关程序,完成将接收的感知数据在界面上显示的功能。四、实验结果及分析1、实验结果(1)ZigBee通信子系统的设计与实现1.在GenEricApp.c中添加#include"hal_adc.h"在GenericApp_Init函数中添加#elif(SENSOR_TYPE==0x21){//Send_datalend=0x03;HalAdcInit();}在GenericApp_SendTheMessage函数中添加#elif(SENSOR_TYPE==0x21){Send_d
5、ata[0]=HalAdcRead(HAL_ADC_CHN_AIN4,HAL_ADC_RESOLUTION_8);if(AF_DataRequest(&GenericApp_DstAddr,&GenericApp_epDesc,GENERICAPP_CLUSTERID,1,Send_data,最新范本,供参考!&GenericApp_TransID,AF_DISCV_ROUTE,AF_DEFAULT_RADIUS)==afStatus_SUCCESS){//Successfullyrequestedtobesen
6、t.//HalLedSet(HAL_LED_1,HAL_LED_MODE_TOGGLE);}else{//Erroroccurredinrequesttosend.}}(2)在Hal_adc.c文件中添加#if(HAL_ADC==TRUE)staticuint8adcRef;#endif修改HalAdcInit函数voidHalAdcInit(void){#if(HAL_ADC==TRUE)adcRef=HAL_ADC_REF_VOLT;#endif}voidGenericApp_MessageMSGCB(afI
7、ncomingMSGPacket_t*pkt){#ifdefined(SENSOR_TYPE_Coord){switch(pkt->cmd.Data[4]){case'E':{HalUARTWrite(HAL_UART_PORT_0,(uint8*)pkt->cmd.Data,9);printf("");break;}case'B':{floatt=1.0,Xacc;Xacc=(float)(pkt->cmd.Data[5]);//s0=s0+0.5*(Xacc)*t*t;最新范本,供参考!HalUARTWr
8、ite(HAL_UART_PORT_0,(uint8*)pkt->cmd.Data,9);printf("%c",(uint8)(pkt->cmd.Data[5]));printf("%c",(uint8)(pkt->cmd.Data[6]));printf("%c",(uint8)(pkt->cmd.Data[7]));//printf("%f",Xacc);print