(本教程使用的是VirtualBOX +ubuntu14.04+tinyos2.1.2)

note:看了非常多的tinyos的安装教程。区别不是非常大,无非就是安装编译器配置环境等。尽管简单,但还是有非常多问题在里面。

建议大家使用虚拟机安装,由于虚拟机执行在主机上。全然独立。虚拟机里面的全部操作不会影响主机,即使虚拟崩溃了。

windows相对对ubuntu来说,windows的硬件驱动由于是商业化的所以做的比較完好,各种优化策略也比較好。虚拟机推荐大家使用VirtualBOX

VirtualBOX 短小精悍,功能比較强大。安装文件比較小,仅仅有几十MB,系统资源占用比較少。

当然你也能够使用vmware。

安装虚拟机和ubuntu相信大家已经非常熟悉了,假设还没有安装请看这个教程:

好。以下我们正式開始搭建tinyos的开发环境!

步骤1:

假设你曾经没有安装过tinyos能够跳过这个步骤。假设你曾经安装的是老的版本号的tinyos(像2.1.1版本号)那么你必须卸载掉有关tinyos的文件以及GCC-430的编译器以及工具等。 卸载流程例如以下:打开终端(ctrl+alt+t)输入下面命令:卸载tinyos老的版本号:

sudo apt-get remove tinyos-2.1.1

卸载gcc-msp430编译器:

sudo apt-get autoremove --purge msp430*

通过这两步就把你曾经老版本号的tinyos卸载掉了

步骤2:

在ubuntu的package list file加入源。

这个命令使用的是gedit编辑器。当然你也能够使用vim等

sudo gedit /etc/apt/sources.list

以下把以下代码加入到sources.list里面。保存,退出

# TinyOS Repository
deb http://tinyos.stanford.edu/tinyos/dists/ubuntu lucid main

如今运行下面命令更新安装新版本号的tinyos

sudo apt-get update

sudo apt-get install tinyos-2.1.2

如今tinyos的基础工作已经做好,接下来就是完毕配置以及安装对应的编译器就可以。

步骤3:

改变tinyos目录的全部权,才干完毕后面的配置:

命令例如以下:

sudo chown your_user_name:your_user_name -R /opt/tinyos-2.1.2/

sudo chown your_user_name
-R /opt/tinyos-2.1.2

进入到tinyos-2.1.2文件夹下检查是否有tinyos.sh文件,假设没有新建这个文件并加入下面代码

#! /usr/bin/env bash
# www.ElectronicsPub.com
# TinyOS 2.1.2 Configuration Guide
# Here we setup the environment
# variables needed by the tinyos
# make system echo "Setting up for TinyOS 2.1.2"
export TOSROOT=
export TOSDIR=
export MAKERULES= TOSROOT="/opt/tinyos-2.1.2"
TOSDIR="$TOSROOT/tos"
CLASSPATH=$CLASSPATH:$TOSROOT/support/sdk/java
MAKERULES="$TOSROOT/support/make/Makerules" export TOSROOT
export TOSDIR
export CLASSPATH
export MAKERULES

接下来我们配置环境变量。使用下面命令打开bash.bashrc

sudo gedit ~/.bashrc

在最以下加入以下代码:

# Start TinyOS environment pathing
export TOSROOT=/opt/tinyos-2.1.2
export TOSDIR=$TOSROOT/tos
export CLASSPATH=$TOSROOT/support/sdk/java/tinyos.jar:.$CLASSPATH
export MAKERULES=$TOSROOT/support/make/Makerules
export PATH=/opt/msp430/bin:$PATH
source /opt/tinyos-2.1.2/tinyos.sh
# End TinyOS pathing

用下面命令运行更改:

source
~/.bashrc

步骤4:

安装java

cd
$TOSROOT/support/sdk/java

sudo tos-install-jni

make

make install

假设是第一次安装tinyos,MSP430一些工具会通过tinyos的安装自己主动安装。能够通过下面命令检查:

msp430-gcc
--version

假设提示:command not found or msp430 compiler is not installed 请依照步骤5安装msp430-gcc编译器。或者提示已经安装了这个编译器可是版本号在4.6.3下面。你也须依照步骤5安装。

