1 Zigbee应用程序框架开发指南 - 概述

2 Zigbee应用程序框架开发指南 - 应用程序框架结构

3 Zigbee应用程序框架开发指南 - 应用程序框架目录结构

4 Zigbee应用程序框架开发指南 - 生成应用程序配置文件

5 Zigbee应用程序框架开发指南 - 应用程序框架API

6 Zigbee应用程序框架开发指南 - 应用程序框架Callback接口

7 Zigbee应用程序框架开发指南 - 时间处理

8 Zigbee应用程序框架开发指南 - 事件

9 Zigbee应用程序框架开发指南 - 属性管理

10 Zigbee应用程序框架开发指南 - 命令处理和生成

11 Zigbee应用程序框架开发指南 - 命令行接口(CLI)

12 Zigbee应用程序框架开发指南 - 调试打印接口

13 Zigbee应用程序框架开发指南 - 多网络支持

14 Zigbee应用程序框架开发指南 - 睡眠设备

15 Zigbee应用程序框架开发指南 - 应用程序框架插件

16 Zigbee应用程序框架开发指南 - 扩展ZigBee Cluster Library (ZCL)

17 Zigbee应用程序框架开发指南 - 使用Ember AppBuilder设计应用程序

18 Zigbee应用程序框架开发指南 - 应用框架V6

4 生成应用程序配置文件

Zigbee应用程序框架使用相同的预处理器指令来配置要包含和排除在框架之外的代码。除了主app头文件之外,AppBuilder还生成一个后缀为suffixendpoint_configuration.h的“endpoint configuration”头文件。

<DeviceName>_endpoint_configuration.h
生成的文件配置了Zigbee应用程序框架的静态数据结构。这允许跨endpoint共享属性元数据,并且每个endpoint都有自己的属性存储空间。<DeviceName>_endpoint_config.h文件中的#define被app/framework/util/attribute-storage.c文件用于配置应用程序的所有与属性相关的数据。

每次在AppBuilder中修改应用程序配置时,必须重新生成该文件。Silicon Labs建议不要手工编辑<DeviceName>_endpoint_config.h文件,因为文件中的每个宏定义都有一个复杂的关系。
endpoint配置文件的角色在9.1节ZCL属性配置中有更详细的描述。

<DeviceName>.h
应用程序的主头文件。它包含了所有的#defines,这些定义开启了您在框架中需要的特性。

<DeviceName>_callbacks.c
生成的存根回调文件,其中包含您选择在项目中包含的所有回调的默认实现。这就是你要实现代码的地方。您不受限于在代码中使用这个文件。如果将其他文件添加到生成的项目文件中,则可以包括这些文件,以便编译器可以找到它们。

<DeviceName>.hwconf
为您的部分生成的外设配置文件。simple Studio为修改外设配置提供了用户友好的界面。请参见AN1115: Configuring Peripherals 中Simplicity Studio为32位设备定义的更多信息。

<DeviceName>_tokens.h
如果要在支持令牌的平台的tokens (持久内存)中包含任何属性,AppBuilder将生成此文件来配置tokens存储。

<DeviceName>.ewp, eww, .xip, .xiw, .mak
为您的应用程序生成项目文件。AppBuilder只生成与您选择的平台相匹配的项目文件。这些文件可能会被加载到IDE中并进行编辑,以构建项目的其余部分。

4.1 应用程序框架文件

除了设备特定的文件之外,AppBuilder还将应用程序框架文件生成到/< device-name >目录中。

生成的文件数量取决于所支持的插件和这些插件所需的文件数量。生成的Zigbee应用程序框架文件包括但不限于以下内容:

af-structs.h: 定义Zigbee应用程序框架用于解析通过空中发送的数据的结构。

att-storage.h: 定义在Zigbee应用程序框架内的属性存储机制中使用的。

attribute-id.h: 所有属性id由Zigbee Cluster Library规范定义,用于装载到Zigbee应用程序框架中的所有配置文件。

