Menu

Status Log in to Edit

Status

The current version of AVR-Ada is V1.2 based on gcc-4.7.2.

The provided Ada run time system (RTS) 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 only have limited support for exceptions and no tasking (multi-threading).

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

Some sample programs 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 (these programs are from 2006 and need some updates).

The documentation consists only of the pages here in the Wiki. Feel free to ask any question on the mailing list.

Supported Devices

We distinguish between primary devices and supported devices. Primary devices are used by the developers of AVR-Ada. The sample programs and the library have been tested with primary devices only.

Primary Devices

atmega8 atmega168 atmega169 atmega32 atmega328p atmega644p atmega2560
attiny13 attiny4313 attiny85

Supported Devices

Supported devices only have a stripped down support library. If you want to use one of them, drop us a note on the mailing list and we make it a primary device. If your preferred device is not listed here, then also drop us a note and we shall include it.

at90can128 at90can32 at90can64 at90pwm2 at90pwm3 at90s2313 at90s2323 at90s2343 at90s4414 at90s4433 at90s4434 at90s8515 at90s8535 at90usb1287 atmega103 atmega128 atmega1280 atmega1281 atmega16 atmega161 atmega162 atmega163 atmega164p atmega165 atmega165p atmega168 atmega169 atmega169p atmega2560 atmega2561 atmega32 atmega323 atmega324p atmega325 atmega3250 atmega329 atmega3290 atmega406 atmega48 atmega64 atmega640 atmega644 atmega644p atmega645 atmega6450 atmega649 atmega6490 atmega8 atmega8515 atmega8535 atmega88 attiny13 attiny22 attiny2313 attiny24 attiny25 attiny26 attiny261 attiny44 attiny45 attiny461 attiny85 attiny861

Future Development

The next version will be AVR-Ada V2.0.0 . It will be based on gcc-9. The only primary device will be the ubiquituous atmega328p of Arduino fame. If we feel couragous, we might add the avrtiny85 and the atmega32usb to the primaries. I don't test on anything else.

later AVR-Ada versions

  • Ada tagged types, interfaces, and dynamic dispatch
  • Arduino package to access the general purpose IO pins using the Arduino naming scheme

Related

Wiki: Home
Wiki: SimpleIO

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.