假设提示:如今编译器版本号已经是4.6.3,那么能够尝试使用tinyos提供的demo进行试验了。

步骤5:

卸载老版本号的msp430-gcc 使用下面命令

sudo apt-get autoremove --purge msp430*

加入keys

gpg --keyserver keyserver.ubuntu.com --recv-keys 34EC655A

gpg
-a --export 34EC655A | sudo apt-key add -

加入源:方法像依照步骤2那样加入。 在sources.list 里加入下面代码:

# TinyOS MSP430 GCC Compiler Repository
deb http://tinyprod.net/repos/debian squeeze main
deb http://tinyprod.net/repos/debian msp430-46 main</span>

运行下面命令完毕安装:

sudo apt-get update

sudo
apt-get install msp430-46 nesc tinyos-tools

如今环境就搭建好了。能够使用下面命令检查一下

tos-check-env

该命令可以检查出tinyos环境中绝大多数的配置情况。

以下进行试验。以telosb为例,将telosb节点插入计算机USB口。为虚拟机分配USB设备。

检查port与port名称可使用下面命令:

motelist

回复类似于这样说明已经连接好了

Reference  Device           Description 

---------- ---------------- ---------------------------------------------

A800J7PW   /dev/ttyUSB0     FTDI FT232R USB UART

以Blink 为例,首先要进入到Blink文件夹下,能够使用下面命令:

/opt/tinyos-2.1.2/apps/Blink

编译:

make telosb

系统给出回应

root@asus:/opt/tinyos-2.1.2/apps/Blink#
make telosb   

mkdir -p build/telosb 

    compiling BlinkAppC to a telosb binary  

ncc -o build/telosb/main.exe  -Os -fnesc-separator=__ -Wall -Wshadow -Wnesc-all -target=telosb -fnesc cfile=build/telosb/app.c -board= -DDEFINED_TOS_AM_GROUP=0x22 -DIDENT_APPNAME=\"BlinkAppC\"DIDENT_USERNAME=\"root\" -DIDENT_HOSTNAME=\"asus\" -DIDENT_USERHASH=0x902b0604L
-DIDENT_TIMESTAMP=0x53ba1c44LDIDENT_UIDHASH=0x89c7fff1L  BlinkAppC.nc -lm

    compiled BlinkAppC to build/telosb/main.exe

            2538 bytes in ROM 

              56 bytes in RAM 

msp430-objcopy --output-target=ihex build/telosb/main.exe build/telosb/main.ihex

    writing TOS image

下载程序。运行下面命令:

make telosb install bsl,/dev/ttyUSB0

最后提示

cp build/telosb/main.ihex build/telosb/main.ihex.out 

    installing telosb binary using bsl    

tos-bsl --telosb -c /dev/ttyUSB0 -r -e -I -p build/telosb/main.ihex.out 

MSP430 Bootstrap Loader Version: 1.39-goodfet-8  

Mass Erase... 

Transmit default password ...

Invoking BSL...    

Transmit default password ... 

Current bootstrap loader version: 1.61 (Device ID: f16c)

Changing baudrate to 38400 ...

Program ...

2598 bytes programmed. 

Reset device ...    

rm -f build/telosb/main.exe.out build/telosb/main.ihex.out

你会看到三个led交替闪烁!

tinyos学习之旅開始啦!

//***************************************

//Email:912293097@qq.com

//***************************************

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdGlhbnpoaWhlbl93cQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" width="400" height="250">

