〖Linux〗zigbee实验之cc2430移植tinyos2.x的步骤(Ubuntu13.10)
开发环境:Ubuntu13.10
1. 添加源,并安装tinyos-2.11:
sudo gedit /etc/apt/sources.list #往里边添加
deb http://tinyos.stanford.edu/tinyos/dists/ubuntu lucid main
sudo apt-get update
sudo apt-get install -y tinyos-2.1.1
2. 安装好wine,及安装Keil:
sudo apt-get install wine #安装wine,在Linux上运行Windows程序
文件下载:Keil_C51_V8.09汉化.zip
利用wine安装好Keil_C51_V8.09,之后的编译时会使用得到;

3. 安装Ubuntu13.10编译过程中的一些依赖环境:
sudo apt-get install g++ python2.7-dev
安装jdk1.6(略过,网上搜索结果一大把)
4. 安装tinyos-2.x-contrib:
需要文件: TinyOS8051wg-0.1pre4.tgz
解压方法:
cd /opt
sudo tar zxf TinyOS8051wg-0.1pre4.tgz
5. 一些文件修改过程:
文件1:/opt/tinyos-2.1.1/support/make/sim.extra
将其中:PYTHON_VERSION=2.5
修改为:PYTHON_VERSION=2.7
将其中:PYDIR = $(shell python$(PYTHON_VERSION)-config –prefix)/usr/include/python$(PYTHON_VERSION)
修改为:PYDIR =/usr/include/python$(PYTHON_VERSION)
将其中:-L/$(PYDIR)/config
修改为:-L/bin
文件2:/opt/tinyos-2.x-contrib/diku/mcs51/support/make/mcs51/mcs51.rules
将其中:
MCS51_WINE_IAR=env WINEPREFIX=$(MCS51_WINE_IAR_PATH) LC_ALL=en_US wine
MCS51_WINE_KEIL=env WINEPREFIX=$(MCS51_WINE_KEIL_PATH) LC_ALL=en_US wine cmd /c
修改为:
MCS51_WINE_IAR=env WINEPREFIX=$(MCS51_WINE_IAR_PATH) LC_ALL=en_US; wine
MCS51_WINE_KEIL=env WINEPREFIX=$(MCS51_WINE_KEIL_PATH) LC_ALL=en_US; wine cmd /c
文件3:/opt/tinyos-2.x-contrib/diku/env
将其中:export TOSROOT=/opt/tinyos-2.x
修改为:export TOSROOT=/opt/tinyos-2.1.1
6. 编译过程:
source /opt/tinyos-2.x-contrib/diku/env
cd /opt/tinyos-2.x-contrib/diku/common/apps/BlinkNoTimerTask
make cc2430em
7. 输出结果:
8. 生成的文件展示:
[scue@Link:BlinkNoTimerTask]$ ls -1 build/cc2430em/
APP
app.c
app.hex
app.lst
app.map
app.obj
app.preMangle.c
app.reg
APP.SBR
CC2430-F128.bat
ident_flags.txt
startup.a51
startup.bat
startup.LST
startup.OBJ
9. 烧写至开发板(这一步要在Windows上操作,可使用虚拟机):

