Hallo, seit ca. 1 Woche versuche ich, informationen zum Thema Cortex-M3 zusammenzutragen. Und es ist wie im richtigen Leben: Je mehr man sucht, desto verwirrter wird man. Ich möchte auf den Cortex-M3 einsteigen. Es gibt ja schon viele (und dem Preis zum Vorteil) immer mehr Lizenznehmer, deren Chips auch tatsächlich verfügbar sind. Meine persönliche Zusammenfassung: - Es gibt diverse Toolchainhersteller, die kostenlos eine Eval-/Trialversion bis z.B. 32kB Debugging anbieten. - Man braucht üblicherweise einen JTAG-Adapter, der auch von der Toolchain angesprochen wird. Hiervon gibt es Originale und diverse Clone bei Äbäh (die sich natürlich im Preis enorm unterscheiden). Sinniger Weise nimmt man alles aus einer Hand (außer man nimmt OpenOCD etc., wo man selbst viel konfigurieren muß) - Es gibt diverse Anbieter von Dev-Boards (auch hier "Orginale" und Nachbauten). Nur: Wenn man nicht weiß, wo man später hin will (weil man ja erst lernen will): Mit welchem Kauf macht man nichts verkehrt? JTAG-Adapter ULINK-ME scheint es zur Zeit sehr günstig bei Toshiba zu geben (man ist damit aber an µVision gebunden), oder man nimmt den J-Link von Segger (ohne "IDE", aber µVision geht hier auch. Generell tendiere ich zu einem "Original", weil ich chinesisch zwar gerne esse, aber ... und ich zweitens auch in Zukunft wohl Support haben werde. Ist JTAG überhaupt (noch) das Mittel der Wahl oder werden die anderen Verfahren (SDW oder so ähnlich) bald das Rennen machen? Kurzum: Ich werde wohl gut 200 Euro berappen müssen, um sehr viel zu lernen und als Hobby mal 1-2 Projekte pro Jahr zu fabrizieren. Wer hat eine sachliche Empfehlung, welche Hardwarekombination es werden soll?
Günstiges Board: http://cgi.ebay.de/STM32-ARM-STM32F103-Cortex-M3-ARM7-ARM9-AMEL-JTAG-KEIL_W0QQitemZ170398897340QQcmdZViewItemQQptZWissenschaftliche_Geräte?hash=item27ac90d4bc In Verbindung mit Rowley Crossworks (nichtkommerziell etwas über 100€, basiert auf GCC 4.4) funktionieren die günstigen FT2232 basierenden JTAG-Adapter gut. In meinem Fall der Olimex ARM-USB-OCD, aber die anderen dürften es genauso tun, auch Selbstbau ist möglich. IMHO umgänglicher als Yagarto/Eclipse. Ob JTAG oder SDW hängt von der Familie ab. LM3, STM32 und LPC1000 können mindestens JTAG (ist m.W. schneller als SDW), die grad angekündigten Norweger nur SDW. Die FT2232 JTAGs können m.W. kein SDW, Segger schon.
Hallo, ich bin auch ein "suchender" in ähnlicher Situation. Klar ist es doof, sich ohne eigene Erfahrungswerte auf irgendwas festlegen zu müssen, aber Keil genießt ja einen guten Ruf, es gibt die 32 kB-Version für lau und den JTAG-Adapter (mit etwas Elektroschrott dabei, sorry) für 89 € (z.B. bei Sander) aus dem Toshiba-Kit. Ich werde daher wahrscheinlich die Variante Toshiba-Kit mit (Keil komplett) und Olimex LPC1766 Dev-Board nehmen, sobald die Platine hier im Shop verfügbar ist. Übrigens: Weiß jemand, wann und für wieviel € das Teil hier zu kriegen ist?
Willst du was beruflich oder privat machen? Falls privat dann gibts den J-Link von Segger doch schon für 98,- Euro. Der kann dann JTAG und SWD! (Davon abgesehen das J-Link halt das Standardprodukt in der Industrie ist und man damit halt einfach nichts falsch machen kann). Die Rowley Umgebumg ist echt nicht schlecht, wenn es auf das Geld nicht ankommt würde ich eher IAR nehmen, vor allem weil es da auch das Powerpac gibt. Das ein Softwarepaket in dem alle Segger Produkte (OS, Filesystem, USB, ...) drin ist. Wenns denn günstig sein soll kann man natürlich auch mit den diversen GNU tools und OpenOCD arbeiten...Spaß macht das aber nicht.
Wenn man da nicht bloss ein paar Wochen reinschüffeln, sondern ein konkretes Projekt angehen will, dann sind 32KB nicht wirklich viel. Mach einen Webserver der nicht bloss uIP heisst, plus SD-Slot, und du darfst Debugging im optimierten Code durchführen, weil's ohne Optimierung nicht reinpasst.
Also bei mir ist es rein für den privaten Gebrauch gedacht, auch keine "Mörderangelegenheiten", wobei der Appetit ja aber bekanntlich beim Essen kommt. Aber ich bin nicht so der Softwaremensch, als daß da so riesige Dinge rauskommen werden (außer man included da eine Lib nach der anderen; Kunststück). Mit dem Segger-Teil liebäugel ich auch etwas, wobei aber inkl. MwSt. und Versand 129,53 € zusammenkommen. Allerdings hat man gleich ein vernünftiges Gehäuse und Flachbandkabel dran. Weiterhin wäre das Seggerteil mit IAR und Keil nutzbar, wobei wohl die RDI-Schnittstelle in Keil 4.00 nicht mehr drin sein soll. Es soll aber trotzdem über einen speziellen Cortex-M3-Treiber J-Link gehen. Ob ein GDB-Server zukunftssicher ist, kann ich nicht beurteilen. Generell scheint der Segger J-Link ja mehr features zu haben (zumindest sind mehr aufgeführt, was aber à la Werbung "das Auto wird mit 4 Rädern geliefert" sein kann. Kann ich auch nicht beurteilen). Grundsätzlich will ich schon eine plug and play Lösung kaufen, da hat mir damals beim Einstieg das STK500 auch enorm geholfen.
Bei Keil betrifft die Einschränkung nicht bloss die Codegrösse, sondern auch die Möglichkeiten, sein Programm speziell zu linken (z.B. ins RAM, oder andere Startadresse als 0). Sprich: Es werden keine Scatter-Dateien unterstützt.
Hat jemand schon Erfahrungen mit den Raisonance-Tools gesammelt ?
Die Ride7 IDE ist ganz gut. Aber da der RLink Adapter nur Ride unterstützt würde ich mir das nicht kaufen. 800 € für die unlimitierte Version ist meiner Meinung nach zu teuer für die gebotene Leistung. Dann schon eher die Cortino Umgebung von Hitex. Für die private Nutzung ist wohl Rowley das günstigste. Ich habe ein OpenOCD Adapter und verwendet privat auch Rowley. Anfangs habe ich OpenOCD + GNU Toolchain verwendet, allerdings hat mir das Debuggen nicht so gefallen. Da nichtmal eine Registerübersicht existiert. Anfängern würde ich nicht zu GNU raten, denn da muss man erstmal 3-4 Wochen für die Konfiguration ansetzen. Besonders das erstellen der Linkerscripte, Makefile, Startup und ggf. syscalls (für stdio) stellt eine Herausforderung dar. Dazu kommt dann noch die Einarbeitung in OpenOCD. Mir war das zu aufwendig, obwohl ich mich in den Bereich (beruflich bedingt) sehr gut auskenne. Da habe ich lieber die $150 investiert und kann gleich loslegen. Meine Empfehlung zusammegefasst: Adapter: OpenOCD (Olimex) (60 €) IDE: Rowley Crossstudio 2 (100 €)
Ich würde dir ein Board von Luminary empfehlen: http://www.luminarymicro.com/products/evaluation_kits.html/ Die kannst du auch gleich ohne JTAG-Adapter programmieren und debuggen. Für den Einstieg sollte das durchaus reichen. Außerdem gibts da noch eine umfangreiche "Peripheral Library" und Keil als Eval-Version gleich dazu. Preislich liegen die Boards glaube so bei um die 100 Euro.
" Es soll aber trotzdem über einen speziellen Cortex-M3-Treiber J-Link gehen. Ob ein GDB-Server zukunftssicher ist, kann ich nicht beurteilen. Generell scheint der Segger J-Link ja mehr features zu haben (zumindest sind mehr aufgeführt, was aber à la Werbung "das Auto wird mit 4 Rädern geliefert" sein kann. Kann ich auch nicht beurteilen)." Jep, das hatten wir hier letzten schon mal, RDI brauchst du nicht, J-Link wird direkt von Keil unterstützt, wir hatte hier doch letztens jemand, der wohl für Keil die entsprechende DLL geschrieben hat? Der J-Link hat nicht nur mehr Features sondern ist auch sehr schnell, vor allem wenn du im Flash debuggen möchtest (Flash Breakpoints). Ich weiß das bei Segger zwei Leute nix anderes machen, als die J-Link Software weiter zu entwicklen, sprich da wirds halt auch in Zukunft immer Features geben. Ok, 129,- Euro ist natürlich für privat schon echt die Schmerzgrenze aber ich gebe lieber 50 Euro mehr aus und habe dafür was vernünftiges womit es auch Spaß macht zu arbeiten. Ich kauf mir ja auch keine Trabbi, auch wenn ich sag, ich fahr damit nur privat durch die Gegend ;-).
Wenn man nun 129€ dafür springen lässt - wie geht es dann weiter? Denn damit hat man ja wohl nicht mehr in der Hand als ein Interface zwischen Gerät und PC. Kein Board, keinen Debugger, keinen Compiler. Apropos "Geld für was vernünftiges ausgeben": nix ist für die Ewigkeit, grad nicht in dieser Branche. Ein Lötkolben mag etliche Jahrzehnte halten, bei Debug-Interfaces wird den Leuten aber immer wieder was neues einfallen, jetzt wo das standardisierte JTAG bereits kippt und durch Firmenvarianten ersetzt wird. Worin liegt also der Vorteil vom 129€ J-Link gegenüber dem 45€ ARM-OCD-Tiny? Bekannt: SWD und das Brand "Segger". Was noch?
A. K. schrieb: > Wenn man nun 129€ dafür springen lässt - wie geht es dann weiter? Denn > damit hat man ja wohl nicht mehr in der Hand als ein Interface zwischen > Gerät und PC. Kein Board, keinen Debugger, keinen Compiler. Dann nehme ich Eclipse + Codesourcery Lite (oder sonst eine Toolchain) und damit kann ich dann alles machen. Wenn ich will kann ich auch noch das ARM-Plugin für Eclipse nutzen, dann braucht man keine Makefiles. Kostet alles nichts. > Firmenvarianten ersetzt wird. Worin liegt also der Vorteil vom 129€ > J-Link gegenüber dem 45€ ARM-OCD-Tiny? Bekannt: SWD und das Brand > "Segger". Was noch? Alle JTAG-IF, die auf OpenOCD basieren sind meiner Meinung nach schlichtweg das Grauen, da die Konfiguration von OpenOCD zum K***** ist. Ich habe mir mal die Mühe gemacht und es lief auch leidlich. Aber ich war so genervt von dem Zeug, dass ich mir den J-Link gekauft habe. Damit war das ganze wesentlich einfacher, deutlich schneller und stabiler.
900ss D. schrieb: > Dann nehme ich Eclipse + Codesourcery Lite (oder sonst eine Toolchain) Yep, aber der Fragesteller sprach von "plug and play". Dazu gehören Eclipse und Codesourcery nicht unbedingt. > Alle JTAG-IF, die auf OpenOCD basieren sind meiner Meinung nach > schlichtweg das Grauen, da die Konfiguration von OpenOCD zum K***** ist. Ich war ebenfalls davon etwas genervt, nur mit anderer Konsequenz. Adapter und Compiler behalten, aber Debugger/Programmer gewechselt. Crossworks geht direkt an den FT2232, nicht über OpenOCD. Problem auch weg.
A. K. schrieb: > 900ss D. schrieb: > >> Dann nehme ich Eclipse + Codesourcery Lite (oder sonst eine Toolchain) > > Yep, aber der Fragesteller sprach von "plug and play". Hab ich so nicht lesen können. > Dazu gehören > Eclipse und Codesourcery nicht unbedingt. Das stimmt allerdings. > >> Alle JTAG-IF, die auf OpenOCD basieren sind meiner Meinung nach >> schlichtweg das Grauen, da die Konfiguration von OpenOCD zum K***** ist. > > Ich war ebenfalls davon etwas genervt, nur mit anderer Konsequenz. > Adapter und Compiler behalten, aber Debugger/Programmer gewechselt. > Crossworks geht direkt an den FT2232, nicht über OpenOCD. Problem auch > weg. Ich suchte mehr nach einer allgemeinen Lösung, ich wollte mich nicht an eine IDE fesseln. Ausserdem nutze ich auch sonst fast ausschliesslich Eclipse zum Entwickeln. Mit dem J-Link bin ich ziemlich frei in der Auswahl meiner IDE. Der J-Link nagelt mich nicht fest. OT: Es gibt auch im Moment keinen besseren Editor zum kodieren als der von Eclipse. Die Unterstützung ist einfach unerreicht. Und das kostenlos!
900ss D. schrieb: > Ich suchte mehr nach einer allgemeinen Lösung, ich wollte mich nicht an > eine IDE fesseln. Ich auch nicht. Für mich war massgeblich entscheidend, dass Crossworks ebenfalls GCC verwendet. Das macht es ziemlich leicht, sich in Programmierphasen, die einen klassischen Debugger nicht mehr erfordern, von Crossworks zu lösen. Und der Editor ist mir schnuppe, schreiben tu ich Programme aus alter Gewohnheit sowieso in Emacs.
Hi! Ich beschäftige mich seit ein paar Wochen mit den Cortex-M3. Ich habe den JLink von Segger. Der funzt super, kann ich nur empfehlen. Zu der IDE: Es gibt von NXP für die LPC17xx-Baureihe die CMSIS Bibliothek mit Treibern für alle Komponenten. Dabei ist auch eine Anleitung zum Aufsetzen einer kompletten Umgebung mit Eclipse, GCC, GDB, Jlink. Ich habe es noch nicht probiert, werde ich aber die Tage. Auf der NXP Seite musst du etwas suchen, ich habe den Link nicht da. Du findest die CMSIS Bibliothek mit dem Tutorial bei den Support-Dokumenten zu den LPC. Ansonsten ist die 32K Version von IAR sehr zu empfehlen. Ich finde die IDE sehr gut. Ciao Dominik
"Apropos "Geld für was vernünftiges ausgeben": nix ist für die Ewigkeit, grad nicht in dieser Branche. Ein Lötkolben mag etliche Jahrzehnte halten, bei Debug-Interfaces wird den Leuten aber immer wieder was neues einfallen, jetzt wo das standardisierte JTAG bereits kippt und durch Firmenvarianten ersetzt wird." Ähmmm... du weißt schon das es JTAG seit 1985 gibt und es auch noch die nächsten Jahre geben wird? Es gibt eben JTAG damit gerade nicht jeder Chip Hersteller sein eigenes Süppchen kocht. Wobei das jetzt natürlich auch nicht ganz richtig ist, da JTAG nur das Drumherum definiert, wie Debug Engine im Chip aussieht ist natürlich dem Chip Hersteller selber überlassen. Aber genau deswegen wird die J-Link Software ja dauernd weiter entwickelt, um alle neuen Chips mit zu unterstützen. Lange Rede, kurzer Sinn: Gerade wenn du sagst das es in Zukunft weniger Chips mit JTAG und mehr mit SWD geben wird, dann wird ein J-Link immer noch funktionieren, ein ARM-OCD-Tiny nicht. "Worin liegt also der Vorteil vom 129€ J-Link gegenüber dem 45€ ARM-OCD-Tiny? Bekannt: SWD und das Brand "Segger". Was noch?" Es gibt eine Menge Vorteile: 1. Deutlich schneller, gerade was das Debuggen im Flash angeht -> Flash Breakpoints. 2. Bessere Software Unterstützung (GDB Server, JFlash, ...) 3. Kompatibel mit allen Tool Chains 4. Sehr einfach zu bedienen Aber es ist klar, mam muss sich immer fragen, was will ich machen, und wieviel mag ich ausgeben. Wenn ich wirklich nur ein bisschen mit ARM Controllern rumspielen wollen würde, dann würde ich auch einen ARM-OCD_Tiny nehmen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.