收藏 分享(赏)

TinyOS在windows中安装步骤.doc

上传人:HR专家 文档编号:7296921 上传时间:2019-05-14 格式:DOC 页数:3 大小:21.20KB
下载 相关 举报
TinyOS在windows中安装步骤.doc_第1页
第1页 / 共3页
TinyOS在windows中安装步骤.doc_第2页
第2页 / 共3页
TinyOS在windows中安装步骤.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

1、Comment c1: 或者参考http:/ c2: 软件包先下载到cygwin的某一个目录下,然后在终端安装。安装也可用如下命令:Rpm ivh ignoreos *.rpm1. TinyOS1.1 概要TinyOS应用程序都是有一个或多个组件链接起来,从而形成一个完整的可执行程序。组件中实现了功能接口,同时也能使用其它组件提供的接口。在接口定义中可以申明命令函数和事件函数,命令函数由接口提供者实现,事件函数由接口使用者实现。对于一个组件而言,如果它要使用某个组件接口中的命令,它必须实现这个接口的事件。一个组件可以使用或提供多个接口以及同一个接口的多个实例。组件有两种类型:模块(module

2、)和配置(configuration)。模块提供应用程序代码,实现一个或多个接口;配置则是用来将其它组件装配起来,将各个组件所使用的接口与其它组件提供的接口连接在一起,进行导通。每个应用程序都由一个顶级配置所描述,其内容就是将该应用程序所用到的所有组件导通起来,形成一个有机整体。TinyOS应用程序必须包含 Main 组件,Main 组件是首先被执行的一个组件。确切的说,在 TinyOS 中执行的第一个命令是 Main.StdControl.init(),接下来是 Main.StdControl.start()。Main组件完成以下功能:芯片初始化,外围电路初始化,操作系统调度数据结构初始化,

3、子组件初始化,启动子组件件,进入调度死循环从而将控制权交给操作系统,一旦没有任务可以调度就进入休眠状态以降低系统功耗。TinyOS的调度系统是 TinyOS系统的核心部分。它采用先进先出的排队策略,任务之间不可以抢占,但是中断可以抢占任务,中断是否可以抢占中断则是应用程序自己控制的。即如果中断处理程序进入中断以后执行了关中断的操作,那么这个中断将是不可抢占的,否则在服务的过程中就有可能被抢占掉。另外还要注意,在中断服务程序里面是可以创建任务的。1.2 在 Cygwin下的 安装在/etc/bash.bashrc文件中增加以下内容:export TOSROOT=/opt/tinyos-2.xex

4、port TOSDIR=$TOSROOT/tosexport CLASSPATH=C:cygwinopttinyos-2.xsupportsdkjavatinyos.jarexport CLASSPATH=“$CLASSPATH;.“export MAKERULES=$TOSROOT/support/make/Makerulesexport PATH=/opt/msp430/bin:/opt/jflashmm:$PATH安装以下软件包:rpm -ivh -ignoreos c:/downloads/avr-binutils-2.17tinyos-3.cygwin.i386.rpmrpm -iv

5、h -ignoreos c:/downloads/avr-gcc-4.1.2-1.cygwin.i386.rpmrpm -ivh -ignoreos c:/downloads/avr-libc-1.4.7-1.cygwin.i386.rpmrpm -ivh -ignoreos c:/downloads/avarice-2.4-1.cygwin.i386.rpmrpm -ivh -ignoreos c:/downloads/avr-insight-6.3-1.cygwin.i386.rpmComment c3: 这一句一直出现conflict,后来改为 Uvh貌似对了Comment c4: Uv

6、hrpm -ivh -force -nodeps c:/downloads/avrdude-tinyos-5.6cvs-1.cygwin.i386.rpmrpm -ivh -ignoreos c:/downloads/nesc-1.3.1-1.cygwin.i386.rpmrpm -ivh -ignoreos c:/downloads/tinyos-deputy-1.1-1.cygwin.i386.rpmrpm -ivh -ignoreos c:/downloads/tinyos-tools-1.4.0-3.cygwin.i386.rpmrpm -ivh -ignoreos c:/downlo

7、ads/tinyos-2.1.1-3.cygwin.noarch.rpmrpm -ivh -ignoreos c:/downloads/msp430tools-base-0.1-20050607.cygwin.i386.rpm rpm -ivh -ignoreos c:/downloads/msp430tools-python-tools-1.0-1.cygwin.noarch.rpm rpm -ivh -ignoreos c:/downloads/msp430tools-binutils-2.16-20050607.cygwin.i386.rpm rpm -ivh -ignoreos c:/

8、downloads/msp430tools-gcc-3.2.3-20050607.cygwin.i386.rpm rpm -ivh -ignoreos c:/downloads/msp430tools-libc-20080808-1.cygwin.i386.rpm rpm -ivh -ignoreos c:/downloads/xscale-elf-binutils-2.15-1.cygwin.i386.rpmrpm -ivh -ignoreos c:/downloads/xscale-elf-gcc-3.4.3-1.cygwin.i386.rpmrpm -ivh -ignoreos c:/d

9、ownloads/xscale-elf-newlib-1.11.0tinyos-1.cygwin.i386.rpm修改执行/usr/bin/tos-install-jni 文件:change: “for lib in $tinyoslibdir/*-$bits.dll“ to “for lib in $tinyoslibdir/*.dll“/usr/bin/tos-install-jni修改/usr/bin/python2.5-config文件:change: “/tmp/python.6884/usr/bin/python2.5.exe“ to “/usr/bin/python2.5.exe

10、“编译 Blink测试是否安装成功:cd /opt/tinyos-2.x/apps/Blinkmake telosbmake mica2make micazmake micaz sim1.3 Blink程序结构Blink.nc文件configuration Blink implementation components Main, BlinkM, SingleTimer, LedsC;Main.StdControl - SingleTimer.StdControl;Main.StdControl - BlinkM.StdControl;BlinkM.Timer - SingleTimer.Ti

11、mer;BlinkM.Leds - LedsC;BlinkM.nc文件module BlinkM provides interface StdControl;uses interface Timer;interface Leds;因为它提供了 StdControl 接口,所以它必须实现 StdControl.init(),StdControl.start()及StdControl.stop()等命令,因为它使用了 Timer 接口,所以它必须实现 Timer.fired()事件implementation command result_t StdControl.init() call Leds.init(); return SUCCESS;command result_t StdControl.start() / Start a repeating timer that fires every 1000msreturn call Timer.start(TIMER_REPEAT, 1000);command result_t StdControl.stop() return call Timer.stop();event result_t Timer.fired()call Leds.redToggle();return SUCCESS;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报