Anfänger: ARM in C programmieren

Gast #921390
Lesenswert?

Hallo!

Ich habe mir hier das Board mit dem Atmel Sam7s256 gekauft und habe 
Crossworks mal zum Test installiert, da ich ja mit Arms anfangen möchte.
Habe vorher Pics programmiert, da sich mein Lehrer mit denen am besten 
auskannte.
Habe nun das Problem, dass ich einfach nicht rein komme. Mein Problem 
ist auch, dass es verschieden Header-Files gibt, Crossworks hat eigene 
und die Beispiele die ich finde, verwenden meistens andere.
Kann mir da jemand einen Tipp geben oder irgendwie helfen, wie ich da 
mit dieser IDE weitermachen kann und vll dazupassende Beispiele finde.

Mfg Stefan
#921628
Lesenswert?

Hoi Stefan,
was hast du denn für eine Version von Crossworks? Beachte:
Nicht jeder ARM wird von der Software unterstützt. Du kannst dann zwar 
trotzdem Code dafür schreiben, nur wenns dann ans Linkerscript bzw. an 
den Startup-Code geht wirds etwas hässlich. Ansonsten kannst du dir von 
der Rowley-Seite sogenannte Board Support Packages runterladen - die 
brauchst, wenn du ein fertiges Development Board einsetzt. In den 
Packages sind dann alle Header-Dateien drin, die man für dieses Board 
braucht.

Wenn du ein selber gebautes Board verwendest, gibts dafür natürlich kein 
BS, da musst du dir dann halt das entsprechende Support Package für den 
jeweiligen Controller runterladen. In dem sind jeweils die 
Startup-Dateien und alle nötigen Header drin.

In der Dokumentation zum Crossworks findest du eine Beschreibung von 
allen mitgelieferten Header-Dateien und wozu man die braucht. Ist halt 
schon so: Wenn du irgend ein Beispiel aus dem Internet runterlädst, das 
nicht mit Crossworks gemacht wurde, dann sind da natürlich andere Header 
includiert und es werden u.U. andere Funktionen aufgerufen, als die in 
Crossworks verfügbaren. Da musst du dann halt ein bisschen rumpröbeln, 
geht wohl kaum anders. Es gibt im Programmordner, wo Crossworks 
installiert ist, 2 simple Beispiele, wo man nachschauen kann, wie man 
z.B. Interrupts initialisiert und solchen Kram. Mir persönlich haben die 
etwas weitergeholfen; da ich mein Board selber baue werde ich auch ein 
Board Support Package benötigen, das ich selber bauen muss.

Gruss
Gast #923303
Lesenswert?

Hallo Tobias!

Danke für deine Antwort.
Habe zuerst Crossworks 1.6 verwendet mit dem ich etwas zusammen gebracht 
habe. Dann habe ich die 1.7er Version gefunden und mit der komme ich 
überhaupt nicht klar. Nichts funktioniert mit dieser Version.
Also bleib ich mal bei der 1.6er. Ich werd mir die Beispiele anschauen, 
vll komm ich dann weiter, ist ziemlich schwer mit dem arm.
Danke für deine Hilfe.

Mfg Stefan
#926126
Lesenswert?

Ach so.
Der Bootloader liegt wohl ab Adresse 0 im Flash, was?
Das Flash muss aber gelöscht werden, bevor man was reinschreiben kann. 
Also MUSS sich dieser Samba beim Programmieren löschen. Denke ich mal. 
Ich kenn den nicht, aber so muss es ja wohl sein, denn sonst kann man 
nichts ins Flash schreiben, wenn das vorher nicht gelöscht wurde.

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