21.08.2012 Aufrufe

Computertechnik mit Mikrocontrollern

Computertechnik mit Mikrocontrollern

Computertechnik mit Mikrocontrollern

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

KAPITEL 13. AUFBAU DES SYSTEMS 160<br />

ist nicht nur schlecht zu lesen, sondern macht auch Probleme,<br />

wenn das Programm auf ein anderes Mikrocontrollermodell<br />

portiert werden soll. Deshalb wird normalerweise eine<br />

Datei <strong>mit</strong> dem Befehl .include eingeführt, die die Werte für<br />

das entsprechende Modell definiert. Das avr-binutils-Paket ist<br />

primär auf die Programmiersprache C ausgerichtet. So ist es<br />

verständlich, dass die vom Prozessor abhängigen Includefiles<br />

nur für C und nicht für Assembler vorhanden sind. Mit einem<br />

(nicht ganz sauberen) Trick kann man die C Includefiles auch<br />

für Assembler nutzen. Es wird der C Präprozessor eingesetzt.<br />

avr-cpp -mmcu=atmega48 fastled.s | sed ”s/ + 0x20//g” |<br />

avr-as<br />

Leider muss ein kleines Problem <strong>mit</strong> dem Streameditor sed<br />

ausgebügelt werden. Dies ist natürlich bei der Programmierung<br />

zu berücksichtigen. Statt ” + 0x20” verwende man<br />

”+32”, falls die Konstante gebraucht wird.<br />

An den Anfang der Datei stellt der zusätzliche cpp-Befehl<br />

#include <br />

zusammen <strong>mit</strong> der -mmcu Option die Konstanten als Namen<br />

entsprechend dem Datenblatt von Atmel zur Verfügung. Die<br />

Kommentare der Befehle des obigen Hauptprogramms können<br />

jetzt in die Befehle integriert werden.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!