关闭

zigbee网关 CC2530 zstack用手机控制1602显示

标签: 网关zigbee网关zigbeeZstack1602
1716人阅读 评论(0) 收藏 举报
分类:

在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

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

从小米智能网关来看ZigBee组网特点

今天小宇同学从小米智能网关开看智能家居组网方法。这里只从小米智能网关来看ZigBee组网相关技术。 年初,小米总裁林斌发布了小米智能家庭套装。其中包括多功能网关、人体红外传感器、门窗传感器和无线开关。...
  • geek_1024
  • geek_1024
  • 2015-05-08 17:19
  • 6816

Zigbee有线网络转zigbee网关API

1.1编译选项对话框的位置 1.在项目名称是右击选择options 2.找到C/C++ Complier选项卡,通过单击右侧红方框的右箭头找到Preprocessor,在Definedsymbol...
  • u010615629
  • u010615629
  • 2015-11-05 16:13
  • 1066

基于CC2530的ZigBee转以太网网关的设计与实现

ZigBee是一种低成本,低功耗的近距离无线组网通讯技术,在智能家居、智能楼宇、工业监控等领域均有广泛应用。基于ZigBee的智能家居应用,如图1所示,用户在家庭中安装一个主控中心(ZigBee网关)...
  • WIZnet2012
  • WIZnet2012
  • 2014-08-05 09:29
  • 14706

zigbee网关 CC2530 zstack用手机控制12864(支持汉字)显示

参考zigbee网关 CC2530 zstack用手机控制1602显示程序,在1602的工程基础上修改 添加12864驱动文件,首先将原先的1602的驱动移除掉,将zigbee网关 cc2530...
  • u010615629
  • u010615629
  • 2015-12-11 15:03
  • 1095

zigbee网关 CC2530 zstack用手机显示终端传来的lm75a温度传感器的值

参考zigbee网关 zstack CC2530添加温度传感器lm75a,下载相应的代码到协调器和终端,上电 参考zigbee网关 android客户端编写温度计功能,打开手机客户端 打开服务器软...
  • u010615629
  • u010615629
  • 2015-11-20 13:33
  • 604

cc2530智能家居源码 (带C语言上位机程序和手机软件)

  • 2015-01-22 22:02
  • 22.47MB
  • 下载

Arduino开源智能家居DIY,网关教程(ZigBee)

(代码请点击下方原文链接) 这篇开始,我们就真正做《网关》升级版教程了,采用arduino+zigbee哦。arduino简单易学,zigbee自组网(如果不懂c语言,直接用就好,我们已经刷好自...
  • WIZnet2012
  • WIZnet2012
  • 2014-12-02 08:58
  • 3060

ZigBee中Cluster和Attribute的概念

http://blog.sina.com.cn/s/blog_6170d88d0100to62.html 【综述】 1.引用ZigBee联盟的说法 Cluster: is a conta...
  • tanqiuwei
  • tanqiuwei
  • 2012-06-06 15:18
  • 2955

CC2530低功耗终端不停重连网络耗电问题

这几天在玩TI的CC2530,测试其ZIGBEE协议栈的低功耗模式,TI确实花了不少功夫在这套协议栈上以及支撑的操作的系统OSAL,非常好用。做了几个简单的配置即可进入低功耗模式,并且数据采集、通信均...
  • shjhuang
  • shjhuang
  • 2016-04-17 01:31
  • 2561

基于CC2530的ZigBee转以太网网关的设计与实现

ZigBee是一种低成本,低功耗的近距离无线组网通讯技术,在智能家居、智能楼宇、工业监控等领域均有广泛应用。基于ZigBee的智能家居应用,如图1所示,用户在家庭中安装一个主控中心(ZigBee网关)...
  • WIZnet2012
  • WIZnet2012
  • 2014-08-05 09:29
  • 14706
    个人资料
    • 访问:98072次
    • 积分:1573
    • 等级:
    • 排名:千里之外
    • 原创:62篇
    • 转载:1篇
    • 译文:0篇
    • 评论:11条
    文章分类
    最新评论