内容发布更新时间 : 2024/11/8 3:00:00星期一 下面是文章的全部内容请认真阅读。
试验六 zstack无线通信实验(2)
注意:本次实验需完成实验报告,第10周周五前上传至小课老师的作业上传目录
一、 试验目的
1. 掌握zstack自带led驱动的移植方法; 2. 掌握zstack的广播编程; 3. 掌握zstack的组播编程。 二、实验任务
1、构建一个zigbee网络:1个协调器、3个终端节点,该网络完成如下功能:协
调器通过串口接收数据并通过广播的形式发送给3个终端节点,终端节点如果接收到数字1,则点亮其上的发光二极管D1,否则熄灭D1;
2、构建一个zigbee网络:1个协调器、3个终端节点,该网络完成如下功能:协调
器通过串口接收数据并通过组播的形式发送给2个终端节点,终端节点如果接收到数字1,则点亮其上的发光二极管D1,否则熄灭D1; 问题:
(1)请选择你是用哪种途径完成了本次实验( A )
A、完全阅读老师提供的代码并运行最终得到了实验结果; B、参照老师的代码得到了实验结果; C、自己独立完成得到了实验结果。
(2)简单描述实现任务的原理;
构建一个zigbee网络:1个协调器、3个终端节点,协调器通过串口接收数据并通过广播的形式发送给终端节点,以完成实验代码需要的变化。 (3)贴出你认为的你所写的最有价值的求解问题的关键代码(要有注释); //初始化串口、打开串口 halUARTCfg_t uartCfg;
uartCfg.baudRate=HAL_UART_BR_115200; uartCfg.flowControl=NULL;
uartCfg.callBackFunc=UartReceiveCB;
if(HalUARTOpen(HAL_UART_PORT,&uartCfg)==ZSuccess) {
HalUARTWrite(HAL_UART_PORT,buffer,osal_strlen(buffer)); }
dstAddr.addr.shortAddr=0xffff;//全网广播 dstAddr.endPoint=MYTASK_ENDPOINT_ID; //初始化端点、注册端点
myTaskEndPoint.endPoint=MYTASK_ENDPOINT_ID; myTaskEndPoint.latencyReq=noLatencyReqs; myTaskEndPoint.simpleDesc=&myTaskSimpleDesc; myTaskEndPoint.task_id=&myTaskId;
(4)任务完成的运行截图;
(5)本次实验所遇到的问题、解决方法、心得。
总结:由于烧写器的问题,导致烧写代码不成功,回顾大课知识,补充了一
部分代码,剩下的一部分经过老师的讲解后,完成了补充。学习过程要不停去寻找答案才能懂得更多知识。