• Zigbee Z‐STACK协议栈和TinyOS


     

    ZigBee 和 Tinyos

    关于ZigBee和TinyOS 

    ZigBee的基础是IEEE 802.15.4。但IEEE仅处理低级MAC层和物理层协议,因此Zigbee联盟扩展了IEEE,对其网络层协议和API进行了标准化,这就是Z‐STACK,Z‐STACK协议栈是TI公司研发,通过ZigBee联盟认证的免费协议栈,协议内部包括了WSN(无线传感器网络)的OS的模型,协议栈具有国际化,标准化的特点,协议栈已提供十几种应用场景,可以非常轻松的让用户开发出满足国际标准的产品。 

    TinyOS是一个空白的嵌入式操作系统(从TinyOS的安装过程就可以感知),理论上支持任何WSN(无线传感器网络)的OS架构,但到目前为止还没有一个基于TinyOS操作系统的ZigBee协议栈通过ZigBee联盟的认证,因此TinyOS的应用受到很大限制,并且就IC芯片而言,TinyOS被最多应用的是基于TI公司04年出的CC2430芯片上,对于最新的ZigBee芯片CC2530则偶见于某些高校的实验项目中。而ZigBee联盟则完全支持CC2530,即ZStack‐CC2530‐2.3.0‐1.4.0协议栈(免费) 

    ZigBee和Z‐STACK环境 

    理论知识 

    C51编程(C语言或者汇编语言) 

    单片机接口 

    单片机调试、下载和烧写过程 

    所需应用程序 

    ZStack‐CC2530‐2.3.0‐1.4.0:协议栈(免费) 

    IAR System 8051 8302:IAR EW8051编译器(许可证) 

    SmartRF Flash Programmer 1.9.0:FLASH烧写(免费) 

    SmartRF04EB仿真器驱动(win_64bit_x64、win_32bit_x86):仿真器驱动程序(安装SmartRF Flash Programmer时需要) 

    ZigBee Sensor Monitor 1.2.0:节点监视(可选) 

    RemoTI‐CC2530DK‐1.1:TI的开发组件(可选) 

    Packet Sniffer 2.13.2:抓包软件(可选) 

    Eclipse:编程工具(可选) 

    TinyOS环境(Windows OS) 

    理论知识 

    Linux环境及常用Linux命令 

    Linux下CC2430编译和烧写 

    C,nesC两种编程语言 

    C++,JAVA有一定了解 

    1/4页

    开发过程 

    将Tinyos2.x 移植到CC2430(CC2530) 编译环境的构建流程:在 windows 下建立 cygwin 平台,并构建 TinyOS的编译环境,然后将基于 TinyOS 的应用程序编译成hex文件,通过仿真器下载到CC2430(CC2530)芯片运行。 

    所需软件(注意软件版本) 

    Java JDK 1.5:JAVA开发平台 

    cygwin‐files:windows平台下的Unix环境 

    TinyOS‐2.x嵌入式操作系统 

    MSP430 Tools:CC2430 IC芯片工具包(不同的芯片需要不同的芯片包) 

    TinyOS8051wg‐0.1pre4.tgz:TinyOS支持8051芯片包 

    NesC:nesc编程工具包 

    graphviz‐1.10:可视化图形软件包 

    Giveo:烧写接口程序包 

    以下程序表明在Windows环境下调试、下载和烧写 

    IAR System 8051 8302:IAR EW8051编译器(许可证) 

    SmartRF Flash Programmer 1.9.0:FLASH烧写(免费) 

    SmartRF04EB仿真器驱动(win_64bit_x64、win_32bit_x86):仿真器驱动程序(安装SmartRF Flash Programmer时需要)。 

    安装过程 

    1. 安装Java JDK 

    安装JAVA JDK。jdk‐1_5_0‐windows‐i586.exe,安装完成后,添加或修改系统变量。 变量名:JAVA_HOME  

    变量值: 

    C:Program FilesJavajdk1.5.0 (JDK安装的路径) 

    变量名:CLASSPATH 

    变量值: 

    .;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar;;%JAVA_HOME%in;%JAVA_HOME%jrein; 

    编辑系统变量PATH,添加: 

    ;%JAVA_HOME%in; ;%JAVA_HOME%jrein; 

    测试,MS‐DOS下,执行:JAVAC,得到关于JAVA的使用帮助;执行:JAVA –version,

    2/4页

    得到当前JAVA版本。表明JAVA配置基本正常。 

    2. 安装Cgywin 

    解压cygwin‐files.zip到临时目录,执行目录中的setup,是典型的windows应用程序的安装,安装过程中需要选择安装路径、安装文件路径、安装策略、工具选择和安装内容等。安装完成后,将在桌面创建Cygwin的快捷方式,该快捷方式指向运行安装目录下的cwgwin.bat文件。运行该文件,进入Unix平台。可以尝试一些简单的Linux命令: 

    help: 帮助命令。例如 ls ‐‐help 。显示ls命令使用说明。 

    pwd:当前路径。 

    rpm –qa :查看已经安装的程序,刚安装的Cygwin是没有安装任何系统的。  

    rpm –ivh 文件名:rpm文件安装。 

    rpm –ignoreos –force或者rpm ‐ivh ‐‐force ‐‐ignoreos:忽略错误,安装rpm文件‐‐ignoreos选项是用于忽略cygwin的版本号。 

    cd:切换目录。cd /tmp 进入tmp文件。 

    cp:文件复制,cp ‐R Blink BlinkSingle 

    ls:显示文件。 

    whoami:显示登陆Windows帐号 

    uname –a: 显示版本信息 

    echo $PATH: 显示执行程式的搜索路径 

    ps ax: 显示process list ,显示目前有哪些process 执行 

    ctrl‐D或exit 或logout:结束bash 视窗 

    motelist 查询当前设备 

    3. 运行cygwin,进入Unix环境,安装MSP430开发包 

    rpm包如下: base 

    python tools 

    binutils 

    gcc 

    libc msp430tools‐base‐0.1‐20050607.cygwin.i386.rpm msp430tools‐python‐tools‐1.0‐1.cygwin.noarch.rpm msp430tools‐binutils‐2.16‐20050607.cygwin.i386.rpm msp430tools‐gcc‐3.2.3‐20050607.cygwin.i386.rpm msp430tools‐libc‐20080808‐1.cygwin.i386.rpm 

    将上述包复制到/opt/msp340/下,运行: 

    3/4页

    rpm ‐ivh ‐‐ignoreos *.rpm 

    4. 安装C51移植 

    解压TinyOS8051wg‐0.1pre4.tgz 

    tar –xvzf TinyOS8051wg‐0.1pre4.tgz 

    在/opt下生成一个目录:tinyos‐2.x‐contrib。 

    5. 安装TinyOS‐2.x 工具 

    rpm包如下 Deputy 

    tinyos‐tools 

    noarch tinyos‐deputy‐1.1‐1.cygwin.i386.rpm  tinyos‐tools‐1.3.0‐1.cygwin.i386.rpm tinyos‐2.1.0‐2.cygwin.noarch.rpm 

    将rpm下载到到/opt/tinyos‐2.x/文件夹下,运行: 

    rpm ‐ivh ‐‐ignoreos *.rpm 

    6. 安装NesC编译工具 

    rmp包如下: 

    NesC nesc‐1.3.0a‐1.cygwin.i386.rpm 

    将rpm下载到到/opt/tinyos‐2.x/文件夹下,运行: 

    rpm ‐ivh ‐‐ignoreos *.rpm 

    7. 安装graphviz‐1.10可视化图形软件包 

    在Windows环境下安装graphviz‐1.10,注意版本和使用默认的安装路径。 

    8. 测试 

    Cygwin Shell中 

    Tos‐check‐env 

    如果所有的软件包都安装正确,则显示: 

    toscheck completed without error 

    当个别软件包安装不正确时,会提示该软件包的相关出错信息,可根据需要纠正错误或忽略错误。 

  • 相关阅读:
    docker安装&镜像加速
    CentOS安装python3
    Elasticsearch相关下载地址
    fiddler抓包手机和小程序
    locust简单入门演示(一)——任务等待机制
    win10下载openssl
    XGBoost参数调优完全指南(转)
    HIVE学习
    windows定期清理指定目录文件(保留指定天数日志)
    RedisPlus是为Redis可视化管理开发的一款开源免费的桌面客户端软件
  • 原文地址:https://www.cnblogs.com/haitianjingyu/p/5631666.html
Copyright © 2020-2023  润新知