文章目录

  • 1、下载 NXP IDE 开发环境:JN-SW-4141,安装
  • 2、下载 3.0 SDK 基础包:JN-SW-4170,安装
  • 3、安装 ZigBee 插件
  • 4、下载 Zigbee 3.0 的示例代码,JN-AN-1219
  • 5、导入工程 Import
  • 6、工程应用代码说明
    • 6.1 Color Scene Controller Application Code(色彩场景控制器应用代码)
      • 6.1.1 Touchlink Preconfigured Link Key
      • 6.1.2 Common Controller Code
      • 6.1.3 Code Specific to Color Scene Controller

参考博客: https://blog.csdn.net/LV9586/article/details/98504838
参考博客: https://blog.csdn.net/code_style/article/details/85841584

JN5169 的所有资源可以 NXP官网 获取。

1、下载 NXP IDE 开发环境:JN-SW-4141,安装



2、下载 3.0 SDK 基础包:JN-SW-4170,安装

版本:JN-SW-4170 ZigBee 3.0 v1840


安装完成:

3、安装 ZigBee 插件

打开 BeyondStudio for NXP,选中 Help – Install New Software


在 Available Software 界面,单击 Add…
显示如下窗口,Name里面输入 plug-in,浏览到已安装SDK插件的文件夹,例如:D:\NXP\bstudio_nxp\sdk\JN-SW-4170\Tools\Eclipse_plugins\com.nxp.sdk.update_site

将 NXP ZBPro SDK 展开,将 Jennic RTOS Configuretion Editor 和 Jennic ZBPro Configuration Editor 前面的复选框打上勾。

完成自动下载一些文件之后,单击 Next:

出现如下界面,等待进度条跑完:

出现如下界面,单击OK继续:

单击Yes,软件自动重新启动,安装完成。

4、下载 Zigbee 3.0 的示例代码,JN-AN-1219

NXP官网 提供了控制器和开关设备模板 JN-AN-1219。(百度云链接,提取码:sl54)

在D:\NXP\bstudio_nxp 新建空目录 Application,然后解压到里面,解压以后是这样子:

5、导入工程 Import

右击 Project Explorer 空白处,选择 Import;

选中 General – Existing Projects into Workspace – Next 继续

在 Select root directory 粘贴 D:\NXP\bstudio_nxp\Application,回车,出现 Projects 框 里面的 Project,这里 只勾选 JN516x 的,取消勾选 JN517x

单击 Finish 结束,完成工程打开。
鼠标左键 选中工程,先 右键 Clean Project,然后 右键 Build Project(Ctrl+ B) 编译工程。

但是,如果路径不对,工程文件 在其他文件夹,比如:E:\NXP\Application,这里 就会出现编译错误:

NXP ZigBee 的 main 是 vAppMain,只有2个位置调用了,这就是NXP提供的真正的示例,只有2个,一个是 app_start_controller.c,一个是 app_start_switch.c,分别对应控制相关应用,还有无线开关类的应用。

很多代码都是被封装起来的,只有很少部分是开放的,NXP的整个协议栈的实现,是基于free RTOS这样的“操作系统”来实现的。

6、工程应用代码说明

6.1 Color Scene Controller Application Code(色彩场景控制器应用代码)

构建 Color Scene Controller 所需的代码保存在应用说明的目录中。

  1. 所有设备在 Common\Source 目录中的代码是公用的,例如事件类型定义和持久性数据记录标识符的定义。
  2. Common_Controller\Source 目录中的代码包含ZLO规范中定义的所有类型的控制器设备都通用的代码。 这提供了所有这些的基本功能设备,如果要开发新的控制器类型,可以重复使用。
  3. ColorSceneController\Source 中的代码包含特定于Color Scene Controller的文件,例如端点注册和构造函数,设备ID的初始化和基本群集属性。 配置ZigBee基本设备和ZigBee群集库的文件也保存在这里。
6.1.1 Touchlink Preconfigured Link Key

Touchlink预先配置的链接密钥用于在Touchlink操作传递给加入设备时对网络密钥
进行加密。 在现实世界的应用程序中应使用的密钥是秘密密钥,由ZigBee组织在成
功完成ZLO认证过程后根据应用程序提供。 本应用笔记中未提供此密钥。

