tinyos编译环境搭建(windows)
- 格式:doc
- 大小:189.50 KB
- 文档页数:4
安装TinyOS需要六个步骤。
1.Installing a Java 1.5 JDK.安装java jdk 1.5需要配置环境变量2.Install Cygwin.安装Windows下的Linux模拟器,cygwin3.Installing native compilers.安装单片机工具,AVR或MSP430,根据自己需要。
4.Installing the nesC compiler.安装nesC和TinyOS_tool5.Installing the TinyOS source tree.安装TinyOS2.0.2主文件。
6.Installing the Graphviz visualization tool安装Graphviz并配置环境变量一.安装JDK 1.5下载JDK 2.5 在SUN的官方网站/. 安装并配置JDK的环境变量。
二.安装Cygwin下装Cygwin-1.2a于/dist-1.2.0/tools/windows/cygwin-1.2a.tgz这个版本TinyOS官方测试过,和TinyOS兼容度高。
三.安装单片机工具下载以下五个rpm包1.avr-binutils-2.15tinyos-3.cygwin.i386.rpm(/di st-2.0.0/tools/windows/avr-binutils-2.15tinyos-3.cygwin.i386.rpm)2.avr-gcc-3.4.3-1.cygwin.i386.rpm(/dist-2.0.0/t ools/windows/avr-gcc-3.4.3-1.cygwin.i386.rpm)3.avr-libcavr-libc-1.2.3-1.cygwin.i386.rpm(/dist-2.0.0/too ls/windows/avr-libc-1.2.3-1.cygwin.i386.rpm)4.avariceavarice-2.4-1.cygwin.i386.rpm(/dist-2.0.0/tools/ windows/avarice-2.4-1.cygwin.i386.rpm)5.insight (avr-gdb) avr-insight-6.3-1.cygwin.i386.rpm(/dist-1.2.0/to ols/windows/avr-insight-6.3-1.cygwin.i386.rpm)下载完成之后把五个包都拷贝到Cygwin的tmp文件夹(在Windows操作即可) 依次安装(要按照顺序安装,它们之间有依赖关系),安装命令如下。
thinstation编译环境搭建以及编译简介1. thinstation编译环境搭建在开始编译thinstation之前,我们需要先搭建好编译环境。
以下是一些步骤和工具,可帮助您快速搭建thinstation编译环境:a. 安装Linux发行版本:thinstation主要是在Linux环境下进行编译和开发,所以您需要选择一个合适的Linux发行版本来搭建编译环境。
常见的Linux发行版本有Ubuntu、Debian、Fedora等。
选择一个您熟悉或偏好的版本,并按照官方文档进行安装。
b. 安装必要的工具和依赖项:在搭建thinstation编译环境之前,您需要安装一些必要的工具和依赖项,例如GCC编译器、make、git等。
您可以使用包管理工具,如apt、yum等来安装这些工具和依赖项。
在安装完必要的工具和依赖项之后,您还可以安装一些可选的工具,如Subversion、Curl等,以方便您进行开发和下载源代码。
c. 下载thinstation源代码:在搭建好编译环境后,您需要下载thinstation 的源代码。
您可以通过Git工具来下载thinstation的最新版本的源代码。
运行“git cloned. 配置编译环境:在下载完thinstation源代码后,您需要进行一些配置,以准备好编译环境。
进入thinstation源代码所在的目录,运行“./configure”命令可以生成编译所需的配置文件。
您可以根据您的需求,修改配置文件中的一些选项,例如网络设置、显示设置等。
e. 编译thinstation:在完成编译环境的配置后,您可以开始编译thinstation。
运行“make”命令可以开始编译thinstation。
编译过程可能需要一些时间,取决于您的机器配置和网络速度。
如果一切顺利,您将在编译完成后得到一个可执行的thinstation镜像文件。
2. thinstation编译简介thinstation是一个开源的轻量级操作系统,用于将普通计算机转变为瘦客户机(thin client)。
Programmable transistor potentiometer allows variable Built-in antenna provides 1-4 feet transmission rangeLight Sensor 51-pin-connector Temperature Se nsorAccelerometerSerial Port ConnectionParallel Port ConnectionProcessor/Radio Board51-Pins ConnectorsWhat is TinyOS?w Small, open source, energy efficient operating system designed by UC Berkeley w It was designed specifically for networked sensorsw Event-based systemEach system module is designed to operate bycontinually responding to incoming eventsMore TinyOS stuffw Two-level schedulingEvent handlers deal with hardware interrupts Tasksl Execution mechanism provided for long runningcomputationsl Runs to completion in backgroundl Can be interrupted by low-level system eventsl Task scheduling performed by simple FIFO queueMore TinyOS stuffw ComponentsAllows application developers to combineindependent components into an applicationspecific configurationA specialized language, NESC, was developed toexpress a component graph and the command/event interfaces between componentsThe TinyOS web sitew /tos/index.html DownloadSupportPublicationsHardware DesignsRelated WorkThe TinyOS download & install /tos/download.htmlw Installation packages available for:Windows 2000/XPl Choice of Installshield or Manual installationLinuxw Installation includes other software (Cygwin, JDK, avr tools, etc.)The TinyOS directoryw TinyOS subdirectories:appscontribdoctoolstosSpecification of aTinyOS programw A nesC application consists of one ormore components linked together to form an executablew A component provides and uses interfaces. These interfaces are the only point of access to the component and are bi-directionalw An interface declares a set of functions called commands that the interface provider must implement and another set of functions called events that the interface user must implementSpecification of aTinyOS programw For a component to call the commands in an interface, it must implement the events of that interfacew A single component may use or provide multiple interfaces and multiple instances of the same interfaceImplementation of aTinyOS programw There are two types of components in nesC: modules and configurationsw Modules provide application code, implementing one or more interfacew Configurations are used to assemble other components together, connecting interfaces used by components to interfaces provided by others. This is called wiringImplementation of aTinyOS programw Every nesC application is described by a top-level configuration that wires together the components insidew nesC uses the filename extension ".nc" for all source files --interfaces, modules, and configurationsWhat is NesC?w Network Embedded Systems Cw C-like syntax supporting TinyOSw Reference manual online:/papers/nesc-ref.pdfTinyOS Tutorialsw Provide sample programs with explanation of code w Tutorials included with TinyOS installationw Most up-to-date version of tutorials are online: /tos/tinyos-1.x/doc/tutorial/index.htmlCompiling and uploadingw To compile a TinyOS application, you must first enter the directory of the appw Type: make <platform>w Valid platforms include: mica, mica2, mica2dot w To compile and install: make <platform> install w To assign ID #: make <platform> install.X where X is the node ID (0, 1, 2, …)More compiling and uploading w To install a program that has already been built (no rebuild of target),type: make reinstall[.X] <platform>w To compile a program for use with the TOSSIM simulator, type: make pcw Note: For more information about the TOSSIM simulator, see Lesson 5 in the tutorial:/tos/tinyos-1.x/doc/tutorial/lesson5.htmlExample #1: Blinkw Lesson 1 in the tutorial:/tos/tinyos-1.x/doc/tutorial/lesson1.htmlExample #2: Sensingw Lesson 2 in the tutorial:/tos/tinyos-1.x/doc/tutorial/lesson2.htmlExample #3: Using the radio w Lesson 4 in the tutorial:/tos/tinyos-1.x/doc/tutorial/lesson4.htmlWhat should I do next?1.Download and install TinyOS2.Read the first four tutorialsw Implement the tutorials (schedule TBA)3.Read Chapter 1 of the WSN textbook4.Read “System Architecture Directions forNetworked Sensors”What should I do next? 5.Think about project ideas –use yourimagination//news/article.html?item_id=285/dataman/ActiveTape/Tree/Technologies we haven’t tried yet:Mica2Dot motesTASKNetwork reprogrammingSimulatorsOther helpful linksw Crossbow: Spec sheets and prices for Berkeley motes and othersensor network productsw Search the TinyOS mailing list archives: /tos/search.html。
安装TinyOS需要六个步骤安装TinyOS需要六个步骤。
1.Installing a Java1."5 JDK.安装java jdk1."5需要配置环境变量2.Install Cygwin.安装Windows下的Linux模拟器,cygwin安装单片机工具,AVR或MSP430,根据自己需要。
安装nesC 和TinyOS_tool5.Installing the TinyOS source tree.安装TinyOS2."0.2主文件。
6.Installing the Graphviz visualization tool安装Graphviz并配置环境变量一.安装JDK1."5下载JDK二.安装Cygwin下装Cygwin-1."2a于http:1."2.0/tools/windows/cygwin-1."2a.tgz这个版本TinyOS官方测试过,和TinyOS兼容度高。
三.安装单片机工具下载以下五个rpm包1.avr-binutils-2."15tinyos-3."cygwin.i386."rpm(http:2."0.0/tools/windows/avr-binutils-2."15tinyos-3.cygwin.i386."rpm)2.avr-gcc-3."4.3-1."cygwin.i386."rpm(http:2."0.0/tools/windows/avr-gcc-3."4.3-1."cygwin.i 386."rpm)3.avr-libcavr-libc-1."2.3-1."cygwin.i386."rpm(http:2."0.0/tools/windows/avr-libc-1."2.3-1.cygwin.i 386."rpm)4.avariceavarice-2."4-1."cygwin.i386."rpm(http:2."0.0/tools/windows/avarice-2."4-1."cygwin.i386."rpm)5.insight(avr-gdb)avr-insight-6."3-1."cygwin.i386."rpm(http:1."2.0/tools/windows/avr-insight-6."3-1."cygwin.i386."rpm)下载完成之后把五个包都拷贝到Cygwin的tmp文件夹(在Windows操作即可)依次安装(要按照顺序安装,它们之间有依赖关系),安装命令如下。
Win7上安装Tinyos步骤:Step1. 按照文件GettingStarted_Imote2_v2.pdf上的step1安装cygwin,添加源的时候可以用(电信)ftp:///sites//pub/cygwin/;(教育网bras@a/b可以连接到的)/pub/(参考:/site/install/ 按照安装步骤,在url site中添加cygwin中国镜像地址/pub/,之后的安装就很快了。
)Step2. 按照网页/index.php/Installing_and_Configuring_T2_for_iMote2_on_Win dows_XP(为了防止在一些网络环境下上述网页访问不到,我把这个网页下载下来,放在根目录文件夹Installing and Configuring T2 for iMote2 on Windows XP - TinyOS Documentation Wiki)中的step1 安装java(1.5以上版本,配置环境变量);step2 已经安装过了;step3 tinyos2.xtree下载完以后,要安装rpm --ignoreos -ivh tinyos-tools-1.2.4-2.cygwin.i386.rpm,安装这个rpm时可能会被告知貌似权限不够,由于cygwin没有root用户,所以不用担心;Step4 Download the TinyOS 2.x Contrib Tree ;step5 Downloading and Installing NesC from CVS;step6 Downloading and Installing NesC from RPM;(step5和step6之选其中一个安装就好了,我安装的是step6)step7 Setting up the Intel Mote 2 debug board drivers;(step可选)step8 Downloading and Installing GraphViz;step9 Downloading and Installing the Xscale GCC Binaries没什么好说的,照着装就是咯~~;Step10 Configuring your Environment这个不用管它;中间需要下载几个rpm包;Step3. 上面都装好后,要配置两个文件:~/.bashrc和/etc/profile.d/tinyos.sh。
TinyOS系统与nesC程序设计课内实验指导书一、课内实验项目一览表二、详细实验指导书实验一:编程环境建立一实验目的1、掌握Java基本开发环境(JDK)的安装和配置方法。
2、掌握cygwin程序的安装,在建立windows下类似Unix环境。
3、掌握Linux基本命令及cygwin下安装TinyOS的方法。
二实验原理无三实验环境1、运行Windows的PC机,能够连接Internet2、PC机配置要求:四实验内容和步骤1、java jdk安装首先,我们安装JA V A开发工具JA V A JDK 1.6官方下载地址:/javase/downloads/.安装过程只需下一步……下一步便可,默认安装路径是C:\Program Files\Java上图是TinyOS 2.0.2 安装时截取的JA V A JDK1.5的图,只供参考。
然后,我们需要设置电脑的环境变量,需要新建两个环境变量,以便使用JDK 具体过程如下:右击我的电脑——〉属性——〉高级——〉环境变量先新建或编辑系统变量:变量名(N):JA V A_HOME变量值(V):JDK安装的路径,其默认的路径为:C:\Program Files\Java\jdk1.6.0_10变量名(N):CLASSPATH变量值(V):.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;;%JAVA_HOME%\bin;%JAVA_HOME%\jr e\bin;在系统变量(S)栏选中变量为Path的选项,点编辑在变量值(V)的末尾添加:;%JAVA_HOME%\bin; ;%JAVA_HOME%\jre\bin;然后新建或编辑用户变量:同样再设置一个JAVA_HOME,变量值也一样。
在用户变量的PATH中添加:;%JAVA_HOME%\bin:$PATH;%JAVA_HOME%\jre\bin:$PATH;这样,我们的环境变量已经设置完毕了。
1.TinyOS1.1概要TinyOS应用程序都是有一个或多个组件链接起来,从而形成一个完整的可执行程序。
组件中实现了功能接口,同时也能使用其它组件提供的接口。
在接口定义中可以申明命令函数和事件函数,命令函数由接口提供者实现,事件函数由接口使用者实现。
对于一个组件而言,如果它要使用某个组件接口中的命令,它必须实现这个接口的事件。
一个组件可以使用或提供多个接口以及同一个接口的多个实例。
组件有两种类型:模块(module)和配置(configuration)。
模块提供应用程序代码,实现一个或多个接口;配置则是用来将其它组件装配起来,将各个组件所使用的接口与其它组件提供的接口连接在一起,进行导通。
每个应用程序都由一个顶级配置所描述,其内容就是将该应用程序所用到的所有组件导通起来,形成一个有机整体。
TinyOS应用程序必须包含Main 组件,Main组件是首先被执行的一个组件。
确切的说,在TinyOS 中执行的第一个命令是Main.StdControl.init(),接下来是Main.StdControl.start()。
Main组件完成以下功能:芯片初始化,外围电路初始化,操作系统调度数据结构初始化,子组件初始化,启动子组件件,进入调度死循环从而将控制权交给操作系统,一旦没有任务可以调度就进入休眠状态以降低系统功耗。
TinyOS的调度系统是TinyOS系统的核心部分。
它采用先进先出的排队策略,任务之间不可以抢占,但是中断可以抢占任务,中断是否可以抢占中断则是应用程序自己控制的。
即如果中断处理程序进入中断以后执行了关中断的操作,那么这个中断将是不可抢占的,否则在服务的过程中就有可能被抢占掉。
另外还要注意,在中断服务程序里面是可以创建任务的。
1.2在Cygwin下的安装在/etc/bash.bashrc文件中增加以下内容:export TOSROOT=/opt/tinyos-2.xexport TOSDIR=$TOSROOT/tosexport CLASSPATH=C:\cygwin\opt\tinyos-2.x\support\sdk\java\tinyos.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 -ivh --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.rpmrpm -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:/downloads/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:/downloads/msp430tools-gcc-3.2.3-20050607.cygwin.i386.rpm rpm -ivh --ignoreos c:/downloads/msp430tools-libc-20080808-1.cygwin.i386.rpmrpm -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:/downloads/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"编译Blink测试是否安装成功:cd /opt/tinyos-2.x/apps/Blinkmake telosbmake mica2make micazmake micaz sim1.3Blink程序结构Blink.nc文件configuration Blink {}implementation {components Main, BlinkM, SingleTimer, LedsC;Main.StdControl -> SingleTimer.StdControl;Main.StdControl -> BlinkM.StdControl;BlinkM.Timer -> SingleTimer.Timer;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;}}。
Micaz节点的Tinyos系统安装安新升说明:为了留底也锻炼大家的动手能力,我写了这个文档,里面有我做的时候的步骤和需要注意的问题,算是比较详细了,文档中有问题的话可找我一起讨论!首先,介绍一下Tinyos,TinyOS是UC Berkeley(加州大学伯克利分校)开发的开放源代码操作系统,专为嵌入式无线传感网络设计;但是与一般系统不同的是,Tinyos不能安装在Winsows系统中,它是在LINUX系统下的进行开发的系统,所以它的安装分为两种:(1)在WINDOWS XP 下安装cgwin,再在cgwin中安装Tinyos,所以cgwin的作用只是一个平台(2)安装一个LINUX 系统——ubuntu,在ubuntu下安装Tinyos,个人感觉cgwin中安装比较复杂,而且接触一下ubuntu进行LINUX开发也是件好事,所以我选择的后者,下面的介绍也是这种方法。
我的系统是WIN7.言归正传,说一下安装步骤:第一步:划分出一块新的磁盘空间,20G左右,建立一个新磁盘,也就是看着哪个磁盘可用空间比较大,拿出点来建立一个新的压缩卷。
注意:(1)划分磁盘空间时,先要拿出空间的磁盘是不是NTFS格式,不是的要转到NTFS格式,如果是FAT32格式,划分出新的磁盘空间后,原磁盘会被格式化。
,千万注意!!!!实在不放心的话,就备份一下要划分的磁盘。
转换方法见/article/0eb457e57c08df03f1a905f0.html (2)不要划分系统盘,否则会引起原系统不稳定。
划分磁盘空间方法:/article/91f5db1bd31dec1c7f05e392.html第二步:假设大家都已经划分好了磁盘空间,下面就是安装LINUX系统-Ubuntu(1)现在已经出到Ubuntu14.04,但是安装起来不好安装,我用的是Ubuntu12.04,桌面版(desktop),下载时注意如多你的电脑是64位,则下载/precise/ubuntu-12.04-desktop-amd64.iso,如果是32位,则下载/precise/ubuntu-12.04-desktop-i386.iso (2)可以使用镜像工具打开镜像文件,从里面提取出 Wubi.exe 安装程序。
将Tinyos2.x移植到cc2530
编译环境的搭建
流程:在windows下建立cygwin平台,并搭建Tinyos的编译环境,然后将基于Tinyos的应用程序编译成hex文件,通过仿真器下载到cc2530片子上运行。
原材料:硬件(cc2530节点,仿真器等)、软件(Cygwin,Keil,TinyOS 2.x,编译环境配置软件包,SmartRF04 Flash Programer等)。
注意:硬件是原来在IAR下能正常使用的CC2530开发硬件就OK声明:一.里面很多东西我借鉴了网上的资料,并写在后面的参考文献中。
并对一些内容进行了修改和强调,以及我遇到的一些问题的解决方法。
= = = = = = = = = = = = = = = = = = = = = =
1.安装Keil (Keil uVersion4)
这些资源网上很多,百度和谷歌都可以搜到(注:一定要下载keil uVersion4,不可以下载4以下的版本,因为要运行的是cc2530,4以下的版本会找不到相关的编译平台环境)
2.安装java 1.5 JDK
我开始用1.6了的,反正一直没成功,不知道是不是这个原因。
最好就用1.5这个版本吧。
安装完了在命令行中:java –verson ,出现“java version “1.5.0”表示是1.5版本了。
3.安装Cygwin
(1)下载Cygwin,我是在这里下载的:/index.php/Installing_TinyOS_2.0.2#Manual_installation_on_your_host_OS_with_RPMs,在Setp 2: Install Cygwin中第一步有个cygwin-files.zip,点击即可下载。
这个地址好像也可以下载:rmatik.uni-freiburg.de/people/aslam/cygwin-files.zip
(2)安装时先解压下载的cygwin,点击setup.exe即可,默认安装在c盘下。
选项基本上不用变,都是默认选项:”install from Local Directory”->Root Directory: c:\cygwin, Install for: All Users, Default Text file type: Unix/Binary->当问到”Select local Package directory”时,选择自己解压的cygwin目录即可,如:“D:/cygwin-files”,最后等一会时间即可完成安装。
(3)启动桌面上的Cygwin快捷图标,cygwin第一次运行会设置一些东西,并创建一个home目录,里面创建了一个用户,名为windows系统的用户名。
注意:此时自己在cygwi菜单n根目录下创建一个opt目录,后面会用到。
(如果你安装cygwin后有这个目录就不同了,反正我安装后没有这个目录,后面的操作会在这个目录下自动放置一些文件)
4.下载Tinyos开发必备的编译工具的安装包(共4个)
NesC编译工具:nesc-1.3.0-1.cygwin.i386.rpm
TinyOS相关工具:
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
这些东西在这里能够找到(呵呵):/dist-2.1.0/tinyos/windows/
5.安装上面的rpm包
(1)在/home目录下是你的主目录,我的是.Adminstrator将刚才的那4个rpm包拷贝到\home\Adminstrator下(即C:\Cygwin\home\john下),进入到该目录:cd /home/Adminstrator,ls一下可以看见这4个文件。
(2)安装rpm包
rpm -ivh nesc-1.3.0-1.cygwin.i386.rpm
rpm -ivh tinyos-tools-1.3.0-1.cygwin.i386.rpm
rpm -ivh tinyos-deputy-1.1-1.cygwin.i386.rpm
rpm -ivh tinyos-2.1.0-2.cygwin.noarch.rpm
每输入一次回车一下就可以了。
6.安装Tinyos 2题.x
(1)将下载的Tinyos文件“TinyOS8051wg-0.1pre4.tgz”放到/opt目录下。
注意检查此时该目录下应该有一个叫“tinyos-2.x”的目录,如果没有前面做的有问题,而且后面的操作几乎肯定会出错。
(注:TinyOS8051wg-0.1pre4.tgz 在/可以找到下载资源)
PS:这个文件夹下放置了一些编译规则文件,如:\opt\tinyos-2.x\support\make\Makerules文件。
(2)解压“TinyOS8051wg-0.1pre4.tgz”文件
tar –xvzf TinyOS8051wg-0.1pre4.tgz ,有些文章说用winrar就可以,反正我每次这么做的时候最后都会报错,最好用前面这个tar命令。
最后在/opt下生成一个“tinyos-2.x-contrib”目录
(3)设置编译环境
cd tinyos-2.x-contrib
ls (出现一个diku文件夹)
source diku/env
说明:diku文件夹下面有个env配置文件,我们通过source 命令加载下,这样后面编译的时候编译器就知道我们要使用什么样的配置去编译了。
注意:每次重新启动cygwin后如果要编译,需要运行此命令(source /opt/tinyos-2.x-contrib/diku/env)(4)编译工程文件(以BlinkNoTimerTask为例)
cd /diku/common/apps/BlinkNoTimerTask
make cc2430em
可能出现下面错误:
cd build/cc2430em && ./startup.bat
/bin/sh: ./startup.bat: Permission denied
意思是权限不够,又不知道如何在cygwin下以超级用户登录(网上说用login命令,我试了不怎么好使)。
我的解决办法是:进入到cc2430em目录下,chmod 777 startup.bat,然后重新编译,反正就好用了,呵呵。
我最后的结果截图如下:
最后在cc2430em下生成了app.hex文件,如图:
7.烧写
(1)下载并安装SmartRF04 Flash Programmer这个软件,我用的是Setup_SmartRF04Progr_1.3.0.exe 这个版本(同时我把还安装了Setup_Packet_Sniffer_2_2_0_0.exe和Setup_SmartRF_Studio_6_5_1.exe这两个软件,是芯片和仿真器驱动,不知道是不是多于了)。
(2)电脑USB跟仿真器连接,仿真器跟芯片连接好后,提示安装驱动,自动安装好后即可以用了。
(3)打开chipcon下的SmartRF04 Flash Programer,设置如下:
注意用System-on-Chip => Flash iage选择刚才编译好的app.hex文件=> 点击Read IEEE, 然后Write IEEE => 勾选Retain IEEE address when reprogramming => Action中选择第二个Erase,program and v… =>最后点击Perform actions,出现Erase,program and verify OK。
表示成功了,而且此时芯片上的一个小灯在不停的快速闪烁。