Aversive
De Wikidroids
Sommaire |
Aversive, libraries and framework for AVR microcontrollers
Aversive is a GPL development framework for Atmel AVR microcontrolers. Its aim is to provide easy-to-use tools for developing a C application for these microcontrolers. Our goal is to provide portable (on every AVR devices) and small libraries that are useful for starting a new project with an AVR device.
The project uses the gcc with the avr-libc under linux or winavr under windows (which is a package that contains gcc toolchain, binutils, libc, ... for AVR).
Documentation
- Dev guide/FAQ
- Modules Documentation under working.
- Documentation about the control system engine in Aversive.
- Source documentation (generated with doxygen, not very useful currently)
Download it
Last stable is Aversive 1.1 ; I advice to use the daily snapshot if you want latest features.
- Current daily tgz snapshot
- Aversive 1.1 tgz (2008-05-14)
- Aversive 1.0 tgz (2006-02-21)
Interresting links
Who uses Aversive ?
- Microb_Technology
- Maggie
- Keydoo
- Eirbot (since 2006)
- Esial Robotik 2007
- Projet & Tech' 2008 (they ported a part of Aversive for 8051, hosted in a FPGA)
- NASA ....or not ;)
The aversive Team
The main developers are Zer0 and Tof. A part of the code is developed by Eirbot, the robotic club of ENSEIRB, and some other small parts come directly from other GPL projects.
The Aversive source tree
This is the content of Aversive tarball :
+-config -> files related to aversive configuration | +-config/fuses_defs -> fuse names and help | +-config/gen_headers -> dirty scripts for generating some .h | +-config/scripts -> project configuration scripts (imported | from linux-2.4 kernel) | +-include -> generic Aversive include files, that are | not related to a module | +-mk -> Aversive Makefiles (project, module, and | templates) | +-modules -> modules directory. A "module" is a small | | library that provide a specific | | functionnality | +-modules/base -> common modules, frequently used | +-modules/comm -> communication modules (uart, spi, i2c, ...) | +-modules/crypto -> modules for cryptographic operations | +-modules/debug -> helper modules for debugging | +-modules/devices -> modules related to a device that is not | | part of an Atmel AVR (lcd, motors, ...) | +-modules/encoding -> buffer conversion (base64, hamming) | +-modules/hardware -> generic interfaces module for specific AVR | | hardware (timers, ADC, ...) | +-modules/ihm -> Human-machine interface modules (menu, and | probably a future CLI) | +-projects -> Project examples (to be enhanced) +-projects/example1 +-projects/example2
Contributing
You can send a mail to our mailing list (avr-list@droids-corp.org). If you want to subscribe to it, send a mail to avr-list-request@droids-corp.org with a subject of "subscribe". This list is mainly french-speaking.
The archive of the mailing list are available at gmane.
You can also have a look at the Aversive/Devguide if you want to have more informations about developing in Aversive.