该应用程序已设置为使用基本设备行为(BDB)规范中定义的证书密钥。 拥有真正的Touchlink预配置链接密钥后,需要进行以下更改才能使用此密钥而不是认证密钥。

6.1.2 Common Controller Code

以下是主要的应用程序文件,并且对于所有控制器类型的设备都是公用的。

序号 方法 描述
1 app_start_controller.c 管理芯片启动,调用初始化功能并启动主程序循环
1 app_main.c 承载主程序循环,并定义和初始化系统资源,队列,计时器等
1 zlo_controller_node.c 托管应用程序的事件处理程序和ZigBee基本设备回调。 基本设备完成所需的任何处理后,此回调将接收ZigBee基本设备事件和AF堆栈事件。 这些事件然后可以由应用程序进一步处理。 这些事件包括传递给ZCL进行处理的数据指示,以及网络管理事件(例如Joined或Failed to Join事件),以使应用程序了解网络状态。 处理应用程序事件队列以接收按钮按下事件,这些事件将传递到菜单事件处理程序。 睡眠调度和数据轮询也在此处处理。
1 app_menu_handler_DR1159.c 包含基于DR1159的硬件的菜单处理程序。 它解释按键并启动ZCL,以将适当的ZCL命令发送到网络上的设备。
1 app_menu_handler_DR1199.c 包含基于DR1199的硬件的菜单处理程序。 它解释来自GUI的按键和来自开关的按键,并启动ZCL将适当的ZCL命令发送到网络上的设备。
1 app_colour_commands.c 包含与ZCL的颜色控制群集交互以发送颜色控制命令的功能的集合。
1 app_general_commands.c 包含菜单处理程序的一组实用程序功能。
1 app_group_commands.c 包含与ZCL的“组” 群集交互以发送组控制命令的功能的集合。
1 app_identify_commands.c 包含与ZCL的标识 群集交互以发送标识控制命令的功能的集合。
1 app_level_commands.c 与ZCL的级别控制 群集交互以发送级别控制命令的功能的集合。
1 app_on_off_commands.c 包含与ZCL的On / Off集群交互以发送On / Off控制命令的功能的集合。
1 app_scenes_commands.c 包含与ZCL的Scenes群集交互以发送场景调用和保存命令的功能的集合。
1 app_zcl_controller_task.c 托管ZCL初始化和ZCL回调函数。 回调将收到的任何ZCL命令或响应的结果通知应用程序,以便应用程序可以采取适当的操作。 ZCL滴答计时器用于为ZCL提供滴答,以管理与计时器有关的事件或状态转换。
1 app_captouch_buttons.c 处理来自CapTouch驱动程序(用于DR1159远程控制单元)的按钮按下,将它们打包为应用程序事件,并将它们发布到队列中。
1 app_serial_interface.c 包含处理从UART接收的字符,管理串行接口协议,验证消息并将键事件传递到应用程序事件队列的功能。 它还管理将LED消息发送到GUI的协议。 该文件仅用于基于DR1199的硬件的构建。
1 uart.c 包含一个中断处理程序,并处理串行接口的UART管理。 该文件仅用于基于DR1199的硬件的构建。
6.1.3 Code Specific to Color Scene Controller
序号 方法 描述
1 App_ColorSceneController.c 包含特定于Color Scene Controller的代码,用于处理端点注册和构造函数以及Basic群集属性的初始化。
1 bdb_options.h 定义ZigBee基本设备使用的参数,例如主要和辅助通道掩码。
1 zcl_options.h 定义ZCL选项,例如,支持哪些集群,客户端和/或服务器以及支持的可选命令和属性。 所选集群的强制命令和属性将自动包括在内。