attribute-size.h: 在ZigBee Cluster Library规范中使用的属性类型的大小(以字节为单位)

attribute-type.h: 定义用于表示在Zigbee集群库规范中使用的数据类型的空中值。

call-command-handler.c: 命令处理代码为所有非通用命令收到的空中值。这生成的代码封送Cluster命令从它们的over the air格式发送到回调接口。如果没有为它们实现回调,它还会处理命令。

call-command-handler.h: call-command-handler c代码的头文件。这个文件为call-command-handler.c中实现的所有函数提供了定义。

callback-stub.c: 为Zigbee应用程序框架实现的自定义回调提供存根。只有当客户的应用程序没有单独定义回调存根时,才会编译回调存根。

callback.h: 为所有可能在Zigbee应用程序框架或用户应用程序中实现的回调提供定义。定义了整个回调接口,它是Zigbee应用程序框架在与用户应用程序通信时使用的主接口。

znet-cli.c: 这个文件提供了为命令行接口生成的所有处理程序。

znet-cli.h: 此文件仅由文档引擎doxygen用于文档通用应用程序框架cli命令,它没有其他目的。

client-command-macro.h: 宏,作为Zigbee应用程序框架接口的一部分,方便地用于填充将通过空中发送的包缓冲区。用户的应用程序配置中配置的Zigbee Cluster Library支持的每个命令在这里用一个宏表示,该宏将对Zigbee应用程序框架进行适当的调用,以填充包缓冲区,以便通过空中发送该命令。

cluster-id.h: 为从ZigBee Cluster Library加载到ZigBee应用程序框架的所有Cluster id提供了定义。

command-id.h: 为从ZigBee Cluster Library加载到Ember应用程序框架中的所有command id提供了定义。

debug-printing-test.h: 定义用于在ZigBee应用程序框架中打开调试打印。

debug-printing.h: 宏用于调试ZigBee应用程序框架内的打印。

enums.h: 为ZigBee应用程序框架中使用的所有与ZigBee Cluster Library相关的枚举提供定义。

print-cluster.h: 定义用于在ZigBee应用程序框架的每个Cluster的基础上打开打印。

stack-handler-stub.c: 所有可在ZigBee应用程序框架中重写的stack处理程序的存根。

