Lesson1---TinyOS入门
- 格式:ppt
- 大小:786.00 KB
- 文档页数:22


入门-tinyos编程思想
除非特别说明,所有的程序都是基于tinyos-1.3的,并在VM 模拟Win xp 32位下用cygwin调试运行。
思想:
Tinyos使用的是一种特殊的,面向组件的编程思想,这种思想和用惯了面向对象的编程思想的我来说,非常不习惯。Tinyos和nesC为什么难学? 因为他没有正常的教科书,不像C, C++,Java 一样有专门的书或者资料,告诉你需要实现什么功能,要去用到什么类(这里是组件),要去用什么接口,要去用什么函数。 Tinyos完全没有这些东西,什么都是让你自己去摸索和实践。
所以你有太多的不习惯:
1. 你不习惯NesC程序的基本组成是Component,每个Component是一个*.nc文件。这里不像Java,大家都知道java当中的类是有继承关系,有子类超类等等。你只需要知道一些简单的类,就可以自己扩展学习,即使有没见过的类,也可以找到很详细的介绍和使用方法。NesC中没有类的概念,自然也就没有子类超类,没有继承,也就是说,如果你知道有这么一个Component,你就可以用这个Component 可以完成一定的工作。但是如果你不知道这个Component呢,尤其是某些底层的Component 那么嘿嘿~~!! 要么你像我一样,去逼自己看懂系统提供那些的Component,要么自己写一个。可问题你现在连最简单的blink程序都看不懂,更何况自己写了。所以每个用NesC的初学者都和瞎子差不多,说白了,你就是什么都不会的。你的C还有java经验都根本没用。当然,你会if 还有for语句,这是你在学习tinyos中唯一比买菜大妈强的地方。
2. 你不习惯NesC程序的中Component的使用方法。
NesC程序中采用了一种所谓的wiring的机制来指明component与component之间的关系。
3. 你不习惯NesC程序的中组件的层次结构,也就是接口,方法,属性,函数的关系。
第2章 TINYOS简介 .......................................................................................................... 1
2.1 NESC语言简介 ................................................................................................ 1
2.1.1 组件(components) ........................................................... 1
2.1.2 并发模型 ................................................................... 5
2.2 常用MAKE命令简介 .......................................................................................... 6
2.3 应用举例:BLINK ---TINYOS编程的“HELLO WORLD”程序 ............................................... 6
2.3.1 Blink配件 ................................................................. 7
2.3.2 BlinkC模块 ................................................................ 8
2.3.3 事件evenst和命令commands ................................................ 10
1Programming in TinyOSMark Terwilliger**************************/~m3terwilJanuary 8, 2003Taking a look at theMica mote hardwarewProcessor/radio boardCPU clock: 4 MHzProgram memory: 128 KBRAM: 4 KBNon-volatile storage: 512 KBRadio: 916 MHz frequencyProgrammable transistor potentiometer allows variable transmission power 3 Volt storageBuilt-in antenna provides 1-4 feet transmission range
Plug-In Sensor BoardMicrophone Sounder Magnetometer
Light Sensor 51-pin-connectorTemperature Sensor
AccelerometerBase Station/Programming Board
Serial Port ConnectionParallel Port ConnectionProcessor/Radio Board
51-Pins ConnectorsWhat is TinyOS?wSmall, open source, energy efficient operating system designed by UC BerkeleywIt was designed specifically for networked sensorswEvent-based systemEach system module is designed to operate by continually responding to incoming eventsMore TinyOS stuffwTwo-level schedulingEvent handlers deal with hardware interruptsTasks lExecution mechanism provided for long running computationslRuns to completion in backgroundlCan be interrupted by low-level system eventslTask scheduling performed by simple FIFO queue
TinyOS 2.x 编程入门教程
Version 1.0
2010/12/17
目录
前言 ........................................................................................................................................... 1
第1章 编程环境的建立 ....................................................................................................... 2
1.1 安装JAVA 1.6 JDK ........................................................................................... 2
1.2 安装CWGWIN(WINDOW ONLY) .................................................................................. 2
1.3 安装编译器 ................................................................................................... 3
1.4 安装TINYOS工具 ............................................................................................ 3
1.5 设置环境变量 ................................................................................................ 4