一步步教你搭建TinyOS2.1.2开发环境的更多相关文章

  1. 一步步教你搭建VS环境下用C#写WebDriver脚本

    一步步教你搭建VS环境下用C#写WebDriver脚本http://www.automationqa.com/forum.php?mod=viewthread&tid=3529&fro ...

  2. 【java项目实战】一步步教你使用MyEclipse搭建java Web项目开发环境(一)

    首先.在開始搭建MyEclipse的开发环境之前.还有三步工具的安装须要完毕,仅仅要在安装配置成功之后才干够进入以下的java Web项目开发环境的搭建. 1.安装工具 第一步,下载并安装JDK,到官 ...

  3. 在Ubuntu下搭建ASP.NET 5开发环境

    在Ubuntu下搭建ASP.NET 5开发环境 0x00 写在前面的废话 年底这段时间实在太忙了,各种事情都凑在这个时候,没时间去学习自己感兴趣的东西,所以博客也好就没写了.最近工作上有个小功能要做成 ...

  4. 搭建 AngularJS+Ionic+Cordova 开发环境并运行一个demo

    目前的手机APP有三类:原生APP,WebAPP,HybridApp:HybridApp结合了前两类APP各自的优点,越来越流行. Cordova就是一个中间件,让我们把WebAPP打包成Hybrid ...

  5. Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试

    Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试一.下载相关安装包 1.下载nginx最新版本(nginx1.3.13版之后才支持websocket协议) 下载地址 ...

  6. ubuntu上用eclipse搭建java、python开发环境

    上一篇文章讲到如何在windwos上用eclipse搭建java.python开发环境,这一讲将关注如何在ubuntu上实现搭建,本人使用虚拟机安装的ubuntu系统,系统版本为:14.04 lts ...

  7. react-native —— 在Windows下搭建React Native Android开发环境

    在Windows下搭建React Native Android开发环境 前段时间在开发者头条收藏了 @天地之灵_邓鋆 分享的<在Windows下搭建React Native Android开发环 ...

  8. 极其简单的搭建eclipse的android开发环境

    这篇博客是关于如何搭建eclipse的android开发环境, 与网上的其他博客不同,我的方法比他们简单的多,所 以推荐给大家. 搭建eclipse的android开发环境步骤: 1.配置JDK(Ja ...

  9. 转:WIN7上搭建Windows Phone 8 开发环境——VMware Workstation下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法

    转自:http://www.cnblogs.com/shaddock2013/p/3155024.html 最近在试着在Windows 7上搭建Windows Phone 8的开发调试环境,使用的是V ...

随机推荐

  1. Oracle RMAN 备份及不完全恢复(删除archievelog)

    RMAN备份命令 backup Database format='/home/oracle/backup/bak_full_%U_%T' tag='bak_full'; sql 'alter syst ...

  2. VR虚拟现实的工作原理,你知道多少?【转】

    VR虚拟现实经过几年的预热,已经开始呈现爆发式增长,要了解VR虚拟现实,就需要了解其工作原理,了解工作原理之前,我们就需要弄清楚眼睛是如何看清事物的. 眼睛瞳孔后有晶状体,也就是眼珠子.眼睛的背面有感 ...

  3. IOS Vsync

    vsync count Don't Sync Application.targetFrameRate 设置FPS上限 Every Second VBlank 30 Every VBlank 60 An ...

  4. java源码阅读System

    1类签名与注释 public final class System System类包含一些有用的类属性和方法.该类不能被实例化,所以其所有属性与方法都是static的. 2标准输入输出流 public ...

  5. LeakCanary 的使用遇到的弯路

    基本上来源是:  http://www.liaohuqiu.net/cn/posts/leak-canary-read-me/ 1. demon 中自带的android_v7兼容包有问题的,建议自己使 ...

  6. Linux 网卡驱动学习(一)(分析一个虚拟硬件的网络驱动样例)

    在Linux,网络分为两个层,各自是网络堆栈协议支持层,以及接收和发送网络协议的设备驱动程序层. 网络堆栈是硬件中独立出来的部分.主要用来支持TCP/IP等多种协议,网络设备驱动层是连接网络堆栈协议层 ...

  7. zbar 解析 图片 二维码 条形码

    #!/usr/bin/env python # coding: u8 import os import zbar import Image import urllib import uuid def ...

  8. 微信小程序 解决 数字粗细不一 的bug

    1.bug 2.原因解析 微信小程序本身字体问题 3.解决方案 设置字体 font-family: Microsoft YaHei; .

  9. 【Python3 爬虫】04_urllib.request.urlretrieve

    urllib模块提供的urlretrieve()函数,urlretrieve()方法直接将远程的数据下载到本地 urllib语法 参数url:传入的网址,网址必须得是个字符串 参数filename:指 ...

  10. Mysql中获取行号

    Select UID,(@rowNum:=@rowNum+1) as rowNo From a, (Select (@rowNum :=0) ) b Order by a.Money Desc