www.mikrocontroller.net

Forum: Compiler & IDEs Umstieg auf Atmel ARM ?


Autor: Steve (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe mich mittlerweile recht gut in die Atmel AVRs eingearbeitet und 
einige kleine bis mittlere Projekte damit realisiert. Nun möchte ich 
mich mit den ARM Prozessoren, speziell mit dem AT91SAM7X256, näher 
beschäftigen. Dazu habe ich mir das Evolutionboard aus dem Shop hier 
(welches noch nicht lieferbar ist) ausgesucht, und auch schon mal ein 
bischen nach Quellcodebeispielen gesucht, kann aber dabei nicht so recht 
"den Anfang" in der für mich unübersichtlichen Fülle (Stichwort 
Hallo-Welt) finden. Gibt es vielleicht dazu so eine Art Tutorial, 
ähnlich dem ASM AVR Tutorial, mit dessen Hilfe man die ersten Schritte 
hinbekommt ?

Gruß
S

Autor: Martin Thomas (mthomas) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man kann auch bei ARM-Controllern mit Assembler anfangen. Sicher lernt 
man dabei viel aber es ist recht mühsam. LED-an/aus mit Warteschleife 
hat man schnell auch in Assembler gebastelt aber alles weitere ist in 
Assembler doch beschwerlich. C ist die Sprache der Wahl und am Besten 
erstmal mit vorgefertigten "Programmskeletten" arbeiten. Später kann man 
sich immer noch in die Feinheiten wie der Intialisierung der Stacks, des 
Linkens, Startup-Codes und Interrupt-Handling einarbeiten. Die 
Archtitektur ist schon deutlich komplexer als bei 8-bit AVR. Ein "Hello 
World" der Mikrocontollerprogrammierung in Form eine LED-Blinkers in C 
findet sich für viele ARM Controller in den Beispielsammlungen 
kommerzieller Entwicklungsumgebungen (z.B. IAR EWARM, Keil MDKARM, 
Rowley Crossworks for ARM). Von Atmel gibt es inzwischen 
Application-Notes zur Einführung mit Eclipse und GNU-Toolchain (gcc, 
genutzt wird das Yagarto-Packet) für verschiedene SAM7. Vgl. 
atmel.com->products->AT91->application-notes.  Auch Jim Lynch's Tutorial 
für SAM7 ist brauchbar (ebenfalls von atmel.com). Da SAM7X mehr oder 
weniger "erweiterte" SAM7S sind, helfen vielleicht auch meine Beispiele 
etwas weiter: 
http://www.siwawi.arubi.uni-kl.de/avr_projects/arm...

Autor: Steve (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Martin!

Danke für die Tips!
Ich wollte auf den ARMs natürlich nicht mit Assembler angefangen, ich 
meinte eher der "Stil" des AVR ASM Tutorials. Assembler habe ich nicht 
mal mit den AVRs benutzt. Ich habe zunächst das PDF, welches in dem 
ZIP-File unter den Atmel-Application Notes  von Atmel zu finden ist 
durchgelesen. Darin geht es hauptsächlich um das einrichten von Eclipse 
mit GCC. Das hat leider nicht hingehauen; Klickt man auf Project->Build 
Project passiert: Nichts :-(
Also habe ich mal nach altbewährter Manier wie beim avr-gcc über 
Programmers Notepad II das makefile aufgerufen, und siehe da, alles 
dufte: Ich konnte ein Beispielprojekt von Dir (at91sam7_uart_simple_) 
compilieren, .hex wurde erzeugt. Erschreckend finde ich als ARM Anfänger 
den ganzen "Overhead", um den Prozessor zu initialisieren etc.. Nun gut, 
ein ARM ist halt mal komplexer als ein AVR.
Ebenfalls die Sache mit FreeRTOS habe ich noch nicht so ganz überblickt. 
Ich habe schon viel mit RTOS auf einem Beck IPC SC12 gebastelt. Der 
große Vorteil bei diesem ist dass bereits ein Filesystem und 
Netzwerkfunktionen (open_socket etc.) darin implementiert sind. Wenn ich 
das richtig verstanden habe ist das wohl bei FreeRTOS für den ARM nicht 
so. Was bringt mir dann das FreeRTOS, abgesehen von der Möglichkeit 
mehrer Tasks laufen zu lassen ?

Nun gut, nun möchte ich mal etwas in die Praxis gehen. Ich möchte mir 
aus dem Shop hier das 7x256 Board und den USB JTAG Programmer holen 
(Andreas, wann werden die beiden Sachen lieferbar sein ?). Welches Tool 
muss ich verwenden um die Applikation in das Board zu kriegen ?

Fragen über Fragen, aber aller Anfang (und Umstieg) ist schwer...

Gruß
Stefan

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.