我是靠谱客的博主 曾经奇迹,最近开发中收集的这篇文章主要介绍zigbee网关 CC2530 zstack用手机控制1602显示,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在zigbee工程里面ZigbeeGateWay.h增加一个CLUSTERID

#define ZIGBEEGATEWAY_LCD_UPDATE_CLUSTERID  9

这样CLUSTERID的数量变成了9个

#define ZIGBEEGATEWAY_MAX_CLUSTERS          9

在ZigbeeGateWay.c的全局静态变量初始化也应该相应的改一下

// This list should be filled with Application specific Cluster IDs.
const cId_t ZigbeeGateWay_ClusterList[ZIGBEEGATEWAY_MAX_CLUSTERS] =
{
  ZIGBEEGATEWAY_PERIODIC_CLUSTERID,
  ZIGBEEGATEWAY_FLASH_CLUSTERID,
  ZIGBEEGATEWAY_LED_ON_CLUSTERID,
  ZIGBEEGATEWAY_LED_OFF_CLUSTERID,
  ZIGBEEGATEWAY_LED_ON_OFF_CLUSTERID,    
  ZIGBEEGATEWAY_FLASH_STOP_CLUSTERID, 
  ZIGBEEGATEWAY_SYSTEM_REBOOT_CLUSTERID,  
  ZIGBEEGATEWAY_FLASH_FOREVER_CLUSTERID,
  ZIGBEEGATEWAY_LCD_UPDATE_CLUSTERID
};

在zigbee终端工程中uip的消息处理函数void APP_uIP_Message_Process(u8_t* msg,u8_t length)里面添加

 else if(strstr((char*)tmp,"LCD")!=NULL)
        {
          if(strstr((char*)tmp,"LCDSET")!=NULL)
          {
            AF_DataRequest( &ZigbeeGateWay_State_DstAddr, &ZigbeeGateWay_epDesc,
                       ZIGBEEGATEWAY_LCD_UPDATE_CLUSTERID,
                       msg_length,
                       tmp,
                       &ZigbeeGateWay_TransID,
                       AF_DISCV_ROUTE,
                       AF_DEFAULT_RADIUS);
            return;
          }
        }

这里面已经把之前的CLUSTERID用上了


至此协调器端的修改完成。

解释:先定义一个CLUSTERID名称叫ZIGBEEGATEWAY_LCD_UPDATE_CLUSTERID,这个CLUSTERID只是一个标记,终端和协调器在发送消息时候共用的

再协调器的接收到以太网消息的时候判断content内容是否包含LCDSET字符串,如果包含,则将此消息转发给相应的终端


终端方面在rf的消息处理函数

void ZigbeeGateWay_MessageMSGCB( afIncomingMSGPacket_t *pkt )

中的switch语句中添加

case ZIGBEEGATEWAY_LCD_UPDATE_CLUSTERID:
      if(pkt->cmd.DataLength > 7)
      {
       // LCD_write_command(0x01); //清屏
        LCD_PutStr(tmp+7,pkt->cmd.DataLength-7,1);
      } 
      break;


至此,在之前工程Zigbee网关 cc2530 zstack添加1602驱动的基础上,修改完成。

打开新改好的安卓客户端zigbee网关 android客户端添加设置液晶显示功能

打开服务器软件,协调器终端重新下载,测试




成功,反应速度还可以。

更多资料请参考 http://web.nenewind.com

最后

以上就是曾经奇迹为你收集整理的zigbee网关 CC2530 zstack用手机控制1602显示的全部内容,希望文章能够帮你解决zigbee网关 CC2530 zstack用手机控制1602显示所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部