CC2530: ZigBee协议栈实践例程(一)

CC2530: ZigBee协议栈实践例程(一)1.ZigBee版本      ZigBee是ZigBee联盟建立的技术标准。第一个ZigBee协议栈规范于2004年发布,称为ZigBee2004或者ZigBee1.0;第二个ZigBee协议栈规范于2006年发布,称为ZigBee2006;第三个ZigBee协议栈规范于2007年发布,称为ZigBee2007;然后呢?现在是2018年了。。。2.Z-Stack版本    …

大家好,又见面了,我是你们的朋友全栈君。

1.ZigBee版本

          ZigBee是ZigBee联盟建立的技术标准。第一个ZigBee协议栈规范于2004年发布,称为ZigBee 2004或者ZigBee 1.0;第二个ZigBee协议栈规范于2006年发布,称为ZigBee 2006;第三个ZigBee协议栈规范于2007年发布,称为ZigBee 2007;然后呢?现在是2018年了。。。

2.Z-Stack版本

        Z-Stack是Zigbee协议栈的一个具体实现。它是TI公司提供的半开源的协议栈,其核心代码是以库的形式提供的。该协议栈支持 CC2530。Z-Stack目前有多个版本,网上使用最广泛的版本是Z-Stack 2.5.1a,本文也是使用此版本。新版本可以在官网下载,不过先要注册。网址:http://www.ti.com.cn/tool/cn/Z-Stack

        Z-Stack开发环境(IDE)使用的是IAR,不同版本的Z-Stack其IAR版本也不一样。之所以选择Z-Stack 2.5.1a而不是最新版本,不是因为资料多好开发,而是单纯地不想更新IAR(各种破解之类,有一丝丝罪恶感)。

3.使用协议栈

        首先下载与安装协议栈。所谓安装其实就是解压文件到某个路径而已。安装完成后在安装的路径里找到对应的协议栈版本文件夹,里面通常包含有Components与Projects等几个文件夹。IAR工程文件路径为\Projects\zstack\Samples\SampleApp\CC2530DB\SampleApp.eww;打开此工程使用,如下图:

CC2530: ZigBee协议栈实践例程(一)      

        简单的功能开发,一般就只需要更改ZMain与App两个文件夹里面的内容。甚至更简单地,只需要在SampleApp.c修改、添加用户内容,也基本可以了。

        需要说明的是,Zigbee设备的分为Coordinator、Router、Enddevice三种角色,在IAR工程中,点击“Workspace”下的下拉列表可以选择不同角色。也可以通过菜单“Project”->“Edit Configurations…”打开Configurations对话框,进行选择、添加、删除配置定义。

CC2530: ZigBee协议栈实践例程(一)

        当选择一种配置之后,工程名后面也会跟随改变,如下图

CC2530: ZigBee协议栈实践例程(一)

        右键工程名->选择“options…”

CC2530: ZigBee协议栈实践例程(一)

        在对话框里,像下图,按1-2-3步骤,在3里可以进行全局#define操作

CC2530: ZigBee协议栈实践例程(一)

        所以,其实选择不同的Configurations选项,差别主要在于使用了不同的全局#define,最后进行编译的时候,由于#define不同,程序编译后结果也会不一样。

        下一章进行源码分析。


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140345.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ITextPDF7

    ITextPDF7ITextPDF前言版本说明itext7-core=7.1.13相关链接:itextpdf官网地址:https://itextpdf.com/enitextpdf官方文档:https://kb.itextpdf.com/home/it7kbitextpdf官方github地址:https://github.com/itext/itext7itextpdfmaven地址:https://mvnrepository.com/artifact/com.itextpdf/itext

    2022年6月29日
    66
  • es6set和map区别_list和map的区别面试

    es6set和map区别_list和map的区别面试转自https://blog.csdn.net/terence1212/article/details/52487656set是一种关联式容器,其特性如下:set以RBTree作为底层容器所得元素的只有key没有value,value就是key不允许出现键值重复所有的元素都会被自动排序不能通过迭代器来改变set的值,因为set的值就是键map和set一样是关联式容器,它们的底层容器都是红黑树,区别…

    2022年9月7日
    0
  • 《OpenGL编程指南(原书第9版)》——2.1 着色器与OpenGL「建议收藏」

    《OpenGL编程指南(原书第9版)》——2.1 着色器与OpenGL

    2022年3月6日
    49
  • oracle 错误01017,ORA-01017:用户名密码出错 故障实例

    oracle 错误01017,ORA-01017:用户名密码出错 故障实例sysdba登录ORA-01017:用户名密码出错故障排查实例早上接到一个朋友的急call,说是数据库的sys登录不了系统叻。普通用户连接可以登录,只要是assysdba就提示ORA-01017:用户名密码出错。很显然这是一个典型的sysdba登录的问题。首先要他查看了sqlnet文件。SQLNET.AUTHENTICATION_SERVICES=(NONE)启动密码文件验证了,接着查看…

    2022年5月31日
    37
  • idea 2021.11.3激活【最新永久激活】

    (idea 2021.11.3激活)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月28日
    115
  • Java调用第三方接口示范

    Java调用第三方接口示范人工智能,零基础入门!http://www.captainbed.net/inner在项目开发中经常会遇到调用第三方接口的情况,比如说调用第三方的天气预报接口。使用流程【1】准备工作:在项目的工具包下导入HttpClientUtil这个工具类,或者也可以使用Spring框架的restTemplate来调用,上面有调用接口的方法【分为Get和Post方式的有参和无参调用】:pa…

    2022年4月26日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号