Forum: Mikrocontroller und Digitale Elektronik Entwicklungsumgebung für ARM


von Mark O. (Gast)


Lesenswert?

Ich suche nach einer Entwicklungsumgebung für ARM Controller die 
folgende Kriterien erfüllt:

- Reibungsloses debugging von AT91SAM7 controllern mit Wiggler oder 
JtagKey-Hardware
- Gute Verbreitung (viele Samples für genannten Controller)
- Einfaches Handling (ich will nicht viel mit makefiles, linker scripts 
etc rum machen müssen, wäre super wenn das einigermaßen einfach geht)

Das ganze sollte preislich nicht im top Segment liegen, also ein 
moderater Anschaffungspreis wäre gut.

von Nils B. (nordlicht_nils)


Lesenswert?

Hallo Mark,

ich arbeite mit Rowley CrossWorks für ARM.
Das kann ich empfehlen, weil:

- Es ist relativ günstig. Eine Personal License gibts für 75 Pfund
  (vorrausgesetzt Du willst nichts Kommerzielles damit treiben)
- Es unterstützt den Wiggler
- Alles ist in die IDE integriert, also compilieren und Debuggen ohne
  Hexerei
- guter Support
- Support Packages für viele µCs- und Boardtypen
- Läuft auch unter Linux

Das ganze kann man 30 Tage kostenfrei und ohne Beschränkungen testen. 
Die stellen sich aber auch nicht so an, wenn man (auch mehrmals) die 
Evaluation Phase verlängern möchte.

Der einzige Haken an der Sache ist, dass die meisten Beispiele, die man 
so im Netz findet, eher unter IAR entwickelt wurden und nicht ohne 
kleine Änderungen mit den CrossWorks-Libs laufen.

Gruß, Nils

von Robert Teufel (Gast)


Lesenswert?

Ein paar kluge? Ratschlaege meinerseits duerfen natuerlich auch nicht 
fehlen ;-)
Erst mal schliesse ich mich der Meinung des Vorschreibers komplett an, 
Crossworks ist das Paket, das Du beschrieben hast und es ist stabil und 
wenn Du recht gut bist in Englisch, dann wird auch der Support von Paul 
gut sein. Fuer IAR und Keil gibt es wohl mehr Beispiele im Netz und auch 
deutschsprachigen Support aber die sind dann wahrscheinlich in dem 
Segment was Du als Top Preise bezeichnest. Allerdings sind die echten 
Top-Preise von Greenhills und ARM (RVDS) selbst. Da gibt es fuer mehr 
Geld deutlich weniger als von IAR oder Keil, z.B. keinen Flash 
algorithmus. Also Rowley  http://www.rowley.co.uk bietet einfach gute 
Leistung fuers Geld. Wenn das Budget es erlaubt wuerde ich immer noch 
Keil oder IAR kaufen weil damit auch Betriebssystemanbindung einfacher 
ist aber die sind einfach etwas teurer in der Anschaffung.

Robert

von Random .. (thorstendb) Benutzerseite


Lesenswert?

Ich arbeite jetzt seit längerem mit den Keil Vision Tools für ARM, und 
kann die nur empfehlen. Preislich im mittleren Segment, Top-Support und 
eine Vielzahl von Beispielen zu allen gängigen Boards. Zudem gibt es 
eine codegrössenbegrenzte Demo (16k?). Sehr schön ist auch der jeweils 
mitgelieferte Startup-Code für die einzelnen Controller-Derrivate, was 
einem eine Menge Arbeit erspart.

Habe mir vor kurzem das AT91SAM7X-Board zugelegt. Keil µVision 
angeworfen, Beispiel geladen, compiliert und runtergeladen, läuft. 
Sozusagen ein plug&play-quickstart :-) Ich möchte nicht mehr drauf 
verzichten!

Zudem sei noch bemerkt, dass hinter den Keil ARM Tools standardmässig 
der "grosse" ARM-Compiler von ARM, also der aus RVDS, seinen Dienst tut. 
Und für ARM-basierte µCs gibtz wohl keinen besseren Compiler als den 
ARM-Compiler selbst ;-) Sowohl in der Effizienz des Codes als auch in 
der Grösse des erzeugten Codes liegt dieser Compiler sehr weit vorne, 
was z.B. bei komerziellen Entwicklungen RAM/FLASH sparen würde zur 
Verwendung des nächst-kleineren Controllers.


Greetz,
/r.

von Markus Scheuer (Gast)


Lesenswert?

Hallo,

ich benutze die Yagarto Toolchain.
Damit arbeite ich zur Zeit auf dem AT91SAM7SE512.


Bevor ich mit dem ARM angefangen haben, habe ich die verschiedenen Tools 
ausprobiert (IAR, WinARM, usw.)
Ich bin damals am meinfachsten mit der Yagarto Variante zurecht gekommen 
(http://www.yagarto.de).

Der Schnellste Weg zu einem Lauffähigen Code war die IAR-Toolchain, 
jedoch ist diese doch recht teuer. Wenn man Code mit nur wenigen 
KB-Schrieben will, dann kann man diese Benutzen.

Gruß,

Markus Scheuer

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Sofern man das Entwicklungssystem nicht kommerziell einsetzt, bietet die 
"Personal License" von Rowley eine technisch unbeschränkte* Version für 
einen noch bezahlbaren Preis.


*) keine Codegrößenbeschränkung o.ä., nur das Verbot, damit entwickelte 
Programme/Libraries etc. kommerziell einzusetzen.

von gast (Gast)


Lesenswert?

