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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 影视站长必备资料合集

    影视站长必备资料合集苹果cms最新程序官方网盘:https://www.lanzous.com/u/magicblack推荐使用卧龙资源:http://wolongzy.net(速度快,稳定)共有资源30719+八戒资源站http://zy.bajieziyuan.com(秒播)共有资源20308+麻花资源资源站http://www.mahuazy.ne…

    2022年10月19日
    3
  • 微信公众号网页开发步骤

    微信公众号网页开发步骤在index.html中引入微信公众JDK的js文件在vue.config.js中插入configureWebpack:{externals:{wx:’wx’},即可以全局importwxfrom’wx’授权有两种方式。一种直接获取,一种弹框授权。第一步:用户同意授权,获取code第二步:通过code换取网页授权access_token第三步:刷新access_token(如果需要)第四步:拉取用户信息(需scope为snsapi_userinfo)附:检验授权..

    2022年6月5日
    59
  • chinese zodiac signs_icpc铜奖

    chinese zodiac signs_icpc铜奖输入23 14 3输出Impossible2 1 4 33 4 1 24 3 2 1题解 找规律+构造#include<bits/stdc++.h>using namespace std;const int N = 1001;int ch[N][N];int lowbit(int x){ return x & (-x);}int main(){ int n,k; int T; cin>>T; ..

    2022年8月9日
    8
  • hexdump命令_pg_dump命令

    hexdump命令_pg_dump命令有时候需要查看一些二进制文件的内容,比如二进制文件中包含的某些字符串。这个时候可以用hexdump工具看查看。常用参数:hexdump-C-nlength-sskipfile_name-C定义了导出的格式,-sskip指定了从文件头跳过多少字节,或者说是偏移量,默认是十进制。如果是0x开头,则是十六进制。-n指定了导出多少长度如果是寻找文本内容,则经常在后

    2025年12月5日
    7
  • 循环队列–C语言实现–数据结构「建议收藏」

    循环队列–C语言实现–数据结构「建议收藏」循环队列–C语言实现–数据结构目录循环队列C语言实现数据结构目录一要求二循环队列三循环队列的算法设计1建立循环队列2置空队列3入队4出队5打印队四程序1程序的结构2程序源码五程序测试1入队列2出队列3打印队列六源程序及封装软件下载下载地址格格是一枚智能专业的本科在校生很愿意和各位大佬交流如果大家有愿意交朋友的可以加格格的QQ4460

    2022年6月2日
    39
  • interupt java_Java多线程系列–“基础篇”09之 interrupt()和线程终止方式

    interupt java_Java多线程系列–“基础篇”09之 interrupt()和线程终止方式概要 1 interrupt 说明在介绍终止线程的方式之前 有必要先对 interrupt 进行了解 Interruptsth Unlessthecur whichisalway thecheckAcce

    2025年7月22日
    6

发表回复

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

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