4. Zigbee应用程序框架开发指南 - 生成应用程序配置文件相关推荐

  1. 9. Zigbee应用程序框架开发指南 - 属性管理

    1 Zigbee应用程序框架开发指南 - 概述 2 Zigbee应用程序框架开发指南 - 应用程序框架结构 3 Zigbee应用程序框架开发指南 - 应用程序框架目录结构 4 Zigbee应用程序框架 ...

  2. 基于ASP.NET MVC框架开发Web论坛应用程序

    我想通过本系列文章从头到尾构建一个完整的ASP.NET MVC论坛应用程序,最终的目的是探讨和推动使用ASP.NET MVC框架构建应用程序的最佳实践. 1. 简介 在本篇中,我想先从全局方面介绍一下 ...

  3. Python开发指南[1]之程序员计时小时钟(附源码)

    Python开发指南[1]之程序员计时小时钟 程序之美 前言 主体 运行效果 核心代码 逻辑分析 结束语 程序之美 前言 Python作为一门编程语言,这门语言的魅力和影响力已经远超C#.C++等编程 ...

  4. 王者级微信小程序开发实战教学 从零到高手搭建微信小程序框架开发教程

    王者级微信小程序开发实战教学 从零到高手搭建微信小程序框架开发教程 小程序进阶 王者级微信小程序开发实战教学课程,讲师手把手对同学们进行微信小程序开发的进阶实战,从零开始搭建,从本地到云端开始系统化的 ...

  5. 基于微信小程序云开发的投票小程序源码,图文投票微信小程序源码

    功能介绍 投票活动十分火,商家,企业,机构偶尔都会来一场投票活动评选,本小程序支持图文投票,简单方便.随时随地完成投票,可以方便设定投票模式(按天按全程,投票数限定). 本代码前后端完整代码包投票列表 ...

  6. 公司企业小程序怎么开发自己的小程序

    随着移动互联网的快速发展,小程序已经成为企业展示自身产品和服务的重要渠道.那么公司企业小程序怎么开发自己的小程序呢?本文将为大家详细介绍小程序开发的步骤. 第一步:明确需求 开发小程序前,需要先明确自 ...

  7. 微信小程序怎么开发自己的小程序?

    现在很多人都想要开发自己的微信小程序,却不知道通过什么方式进行开发,那么关于微信小程序怎么开发自己的小程序,下面给大家讲解一下. 微信小程序怎么开发自己的小程序有哪些方式?可大致分为: 1.自己开发, ...

  8. 微信小程序云开发成绩查询小程序的制作过程。

    微信小程序云开发成绩查询小程序的制作过程. 如果觉得我讲的好可以点个关注. 明确自己的目的,到底要做一个怎么样的小程序. 我先上效果图: 确定后就可以开始自己布局.主要是用css 1.先看首页,首页主 ...

  9. 开发跨端微信小程序框架选型指南

    多端框架uni-app和Taro选型对比 一. 背景 小程序原生开发有不少槽点: 1.原生wxml开发对Node.预编译器.webpack支持不好,影响开发效率和工程构建流程.所以大公司都会用框架开发 ...

  10. FleaPHP 开发指南 - 5. 应用程序设置

    FleaPHP 是一个具有高度灵活性的框架.开发者可以用不同的设置来调整 FleaPHP 的工作方式.这些设置统一保存在名为"应用程序设置"的数据源中. 实际上,除了 FleaPH ...

最新文章

  1. python使用matplotlib可视化线图(line plot)、自定义可视化图像的四个边框的色彩、可以分别设置矩形每一条边的色彩(change the axis color)
  2. UIBezierPath 的使用介绍
  3. Java 加密 AES 对称加密算法
  4. Python爬虫-HTMLSession的使用
  5. 设置vmware vsphere web client_Arduino+前端高级应用-通过WEB网页控制Arduino开发板上的LED灯...
  6. C++类静态成员与类静态成员函数
  7. 前端进阶试题-CSS篇
  8. 2.15.PHP7.1 狐教程-【PHP 抽象类、抽象方法】
  9. Java实现端口扫描器
  10. 在写移动端页面的布局的时候是按照iphone6的尺寸写的,在iphone5中因为宽度的问题导致样式错乱
  11. iOS NSLayoutConstraint priority
  12. 浅谈JavaScript面向对象编程(转自酷勤网)
  13. 药品市场分析怎么写?(总结归纳了20份药品报告的经验分享)
  14. App首次进入引导界面
  15. 股市学习稳扎稳打(四)当宏观经济出现复苏时,不同的行业分别以什么顺序进行轮动上涨
  16. seo优化notfallow有二种下拉菜单百度搜索引擎
  17. Samba之打印机共享配置nbsp;(CUPS…
  18. python操作mysql_python操作MySQL
  19. java计算机毕业设计公立医院绩效考核系统(附源码、数据库)
  20. 当前应用计算机解决实际问题的能力主要体现,当前,应用计算机解决实际问题的能力主要体现为能够熟练使用OFFICE和网页制作工具操作计算机...

热门文章

  1. 警惕!关于5G的最新骗局!
  2. OpenShift免费空间申请使用教程
  3. 分享个永久免费的虚拟主机|PHP空间商
  4. Verilog求相反数
  5. Python——枚举(enum)
  6. java else 语法错误_在else处语法错误,删除此令牌
  7. [随文杂记][转]魔兽争霸vs星际争霸vs红色警戒
  8. Tupper自我指涉公式:图象里竟然包含式子本身
  9. Android新浪微博实训报告,完成一份新浪微博目标用户分析报告
  10. 带蓝色的紫罗兰色——三色配色篇