JN5169 ZigBee 3.0 开发环境搭建相关推荐

  1. NXP JN5189 ZigBee 3.0开发环境搭建(续)

    NXP JN5189 ZigBee 3.0开发环境搭建(续) 一.设置 SDK 安装位置 二.导入 DK6 的 SDK 三.安装 NXP Zigbee Configuration Editor 1.插 ...

  2. NXP JN5189 ZigBee 3.0开发环境搭建

    NXP JN5189 ZigBee 3.0开发环境搭建 一.下载相关软件 1.IDE 2.SDK 3.MCUXpresso Config Tools 4.GCC Arm Embedded tool c ...

  3. JN5169 NXP Zigbee 3.0开发环境搭建

    前言 网上目前资料最多的是TI的 zigbee环境,以CC2538/2530,以及最新的26xx为主,关于NXP的JN5xx zigbee几乎很少或者没有,跟别说NXP新一代的LPW芯片KW21Z了, ...

  4. udig-1.4.0 开发环境搭建

       udig-1.4.0开发环境搭建 下载需要的文件 dropins-3.7.2.zip: http://udig.refractions.net/files/downloads/extras/ ...

  5. 音视频开发-SRS 4.0开发环境搭建丨webrtc丨FFmpeg丨SRS流媒体服务器开发

    SRS 4.0开发环境搭建 视频讲解如下,点击观看: 音视频开发-SRS 4.0开发环境搭建丨webrtc丨FFmpeg丨SRS流媒体服务器开发 音视频高级开发学习学习资料链接:FFmpeg/WebR ...

  6. 小米(绿米联创)39元 无线开关破解(NXP JN5169 zigbee 3.0开发实战)

    前言 话说小米的39元无线开关,买了两个回来,想着说zigbee alliance的规范规定各家的zigbee应该都是在协议栈ZCL层面兼容的,没想到必须配小米的网关才能使用,而且网关价格不菲,就心想 ...

  7. Cocos2d-x.3.0开发环境搭建

    配置:win7 + VS2012 + Cocos2d-x.3.0 + Cocos Studio v1.4.0.1 前言:本文介绍在上述配置下进行游戏开发的环境搭建.开发语言为C++.如果读者不需要查看 ...

  8. Tigase 8.1.0开发环境搭建

    源码编译成功截图 Tigase 官网 https://tigase.net/ 源码下载地址 https://repository.tigase.org/git/tigase-server.git 小编 ...

  9. Ubuntu11 10 64Bit版上的Android 4 0 开发环境搭建

    据说Android以后新版本只支持64bit版本开发,所以搭建一个64bit系统的Android开发环境为将来的Android4.0 及更高版本 开发打好基础. 一.准备工作 1.1 硬件 PC 一台 ...

  10. 杰里695N系列(soundbox)之0.0 开发环境搭建

    查看全部文章请点击:杰里AC695N开发详解汇总(持续更新中) ==================================================================== ...

最新文章

  1. 技术 | Web前端开发(4)持续更新
  2. linux mysql设置数据库utf_Linux系统下MySQL数据库服务器字符集设置
  3. Spark和Scala当中的collect方法的用法和例子
  4. MYSQL问题解决方案:Access denied for user 'root'@'localhost' (using password:YES)
  5. vs2003 局部友元访问私有不可访问_C++ 类:重载运算符与友元
  6. linux驱动之ioctl
  7. 阿里的盔甲、未来20年发展的动力以及对未来的洞察
  8. mariadb10.2 mysql5.7_说说在MySQL5.7迁到MariaDB10.2时栽的一部分坑
  9. 1106冒泡排序语法树
  10. linux 单用户模式 挂载u盘_(原创)Linux文件系统只读Read-only file system的快速解决方法...
  11. [转载] numpy.argmin 使用
  12. 奶粉中的php是什么,婴儿配方奶粉的分类及用途
  13. BZOJ 2005 2005: [Noi2010]能量采集 | 容斥原理
  14. 软件测试文档模板 ppt,软件工程课件:软件测试用例文档模板.doc
  15. 西门子atch指令详解_轻松记住西门子PLC指令,简单明了!
  16. 信息安全 —— 密码学
  17. 【python10个小实验】2、石头、剪刀、布
  18. PHP AES加密解密
  19. 解决‘adb‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。
  20. excel中替换功能的新颖用法

热门文章

  1. Doc2Vec模型介绍及使用
  2. DDR3的容量计算方法
  3. python content函数_python函数内容
  4. 南宁刚经历1960年来5月最凉一周 降雨停歇气温将回升
  5. 【ppt课件制作】Focusky教程 | 如何设置内容全屏显示?
  6. Pr:制作片尾滚动字幕(基本图形法)
  7. 计算机二级考试谁监考,【考证】你们要的计算机二级考试攻略来了!!!
  8. 外部方式启动AndroidStudio模拟器
  9. 使用websocket实现协同编辑
  10. java定积分_记录一次定积分实现方法(java)