需要工具: Setup_SmartRFProgr_1.9.0.exe
安装好之后,操作步骤:
1). System-on-Chip:要显有设备,不显示则下载驱动:
2). Flash image路径:选择好刚刚编译出来的app.hex文件;
3). 点击Read IEEE,并勾选:Retain IEEE address when reprogramming the chip
4). Actions:勾选第二项的Erase, program and verify
5). 最后点击"Perform actions",完成刷入;
参考文档:
1. http://www.tinyos8051wg.net/install#toc15
2. http://hi.baidu.com/sendoc/item/ed7b2e351cc1d3c42e8ec2a0
3. http://www.cnblogs.com/yixiaoyang/archive/2010/12/30/1922548.html
4. http://blog.sina.com.cn/s/blog_4774da410100faam.html
5. http://blog.csdn.net/xiaobaicaihaochi/article/details/9170991
6. http://www.linuxidc.com/Linux/2011-09/42435.htm
〖Linux〗zigbee实验之cc2430移植tinyos2.x的步骤(Ubuntu13.10)的更多相关文章
- 〖Linux〗zigbee实验之cc2430的cc debugger固件升级实录
开发环境:Windows XP 1. (Trouble)一开始,使用IAR提示此设备不可使用(意味着无法下载程序): 2. (Search)通过一番的仔细查找,发现是cc debugger的Evalu ...
- 〖Windows〗zigbee实验之cygwin编译TestSimpleMac并测试通信
1. 开发环境及工具: 1) cygwin安装包下载地址:cygwin-files.zip >>安装时选择本地目录(Select local Package directory),其 ...
- Linux主机上使用交叉编译移植u-boot到树莓派
0环境 Linux主机OS:Ubuntu14.04 64位,运行在wmware workstation 10虚拟机 树莓派版本:raspberry pi 2 B型. 树莓派OS: Debian Jes ...
- linux 3.4.103 内核移植到 S3C6410 开发板 移植失败 (问题总结,日本再战!)
linux 3.4.103 内核移植到 S3C6410 开发板 这个星期差点儿就搭在这里面了,一開始感觉非常不值得,移植这样的浪费时间的事情.想立刻搞定,然后安安静静看书 & coding. ...
- LINUX为什么要进行内核移植 内核移植的作用
LINUX为什么要进行内核移植 内核移植的作用,不移植能用么? LZ的问题应该是为什么要重新编译内核吧.既然你已经可以跑了,证明你现在用的内核已经移植到你用的硬件上,自然你也不需要做什么移植.通常 ...
- Linux系统实验
前言:怎么感觉Linux运维和Linux系统实验没什么关系?该不会的还是不会(@@).记录一下几个实验吧. 本篇目录: 实验一 编程环境 实验二 文件读写 实验三 进程通信 实验一 编程环境√ 实验步 ...
- 20145219 《Java程序设计》实验一 Java开发环境的熟悉(Linux + Eclipse)实验报告
20145219 <Java程序设计>实验一 Java开发环境的熟悉(Windws + IDEA)实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA 编辑. ...
- JProfiler远程监控Linux上Tomcat的安装过程细讲(步骤非常详细!!!)
JProfiler远程监控Linux上Tomcat的安装过程细讲(步骤非常详细!!!) 1.文件准备: 服务器:CentOS Linux release 7.3.1611 (Core) Apa ...
- 〖Linux〗Ubuntu13.10中使用虚拟机对MTK手机进行线刷
最近一个同学把一台MTK手机刷坏了,在我的笔记本电脑上没有WindowsXp操作系统: 而在MTK线刷过程中,最好的刷机系统便是WindowsXP3,于是有了想在Linux中直接开启XP虚拟机来刷机的 ...
随机推荐
- .Net高级技术——垃圾收集器
垃圾收集器概述 大排档和学校食堂.一个是别人帮你收拾盘子,一个是自己收拾盘子. 垃圾收集GC(Garbage Collection).内存的分配.回收不需要程序员操心,程序员只要需要的时候new就可以 ...
- Chrome在win8显示“没有注册类”的解决办法
问题1:从任务栏和桌面快捷方式无法打开Chrome,显示错误为没有注册类问题2:无法从word等中点击打开url,无法打开html,htm方式的文件,同样显示错误为没有注册类出了这两个错误后,用起来相 ...
- Gradle在Windows环境与Linux上配置有哪些不同?
我的开发环境:Windows + Android Studio + Gradle 2.8 all + Jenkins 公司CI 服务器环境: Linux + Gradle 2.10 bin + Jen ...
- 每天进步一点点——论fork()函数与Linux中的多线程编程
转载请说明出处:http://blog.csdn.net/cywosp/article/details/27316803 一.fork()函数 在操作系统的基本概念中进程是程序的一次运行,且是 ...
- [翻译] AnimatedPath 动画路径(持续更新)
AnimatedPath动画路径 感谢原作者分享精神,有空补上使用教程 https://github.com/twotoasters/AnimatedPath AnimatedPath explore ...
- 使用开源库 TWMessageBarManager 展示系统级别的通知
TWMessageBarManager 简单翻译 https://github.com/terryworona/TWMessageBarManager An iOS manager for prese ...
- Java读取properties配置文件时,中文乱码解决方法
public static String getConfig(String key) { Properties pros = new Properties(); String value = &quo ...
- Windows Server 2003 R2 IIS服务的命令行方式重启命令
iisreset /RESTART 停止后启动 iisreset /START 启动IIS (如果停止) iisreset /STOP 停止IIS (如果启动) iisreset /REB ...
- 最值得你所关注的10个C语言开源项目
. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接 ...
- 【ContestHunter】【弱省胡策】【Round5】
反演+FFT+构造+DP 写了这么多tag,其实我一个也不会 A 第一题是反演……数据范围10W,看着就有种要用FFT等神奇算法的感觉……然而蒟蒻并不会推公式,只好写了20+10分的暴力,然而特判30 ...