Forum: µC & Digital Electronics [Announce] AVR-Ada V0.4.0 released

Author: Rolf Ebert (Guest)
Posted on:

Rate this post
0 useful
not useful
We are proud to announce a new release of AVR-Ada, one of the first
GCC based Ada compilers targeting 8-bit microcontrolers.

You get the project description and some documentation at


The Sourceforge development pages with the download section are at


AVR-Ada is available in source and binary form.  Binary packages of
the cross compiler hosted on Linux and Windows are available in the
download area. A future release of WinAVR (winavr.sourceforge.net)
will probably also include AVR-Ada.

Feel free to join the mailing list at


It has quite low traffic.

Please use SF's bug reporting and feature request system for guiding
future development of AVR-Ada.


The goal of the AVR-Ada project is to make the gcc based Ada compiler
GNAT available for the AVR microcontrollers.

More specifically the project provides

 -  a GNAT compiler based on the existing AVR and Ada support in gcc
 -  a minimalistic Ada runtime system
 -  a useful AVR specific support library

The current distribution of AVR-Ada is V0.4.0. It is based on gcc-3.4.6
and gcc-4.1.1 (prerelease).  In the AVR-Ada project we rarely have
problems with the Ada compiler itself. It is quite stable.

The Ada run time system (RTS) on the other hand is for the most part
not even a run time system.  It is more a compile time system :-).
Most files in the RTS are only needed at compile time.  As a
consequence we don't have support for exceptions nor for tasking

There is some AVR specific support.  Type and interface
definitions, timing routines, eeprom access, UART, and most
importantly the necessary definitions for most AVR parts.

Some sample programs in the apps/ directory show how to use the
compiler and the library.  This includes the demo programs from
the avr-libc distribution and some of Peter Fleury's example programs
translated to Ada.

The documentation is still low and consists only of the pages at
avr-ada.sourceforge.net.  A copy of the pages is in the directory
AVR-Ada-0.4.0/web/ for offline reading.  Feel free to ask any question
on the mailing list.


V 0.4.0 (2006-05-11)

The part description Ada specs are now based on Atmel's XML part
description files of AVR Studio 4.12 build 473 SP 2 + Atmega644p.

Limited support for new devices: at90can32 at90can64 at90pwm2 at90pwm3
at90usb1287 atmega1280 atmega1281 atmega164p atmega165 atmega165p
atmega169p atmega324p atmega325 atmega3250 atmega329 atmega3290
atmega406 atmega640 atmega644 atmega644p atmega645 atmega6450
atmega649 atmega6490 attiny24 attiny25 attiny261 attiny44 attiny45
attiny461 attiny84 attiny85 attiny861

We build part specific runtime systems (RTS) now. Old Makefiles have
to be adjusted!

The AVR-lib has new packages: Watchdog, Sleep, Int_Img. (Note that not
all packages have been ported to all devices).

Updated scripts to build AVR-Ada with gcc-3.4.6 and gcc-4.1.0 are now
located in tools/build/.

New script (wizard) to generate a ready-to-compile project directory
with all necessary files (tools/mk_ada_app/).

New examples (largedemo, debounce) are located in apps/.

New bug fixes and workaounds for gcc-3.4 and gcc-4.1 are located in


Entering an e-mail address is optional. If you want to receive reply notifications by e-mail, please log in.

Rules — please read before posting

  • Post long source code as attachment, not in the text
  • Posting advertisements is forbidden.

Formatting options

  • [c]C code[/c]
  • [avrasm]AVR assembler code[/avrasm]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]

Bild automatisch verkleinern, falls nötig
Note: the original post is older than 6 months. Please don't ask any new questions in this thread, but start a new one.