also ich nutze (wenn ich nicht gerade auf kriegsfuß mit den arms stehe) 
auch die rowley-umgebung (zwar die alte 1.5'er, und das [zu meiner 
schande] auch nicht ganz legal) aber ich bin von dem paket so begeistert 
das ich mir die personal license demnächst ordern werde.

allerdings habe ich (weiß nicht ob aus dummheit oder nicht-lesen-können) 
ein problem mit der 1.5'er version und meinem at91sam7s256.
damit bekomme ich kein programm in den arm. mit einem lpc2106 läuft 
alles prima (von den paar sachen die ich damit gemacht habe).
kennt jemand das problem (1.5'er und at91sam7s256) oder bin ich es 
selbst schuld ? (wegen nicht ganz legaler kopie)

hoffe es kann/darf mir jemand antworten.
mir geht es eigentlich nur darum rauszufinden ob ich mir den controller 
zerschossen haben könnte (stichwort samba) oder ob die 1.5'er noch 
probleme mit den damals "neueren" arms hatte. (wohlgemerkt nur das 
programmieren !!, compilieren lief einwandfrei wie beim lpc2106 auch)

von Lupin (Gast)


Lesenswert?

@Markus Scheuer:

Yagarto habe ich auch schon ausprobiert, die toolchain ist nicht 
schlecht aber irgendwie lief das debugging bei mir nicht so stabil.

@Random:

Mit den original compiler von ARM habe ich auch schon einmal was 
gemacht, den fand ich auch sehr ansprechend. Wenn man den von ARM 
bezieht ist der aber nicht ganz billig (das nannte sich damals ARM 
Developer Suite). Also ich probier jetzt erstmal Crossworks aus, wenn es 
das nicht sein sollte halt Keil.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Die aktuelle Crossworks-Version (1.7) unterstützt jetzt auch 
FT2232-basierende USB-JTAG-Adapter à la OpenOCD.

von gast (Gast)


Lesenswert?

@rufus

ist dir bekannt das die 1.5'er version den at91sam7s256 nicht richtig 
programmiert ?
der lpc machte keine probleme, aber der at91sam7s256 lässt sich nicht 
programmieren. beim auslesen des speichers stand immer noch der selbe 
inhalt darin wie vorher.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Nö, ist mir nicht bekannt - habe die Kombination nicht verwendet. Mal 
den Rowley-Support deswegen kontaktiert? Paul Curtis von Rowley ist auf 
lpc2000@yahoogroups.com sehr aktiv, vielleicht hilft auch ein Posting 
dort.

von gast (Gast)


Lesenswert?

@rufus

erstmal danke.

werd mal mit der 1.7'er version rumspielen und wenns klappt kauf ich mir 
diese. (habe ich ja eh vor).

noch eine frage an alle :

woher kann man die personal license für rowley beziehen ?
habe bei elmicro (angegebener distributor von rowley) nachgefragt und 
die hatten nur die commercial license.
in dem shop (link von rowley) gibts ebenfalls nur die commercial 
version.
muß man da extra anrufen und eine personal license bestellen ?
(also bei rowley direkt)

von Kai F. (k-ozz)


Lesenswert?

Lies dir auf der folgenden Seite mal den Absatz "Personal Licensing 
Terms" durch. Da steht alles drin.

http://www.rowley.co.uk/crossworks/Licensing.htm

von gast (Gast)


Lesenswert?

danke kai,

somit hat sich mal wieder bestätigt : "wer lesen kann ist klar im 
vorteil"
:-(

man möge mich schlagen ...

danke für den hinweis

von Nils B. (nordlicht_nils)


Lesenswert?

Hallo Gast,

wenn Du vorher mit Samba programmiert hast, sind wahrscheinlich die 
Lock-Bits gesetzt, so dass Du nicht mehr den Flash beschreiben kannst.

Erst ab Version 1.6 (glaube ich) löscht CrossWorks die Lock-Bits, bevor 
es den Flash beschreibt.

Mit Version 1.7 sollte es auf jeden Fall gehen.

Gruß, Nils

von gast (Gast)


Lesenswert?

@nils

mit samba hab ichs nicht probiert. wollte direkt programmieren und 
debuggen.
hab also versucht das programm runterzuladen (einmal mit gesteckem TST 
jumper und eimal ohne), und beide male stand im flash was anderes drin.

werde mal die 1.7'er version testen.

vielen vielen dank !!

von Nils B. (nordlicht_nils)


Lesenswert?

Hallo Gast,

das mit dem TST-Jumper läuft anders. Wenn du nochmal irgendwann mit 
Samba programmieren willst, dann mußt Du:

- TST Jumper stecken
- Board einschalten
- 10 Sekunden warten
  (In der Zeit wird der Bootloader an den Anfang vom Flash kopiert)
- Board ausschalten
- Jumper abziehen
- Board wieder einschalten
- Mit SAM-BA flashen

Aber -wie schon oben angedeutet- dann setzt SAM-BA wieder die Lock-Bits 
für den Bootloaderbereich.

Gruß, Nils

von gast (Gast)


Lesenswert?

@nils

danke für die hinweise.
samba ist für mich allerdings erstmal uninteressant, da ich voerst eh 
nur programmiere und debugge. den bootloader kann man später vielleicht 
mal brauchen. hauptsache das dingen bekomme ich überhaupt zum laufen.
ist eigentlich ne schande das ich immernoch nicht in der lage bin mit 
den arms was gescheites zu machen (und das nach 2 jahren) obwohl ich 
schon msp430 und avrs programmiere wie blöd ...
ich mach wohl was falsch :-(

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.