AVR-Ada v0.3 released

Admin Persönliche Seite #681158
Lesenswert?

Wer mal über den C/Assembler-Tellerrand blicken möchte, der sollte sich 
AVR-Ada anschauen. Ada wurde in den 70ern speziell für 
sicherheitskritische Embedded-Systeme entwickelt. Schon auf den ersten 
Blick fallen trotz der gewöhnungsbedürftigen Syntax viele Dinge auf die 
besser gelöst sind als in C. Zum Beispiel der Zugriff auf einzelne Bits, 
wie im folgenden Code:

C:
<pre>
      UCSR0B = (1<<RXEN0)|(1<<TXEN0);
</pre>

Ada:
<pre>
      USART0_Control_And_Status_B :=
        (RXEN => True,
         TXEN => True,
         others => False);
</pre>

Und ob man folgendes in C auch so schön schreiben könnte?
<pre>
   LCD_Driver.Init;
   LCD_Driver.G_Scroll_Mode := None;
   LCD_Driver.Scroll_Offset := 0;
   LCD_Driver.Colons := False;
   LCD_Driver.Update_Required := True;
</pre>

Unter den Beispielprogrammen ist eine LCD-Ansteuerung für das 
AVR-Butterfly und ein OneWire-Bibliothek.

Da AVR-Ada auf dem GCC basiert, ist eine ähnlich gute Codequalität wie 
bei AVR-GCC zu erwarten. Allerdings handelt es sich nach Angabe der 
Entwickler noch um eine Alpha-Version.

Im Moment ist AVR-Ada nur zum Selbstkompilieren erhältlich, allerdings 
ist geplant ihn in der nächsten Version von "WinAVR":/articles/WinAVR 
mitzuliefern.

Weitere Informationen und eine Installationsanleitung findet man auf der 
Webseite 
"http://avr-ada.sourceforge.net/":http://avr-ada.sourceforge.net/ .

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren