state_machine
[aversive.git] / README
1 == AVERSIVE  ==
2
3 Authors (see AUTHORS file for details) : 
4 - Christophe RIEHL
5 - Olivier MATZ
6
7 (Droids-Corporation, Microb Technology, Eirbot)
8
9 === Introduction
10
11 This is a development framework for AVR. You need avr-gcc to run
12 it. The goal of this project is to provide modules to make development
13 on avr easier.
14
15 Untar the archive (or checkout it from the CVS), run ./configure, it
16 will generate several Makefiles (if you skip this step, the main
17 Makefile will automatiquely do it for you). You can edit these files
18 to customize some settings. You can now type make to compile all tests
19 programs of the framework. If you want to create a new project, there
20 are some examples.
21
22 This is a development version, there are certainly a lot of
23 bugs. Don't hesitate to tell us if you find one.
24 ->      avr-list@droids-corp.org
25
26 You can also have a look to our bugzilla :
27 ->      http://bugzilla.droids-corp.org
28
29 There's a page about this project :
30 ->      http://wiki.droids-corp.org/mediawiki/index.php/Aversive
31
32 === The aversive source tree
33
34 config                  -> files related to aversive configuration
35   config/fuses_defs     -> fuse names and help
36   config/gen_headers    -> dirty scripts for generating some .h
37   config/scripts        -> project configuration scripts (imported 
38                                 from linux-2.4 kernel)
39
40 include                 -> generic Aversive include files, that are
41                                 not related to a module
42
43 mk                      -> Aversive Makefiles (project, module, and
44                                 templates) 
45
46 modules                 -> modules directory. A "module" is a small
47                                 library that provide a specific
48                                 functionnality
49   modules/base          -> common modules, frequently used
50   modules/comm          -> communication modules (uart, spi, i2c, ...)
51   modules/crypto        -> modules for cryptographic operations
52   modules/debug         -> helper modules for debugging
53   modules/devices       -> modules related to a device that is not
54                                 part of an Atmel AVR (lcd, motors, ...)
55   modules/encoding      -> buffer conversion (base64, hamming)
56   modules/hardware      -> generic interfaces module for specific AVR
57                                 hardware (timers, ADC, ...)
58   modules/ihm           -> Human-machine interface modules (menu, and
59                                 probably a future CLI)
60
61 projects                -> Project examples (to be enhanced)
62   projects/example1
63   projects/example2
64
65
66 === Using Aversive
67
68 You need avr-gcc/avr-libc to use Aversive. 
69
70 Once you have untared the archive (or checkouted it from the CVS), you
71 can run 'make' to compile all tests programs.
72
73 ---
74
75 If you want to compile a test program:
76
77 cd projects/example1
78 make menuconfig 
79 make
80
81