zigbee 用serialApp串口透传例子作为模板加温湿度测量,能帮忙解决问题的可有偿,先谢谢大家!

温湿度显示不出来,完整的工程代码如下,

部分关键代码如下,完整工程文件在下面的链接

自定义的函数!
static void SampleApp_Send_P2P_Message(void)
{
char temp[3], humidity[3], strTemp[7];

DHT11(); //获取温湿度

//将数据整合后方便发给协调器显示
osal_memcpy(strTemp, temp, 2);
osal_memcpy(&strTemp[2], " ", 1);
osal_memcpy(&strTemp[3], humidity, 3);

//获得的温湿度通过串口输出到电脑显示
HalUARTWrite(0, "T&H:", 4);
HalUARTWrite(0, (uint8 *)strTemp, 5);
HalUARTWrite(0, "\n",1);

afAddrType_t SerialApp_TxAddr;
SerialApp_TxAddr.addrMode = (afAddrMode_t)Addr16Bit;
SerialApp_TxAddr.endPoint = SERIALAPP_ENDPOINT;
SerialApp_TxAddr.addr.shortAddr = 0x0000;

  if (afStatus_SUCCESS != AF_DataRequest(&SerialApp_TxAddr,
                                         (endPointDesc_t *)&SerialApp_epDesc,
                                          SAMPLEAPP_P2P_CLUSTERID,
                                          5, (uint8 *)strTemp,
                                          &SerialApp_MsgID, 0, AF_DEFAULT_RADIUS))
  {
    osal_set_event(SerialApp_TaskID, SampleApp_Send_P2P_EVT);
  }

}

void SerialApp_ProcessMSGCmd( afIncomingMSGPacket_t *pkt )

{
case SAMPLEAPP_P2P_CLUSTERID:
      HalUARTWrite(SERIAL_APP_PORT, "T&H:", 4);       //提示接收到数据
      HalUARTWrite(SERIAL_APP_PORT, pkt->cmd.Data, pkt->cmd.DataLength); //输出接收到的数据
      HalUARTWrite(SERIAL_APP_PORT, "\n", 1);         // 回车换行
}

## 在事件处理函数中 自己添加了一个事件
在事件处理函数中 自己添加了一个事件
  if ( events & SampleApp_Send_P2P_EVT )
  {
    SampleApp_Send_P2P_Message();
    //osal_start_timerEx( SerialApp_TaskID, SampleApp_Send_P2P_EVT, 1000 );
    return ( events ^ SampleApp_Send_P2P_EVT );
  }


    在这个例子模板中都是点播发送!

    哪位前辈能帮忙指导一下,先谢过!


sinat_41880651
MackKe 链接:https://pan.baidu.com/s/1tlM7Isv_eJRKtocpSyRSYw 提取码:i8ey 复制这段内容后打开百度网盘手机App,操作更方便哦
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问