mirror of
https://github.com/oliverschmidt/contiki.git
synced 2024-12-22 10:30:13 +00:00
221 lines
6.2 KiB
Markdown
221 lines
6.2 KiB
Markdown
|
Contiki Examples
|
||
|
================
|
||
|
|
||
|
The examples/ directory contains a few examples that will help you get
|
||
|
started with Contiki.
|
||
|
|
||
|
To run the example programs, you need either to be running Linux or FreeBSD (or
|
||
|
any other UNIX-type system), or install Cygwin if you are running Microsoft
|
||
|
Windows [http://cygwin.com](http://cygwin.com). As a minimum you will need to
|
||
|
have the gcc C compiler installed. To run the examples in the 'netsim' target,
|
||
|
you need to have GTK 1.x development libraries installed. These are usually
|
||
|
called 'gtk-devel', 'libgtk1-devel' or similar in your Linux software
|
||
|
installation programs.
|
||
|
|
||
|
compile-platforms/
|
||
|
------------------
|
||
|
|
||
|
A test script that compiles Contiki for a number of platforms and reports any
|
||
|
errors found during the build.
|
||
|
|
||
|
email/
|
||
|
------
|
||
|
|
||
|
An email program supporting SMTP. It can be compiled and run in the 'win32'
|
||
|
target by typing the following commands:
|
||
|
|
||
|
cd examples/email
|
||
|
make
|
||
|
./email-client.win32
|
||
|
|
||
|
Most likely you'll have to adjust the TCP/IP values set in main() in
|
||
|
platform/win32/contiki-main.c to match your needs.
|
||
|
|
||
|
Please consult cpu/native/net/README-WPCAP as well.
|
||
|
|
||
|
esb/
|
||
|
----
|
||
|
|
||
|
A set of demo applications for the ESB board.
|
||
|
|
||
|
ftp/
|
||
|
----
|
||
|
|
||
|
An FTP client supporting download. It can be compiled and run in the 'win32'
|
||
|
target by typing the following commands:
|
||
|
|
||
|
cd examples/ftp
|
||
|
make
|
||
|
./ftp-client.win32
|
||
|
|
||
|
Most likely you'll have to adjust the TCP/IP values set in main() in
|
||
|
platform/win32/contiki-main.c to match your needs.
|
||
|
|
||
|
Please consult cpu/native/net/README-WPCAP as well.
|
||
|
|
||
|
hello-world/
|
||
|
------------
|
||
|
|
||
|
A really simple Contiki program that shows how to write Contiki programs. To
|
||
|
compile and test the program, go into the hello-world directory:
|
||
|
|
||
|
cd examples/hello-world
|
||
|
|
||
|
Run the 'make' command.
|
||
|
|
||
|
make
|
||
|
|
||
|
This will compile the hello-world program in the 'native' target. This causes
|
||
|
the entire Contiki operating system and the hello-world application to be
|
||
|
compiled into a single program that can be run by typing the following command:
|
||
|
|
||
|
./hello-world.native
|
||
|
|
||
|
This will print out the following text:
|
||
|
|
||
|
Contiki initiated, now starting process scheduling
|
||
|
Hello, world
|
||
|
|
||
|
The program will then appear to hang, and must be stopped by pressing the C key
|
||
|
while holding down the Control key.
|
||
|
|
||
|
irc/
|
||
|
----
|
||
|
|
||
|
An IRC client. It can be compiled and run in the 'win32' target by
|
||
|
typing the following commands:
|
||
|
|
||
|
cd examples/irc
|
||
|
make
|
||
|
./irc-client.win32
|
||
|
|
||
|
Most likely you'll have to adjust the TCP/IP values set in main() in
|
||
|
platform/win32/contiki-main.c to match your needs.
|
||
|
|
||
|
Please consult cpu/native/net/README-WPCAP as well.
|
||
|
|
||
|
multi-threading/
|
||
|
----------------
|
||
|
|
||
|
A quite simple demonstration of the Contiki multi-threading library
|
||
|
employing two worker threads each running a recursive function. It
|
||
|
can be compiled and run in the 'native' target by typing the
|
||
|
following commands:
|
||
|
|
||
|
cd examples/multi-threading
|
||
|
make
|
||
|
./multi-threading.native
|
||
|
|
||
|
rime/
|
||
|
-----
|
||
|
|
||
|
Contains a set of examples on how to use the Rime communications
|
||
|
stack. To run those examples in the 'netsim' target (a very simple
|
||
|
Contiki network simulator), compile the programs with:
|
||
|
|
||
|
make TARGET=netsim
|
||
|
|
||
|
You will need to have GTK 1.x development libraries installed.
|
||
|
|
||
|
Run the different programs:
|
||
|
|
||
|
./test-abc.netsim
|
||
|
./test-meshroute.netsim
|
||
|
./test-rudolph0.netsim
|
||
|
./test-rudolph1.netsim
|
||
|
./test-treeroute.netsim
|
||
|
./test-trickle.netsim
|
||
|
|
||
|
Most of the examples requires you to click with the middle mouse
|
||
|
button on one of the simulated nodes for something to happen.
|
||
|
|
||
|
sky/
|
||
|
----
|
||
|
|
||
|
Examples inteded for running on the Tmote Sky board. To compile those, you need
|
||
|
to have msp430-gcc (the gcc C compiler for the MSP430 microcontroller)
|
||
|
installed.
|
||
|
|
||
|
The follwing programs are included:
|
||
|
|
||
|
- blink.c A simple program that blinks the on-board LEDs
|
||
|
- sky-collect.c Collects sensor data and energy profile values to a sink.
|
||
|
Press the "user" button on the Tmote Sky that is connected to the PC to make
|
||
|
the node a sink.
|
||
|
- test-button.c Toggles the LEDs when the button is pressed.
|
||
|
- test-cfs.c Tests the 1 mb flash memory of the Tmote Sky
|
||
|
|
||
|
telnet-server/
|
||
|
--------------
|
||
|
|
||
|
A simple TCP telnet server with a simple command shell. It can be
|
||
|
compiled and run in the 'minimal-net' target by typing the following
|
||
|
commands:
|
||
|
|
||
|
cd examples/telnet-server
|
||
|
make
|
||
|
./telnet-server.minimal-net
|
||
|
|
||
|
Most likely you'll have to adjust the TCP/IP values set in main() in
|
||
|
platform/minimal-net/contiki-main.c to match your needs.
|
||
|
|
||
|
Please consult cpu/native/net/README-WPCAP as well if you are running
|
||
|
Microsoft Windows.
|
||
|
|
||
|
webbrowser/
|
||
|
-----------
|
||
|
|
||
|
A text mode web browser supporting links and forms. It can be compiled
|
||
|
and run in the 'win32' target by typing the following commands:
|
||
|
|
||
|
cd examples/webbrowser
|
||
|
make
|
||
|
./webbrowser.win32
|
||
|
|
||
|
Most likely you'll have to adjust the TCP/IP values set in main() in
|
||
|
platform/win32/contiki-main.c to match your needs.
|
||
|
|
||
|
Please consult cpu/native/net/README-WPCAP as well.
|
||
|
|
||
|
webserver/
|
||
|
----------
|
||
|
|
||
|
A web server supporting dynamic content creation using "scripts" which
|
||
|
are actually compiled-in C-functions. It can be compiled and run in the
|
||
|
'minimal-net' target by typing the following commands:
|
||
|
|
||
|
cd examples/webserver
|
||
|
make
|
||
|
./webserver-example.minimal-net
|
||
|
|
||
|
As an alternative to the static and dynamic compiled-in content the web
|
||
|
server can instead support "external" static-only content loaded from
|
||
|
any storage supported by the 'Contiki File System' (CFS) interface. To
|
||
|
compile it in the 'minimal-net' target and have it load files from disk
|
||
|
use the following command:
|
||
|
|
||
|
make HTTPD-CFS=1
|
||
|
|
||
|
Most likely you'll have to adjust the TCP/IP values set in main() in
|
||
|
platform/minimal-net/contiki-main.c to match your needs.
|
||
|
|
||
|
Please consult cpu/native/net/README-WPCAP.markdown as well if you are running
|
||
|
Microsoft Windows.
|
||
|
|
||
|
wget/
|
||
|
-----
|
||
|
|
||
|
A command line program that retrieves files from web servers and saves them
|
||
|
using the 'Contiki File System' (CFS). It can be compiled and run in the
|
||
|
'minimal-net' target by typing the following commands:
|
||
|
|
||
|
cd examples/wget
|
||
|
make
|
||
|
./wget.minimal-net
|
||
|
|
||
|
Most likely you'll have to adjust the TCP/IP values set in main() in
|
||
|
platform/minimal-net/contiki-main.c to match your needs.
|
||
|
|
||
|
Please consult cpu/native/net/README-WPCAP as well if you are running
|
||
|
Microsoft Windows.
|