Forum: Mikrocontroller und Digitale Elektronik ARM Starterkit


von Hans (Gast)


Lesenswert?

Hallo,

kann mir jemand ein ARM Starter Kit empfehlen. Ich habe bisher nur AVRs 
programmiert und würde mich gerne weiterentwickeln. Der µC sollte 
möglichst schnell sein. Das Starter Kit sollte alles enthalten, also 
Software, Programmiergerät (am besten über USB) und natürlich die 
Hardware.

Danke für eure Ratschläge
Hans

von Frank (Gast)


Lesenswert?

Hallo Hans,

ich hab zwar keine Antwort für dich aber dafür eine Frage,
du sagtest du hast bisher nur AVR programmiert.

ich möchte auch anfangen AVR uC zu programmieren und bin auch auf der 
Suche nach einem starker kit, das auch alles enthält.
da ich anfänger bin hätte auch eine platine mit LEDs Tasten, und 
natürlich sachen für fortgeschrittene für später

kannst du mir da was empfehlen ?

danke schonmal

von Martin (Gast)


Lesenswert?


von Hans (Gast)


Lesenswert?

@Frank
AVRs habe ich Anfangs immer auf dem Steckbrett aufgebaut und mir da nie 
ein Starterkit besorgt und später hab ich mir dann Platinen fertigen 
lassen. Bei den AVR Starter Kits sollte es wahrscheinlich fast jedes 
tun. Musst halt drauf achten, dass das was du an Peripherie haben willst 
auch drauf ist, am besten eins mit LCD, das fand ich beim debuggen sehr 
hilfreich. Als Programmiergerät habe ich mir einen In System Programmer 
von eBay aus China für ca. 15 Euro geholt und der funktionierte bei mir 
immer wunderbar.
Als Software zum Programmieren habe ich WinAVR benutzt, die ist legal 
und umsonst. Die HEX Files lade ich mit AVR Studio auf die Controller.

Gruß Hans

von Gisele P. (Gast)


Lesenswert?


von Hans (Gast)


Lesenswert?

Schonmal danke für die Links. Es wäre schön wenn Ihr noch ein paar Worte 
zur Software, die man zur Entwicklung benötigt, und dem Programmiergerät 
verlieren könntet ;)

Gruß Hans

von Robert T. (robertteufel)


Lesenswert?

Gisele P. schrieb:
> http://olimex.com/dev/index.html
>
> http://www.futurlec.com/DevelopmentBoards.shtml

Das Futurlec board wuerde ich fuer ARM nicht gerade empfehlen, denn sie 
wissen nicht was sie tun. Die haben einen LPC2119 genommen, den nimmt 
man wenn man CAN haben moechte, sonst macht der keinen Sinn! Als Quarz 
ist dann ein 58,xyz MHz drauf, den nimmt man wenn man keinen CAN 
benuetzen moechte, also nicht so toll durchdacht. Das ganze Board ist 
billig aber nicht unbedingt preiswert.

Ich wuerde Boards von Embedded Artists empfehlen. Nicht ganz so billig 
fuer die besseren Boards aber den Preis wert!
http://www.embeddedartists.com

Ein anderes tolles Eval-Board fuer den STM32 ist der Primer2
http://mcu-related.com/architectures/35-cortex-m3/59-stm32-primer2-stm32f103e-stm3210e-primer

Noch mehr Info zu Tools fuer verschiedene ARMs
http://www.lpc2000.com/tools

Hoffe das hilft erst mal weiter

Gruss, Robert

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

@ Hans

Weißt Du schon welchen ARM?

Ich würde einen Cortex-M3 empfehlen, auch den STM32. Ich bin davon 
begeistert und überzeugt.
Lese mal hier im Artikel STM32, das verschafft Dir eine Übersicht.

Da gibts auch eine Übersicht über Lieferanten, Compiller und 
Demo-Boards.

von Hans (Gast)


Lesenswert?

Hallo,

bisher bin ich noch komplett unentschieden, lese mir aber Links fleißig 
durch. Ich tendiere bisher zu einem LPC, da es für die wohl viele 
Tutorials gibt. Wobei ich noch keins gefunden hab was mich vom Hocker 
gehauen hat ;)

Welche Toolchain benötige ich für die jeweiligen Boards. Alle 
Beschreibungen, die ich bisher las, klingen sehr komplex und als könnte 
man viel falsch machen. Ich habe auch gelesen, dass man einige LPC 
Controller per ISP programmieren kann. Kann ich da einfach meinen AVR 
ISP Programmer nehmen?

Bei dem ARM sind für mich wichtig, dass er min. 2x I2C und 1x SPI und 1x 
UART integriert hat. Da ich schnell viel Sensordaten durchschaufeln und 
verarbeiten will wär ein möglichst hoher Takt von Vorteil.

Mfg Hans

von Justus S. (jussa)


Lesenswert?

Hans schrieb:
> Ich habe auch gelesen, dass man einige LPC
> Controller per ISP programmieren kann.

das heißt in der Regel nur, dass der Controller im eingebauten Zustand 
programmiert werden kann, also nicht in einen seperaten Brenner gesteckt 
werden muss. Das sagt aber nichts darüber aus, wie diese Programmierung 
stattfindet.

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Bei den kleinen ARM-Controllern sollte man sich auch entscheiden, ob man 
auf der "alten" Architektur (v4 - v5) und den Prozessoren auf Basis von 
ARM7 aufsetzt, oder ob man sich gleich auf die Architektur v7 mit den 
Cortex-Mx-Kernen stürzt.

Die neuere Architektur beseitigt gerade im Microcontrollerbereich sehr 
viele Schwächen der meisten Implementierungen auf Basis von ARM7/ARM9 
und ist somit sehr zukunftssicher. Man sieht dies auch daran, dass sich 
fast alle Hersteller darauf stürzen.

Ist man daran interessiert, die Architekturunterschiede ausgiebig zu 
studieren, sollte man auf Prozessoren eines Herstellers zurückgreifen, 
die es in beiden Varianten gibt, z.B. NXP LPC2xxx vs. LPX17xx.

Will man jedoch möglichst viel alten Assembler-Code weiterverwenden und 
ist auf eine Umgebung angewiesen, die selbst ARM-Code erzeugt, kann dies 
bedeuten, (vorerst) bei ARM7 usw. bleiben zu müssen.

Man beachte, dass man bei einigen Debuggern (z.B. Lauterbach) 
unterschiedliche Plattformlizenzen für die verschiedenen Varianten 
erwerben muss. Dennoch kann ich gerade den TRACE32 in beiden Fällen sehr 
empfehlen. Jedoch übersteigt er die meisten Hobby-Budgets.

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

ISP beim ARM-Prozessor (ATM7/ARM9/Cortex-M3) bedeuted, dass die 
JTAG-Pins über einen Stecker angeschlossen werden muss. Siehe Artikel 
JTAG.

Nein, einen AVR-Programmer oder andere AVR spezifische Dinge können 
nicht für eine ARM-Programmierung weiter verwendet werden.

Von Segger gibt es einen JLink-EDU für Hobby-Anwender, der kostet nur 60 
EUR, der funktioniert mit allen ARM-Derivaten und ist ein "Muss" für 
deren Programmierung.
Natürlich kann man auch einen LPCxxxx über serielle Schnittstelle 
proggen, dann sollte man aber schon ein lauffähiges Programm haben, denn 
debuggen geht damit nicht (oder genau wissen was man wie programmiert).

von 900ss (900ss)


Lesenswert?

Robert Teufel schrieb:
> Das Futurlec board wuerde ich fuer ARM nicht gerade empfehlen, denn sie
> wissen nicht was sie tun. Die haben einen LPC2119 genommen, den nimmt
> man wenn man CAN haben moechte, sonst macht der keinen Sinn! Als Quarz
> ist dann ein 58,xyz MHz drauf, den nimmt man wenn man keinen CAN
> benuetzen moechte, also nicht so toll durchdacht. Das ganze Board ist
> billig aber nicht unbedingt preiswert.

Das ist doch kein Ausschlußkriterium?! Gut das Design ist, sagen wir 
suboptimal. Aber wenn man kein CAN braucht und nur "einsteigen" möchte, 
dann ist das doch nicht weiter schlimm.

Ich kann die Boards von Futurlec schon empfehlen. Habe 2* welche genutzt 
und funktionieren prima. Vor allem bei dem Preis. Gut wenn man etwas 
mehr haben möchte mit Display u.s.w., dann ist das eine andere Sache.
Auch sonst sind meine Erfahrungen mit Futurlec sehr gut. Habe dort schon 
mehrmals gekauft. Ich kann das empfehlen.

Die Produkte von Embedded Artists machen auch einen guten Eindruck, sind 
aber mindestens doppelt so teuer. Erfahrung hab ich damit nicht.

Bei der Auswahl sollte man sich auch im klaren sein, ob es ein "alter" 
ARM7 sein soll oder die Cortex-M3 Serie. Ist ja doch schon ein 
entscheidener Unterschied.

Edit: OT: Habe bei Embedded Artists gerade nochmal "vorbeigeschaut", 
Versand nach Deutschland: 17,60€ für ein Platinchen. Also ich gehöre 
nicht zur Geiz-ist-geil-Fraktion aber das ist schon etwas überzogen.

von Hans (Gast)


Lesenswert?

Hallo,

ich möchte eigentlich auf keinen Fall Assembler programmieren, das finde 
ich immer recht anstrengend. Möchte eigentlich auf jeden Fall C 
programmieren.
Allgemein interessiert mich die Architektur der ARMs nur soweit wie man 
es benötigt um lauffähigen Code zu erzeugen. Ich bin sonst mit AVRs sehr 
zufrieden, komme bei meinem nächsten geplanten Projekten nicht mehr mit 
der Rechenleistung hin...

@Markus Müller
Mit dem JLink-EDU kann ich dann alle ARMs unabhängig vom Hersteller 
programmieren? Das wär ja wunderbar :)
Der STM32 bietet von der Peripherie auf jeden Fall alles was ich 
benötige.
Mit welchen Tools arbeitest du?

Ich hab mir jetzt mal ein Board bei Futurlec rausgesucht:
http://www.futurlec.com/STM32_Development_Board.shtml

Bei Olimex habe ich mit das Board rausgesucht:
STM32-P103 http://olimex.com/dev/stm32-p103.html

Gibt es zu diesen Boards was positives bzw. negatives zu sagen?

Auf jeden Fall schonmal vielen Dank für eure Anregungen, das hilft mir 
sehr bei der Auswahl.

Mfg Hans

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Siehe hier:
http://www.segger.com/cms/jlink-gdb-server.html

Alle ARM's.
Alle Hersteller, die von der Firma ARM den Prozessorkern verwenden, NXP, 
ST, TI, Analog uvm.

Ich nutze so wie hier beschrieben:
http://www.mikrocontroller.net/articles/STM32#Installation_f.C3.BCr_STM32
(Der Artikel kommt ja auch von mir :)
Schlussendlich ist es etwas gewöhnungsbedürftig und einiges Fleißarbeit 
bis es mit Eclipse ging, aber ich wollte endlich mal GCC und die anderen 
Open-Source-Tools kennen lernen. (Und alles geht perfekt! und bin damit 
super zurfrieden.)

Im Artikel STM32 sind auch alle anderen Entwicklungsumgebungen 
aufgelistet, um mal schnell ein zu steigen reicht sicher auch ein Keil 
mit 32KB Codebeschränkung. Das Schöne am JLink: der tut damit auch.

Das Olimex-Board kenne ich, hatte es auch schon benutzt, ist gut. Ich 
hatte damit mein erstes Projekt entwickelt, zumindest so lange bis ich 
die Original Platine bekam.

von Hans (Gast)


Lesenswert?

Na dann nochmal vielen Dank! Dann werde ich mir das Board und den JLink 
zulegen ;)

von Lukas S. (lsimma)


Lesenswert?

Hallo Hans,

ich verwende seit ein paar Wochen auch den stm32.

Damit ich schneller vorankomme hab ich (obwohl Eclipse-Fan) mit der auf 
32kB  Codebeschränkten IAR KickStart Edition begonnen und bin bis heute 
noch nicht an die Codegrenze gestossen. Auch das Atollic TrueStudio für 
ST-Link hab ich mir angesehen das ist auch zum Einsteigen recht 
sorgenfrei aufgebaut, dasselbe denke ich wird beim Codebeschränkten Keil 
auch so sein.

Da es schnell gehen musste und die Wahl des stm32 nicht 100% klar war 
(jetzt schon) hab ich mir den ST-LINK für 20€ bei Farnell besorgt. 
Bisher bin ich damit sehr zufrieden. Ich hab damit sowohl auf dem 
Demoboard mit stm32f107 als auch schon auf dem sensol Kundenboard 
gearbeitet und gedebuggt. Bisher soweit ok.

Ich kann diesen Weg empfehlen eine Codebeschränkte kostenlose Version 
von IAR (Keil oä.) zu nehmen da ich mich zuerst mal ganz dem stm32 und 
der Std. Peripherie Library kümmern konnte. Jetzt wo es mit 
Programmieren recht gut läuft kommt der Wunsch nach Eclipse IDE und gcc 
toolchain..... das wird mich aber sicher einige Stunden Aufwand kosten 
vermute ich...

Beste Grüße,
Lukas

von Robert T. (robertteufel)


Lesenswert?

900ss D. schrieb:
> Robert Teufel schrieb:
>> Das Futurlec board wuerde ich fuer ARM nicht gerade empfehlen, denn sie
>> wissen nicht was sie tun. Die haben einen LPC2119 genommen, den nimmt
>> man wenn man CAN haben moechte, sonst macht der keinen Sinn! Als Quarz
>> ist dann ein 58,xyz MHz drauf, den nimmt man wenn man keinen CAN
>> benuetzen moechte, also nicht so toll durchdacht. Das ganze Board ist
>> billig aber nicht unbedingt preiswert.
>
> Das ist doch kein Ausschlußkriterium?! Gut das Design ist, sagen wir
> suboptimal. Aber wenn man kein CAN braucht und nur "einsteigen" möchte,
> dann ist das doch nicht weiter schlimm.
>

Da geb ich Dir recht, es ist kein Ausschlusskriterium allerdings ein 
fettes Fragezeichen. Der LPC2114 ist GENAU derselbe Chip wie der LPC2119 
lediglich ohne CAN. Wenn das Board dazu designed ist keinen CAN zu 
benuetzen, dann sollte es der billigere LPC2114 sein. Wenn der CAN Chip 
drauf ist ist der Quarz Mumpitz.
Wenn eine Firma den Anspruch hat ein durchdachtes Eval-Board zu 
verkaufen dann ist das einfach ein schlechtes Zeichen. Wie schon gesagt, 
"denn sie wissen nicht was sie tun"
Meine Einstellung ist davon gepraegt, dass mir meine Zeit etwas wert 
ist, das ist in Euro/Stunde ausdruecken kann. Mit so einem Fragezeichen 
disqualifiziert sich die Firma fuer MICH und meine Meinung basiert auf 
nur einem Fakt, also fuer viele irrelevant. Hab ich es genug 
relativiert? :-)

Gruss, Robert

von Ein Gast (Gast)


Lesenswert?

Robert Teufel (robertteufel) schrieb:
> Da geb ich Dir recht, es ist kein Ausschlusskriterium allerdings ein
> fettes Fragezeichen. Der LPC2114 ist GENAU derselbe Chip wie der LPC2119
> lediglich ohne CAN. Wenn das Board dazu designed ist keinen CAN zu
> benuetzen, dann sollte es der billigere LPC2114 sein. Wenn der CAN Chip
> drauf ist ist der Quarz Mumpitz.
> Wenn eine Firma den Anspruch hat ein durchdachtes Eval-Board zu
> verkaufen dann ist das einfach ein schlechtes Zeichen. Wie schon gesagt,
> "denn sie wissen nicht was sie tun"

Sollten die aber auch ein Board mit CAN im Angebot haben, macht es 
eventuell schon Sinn auch hier die Version mit CAN zu verbauen.
Man benötigt nur eine MCU für beide Boards, das heisst:
- Das Anlegen einer Artikelnummer für die 2. entfällt zusammen mit dem 
ganzen drumherum, wie Lagerplatzbereitstellen usw. das ist selbst bei 
kleinen Unternehmen nicht zu unterschätzen.
- Anlegen eines Symbols in der EDA-Software.
- Man kann größere Mengen Bestellen und erhält evtl. etwas bessere 
Preise.

Und das ist sicher nicht alles, was für ein neues Bauteil nötig ist und 
ist selbst in einem kleinen bis mittleren Unternehmen ein nicht zu 
unterschätzender Kostenfaktor.

Es kann also durchaus die günstigere Lösung sein hier den im Stückpreis 
teureren Chip zu verbauen.

Eventuell ist der LPC2114 auch nicht so gut lieferbar.
Was ich damit sagen will: Bloss weil man selbst die Bauteilwahl nicht 
treffen würde, bedeutet das nicht, dass Futurlec hier keine Ahnung hat, 
was sie tun.

von Robert T. (robertteufel)


Lesenswert?

Ein Gast schrieb:
> Robert Teufel (robertteufel) schrieb:
>> Da geb ich Dir recht, es ist kein Ausschlusskriterium allerdings ein
>> fettes Fragezeichen. Der LPC2114 ist GENAU derselbe Chip wie der LPC2119
>> lediglich ohne CAN. Wenn das Board dazu designed ist keinen CAN zu
>> benuetzen, dann sollte es der billigere LPC2114 sein. Wenn der CAN Chip
>> drauf ist ist der Quarz Mumpitz.
>> Wenn eine Firma den Anspruch hat ein durchdachtes Eval-Board zu
>> verkaufen dann ist das einfach ein schlechtes Zeichen. Wie schon gesagt,
>> "denn sie wissen nicht was sie tun"
>
> Sollten die aber auch ein Board mit CAN im Angebot haben, macht es
> eventuell schon Sinn auch hier die Version mit CAN zu verbauen.
Waere durchaus richtig, hast Du ein solches Board gefunden? Ich nicht!

> Man benötigt nur eine MCU für beide Boards, das heisst:
> - Das Anlegen einer Artikelnummer für die 2. entfällt zusammen mit dem
> ganzen drumherum, wie Lagerplatzbereitstellen usw. das ist selbst bei
> kleinen Unternehmen nicht zu unterschätzen.
> - Anlegen eines Symbols in der EDA-Software.
> - Man kann größere Mengen Bestellen und erhält evtl. etwas bessere
> Preise.
Richtig aber scheint nicht zuzutreffen
>
> Und das ist sicher nicht alles, was für ein neues Bauteil nötig ist und
> ist selbst in einem kleinen bis mittleren Unternehmen ein nicht zu
> unterschätzender Kostenfaktor.
Richtig, leider kann ich kein anderes Board mit dem LPC2119 bei Futurlec 
finden.

>
> Es kann also durchaus die günstigere Lösung sein hier den im Stückpreis
> teureren Chip zu verbauen.
Nicht wirklich, da obige Annahmen anscheinend nicht zutreffen.

>
> Eventuell ist der LPC2114 auch nicht so gut lieferbar.
Falls irgendeiner besser lieferbar war, dann der LPC2114

> Was ich damit sagen will: Bloss weil man selbst die Bauteilwahl nicht
> treffen würde, bedeutet das nicht, dass Futurlec hier keine Ahnung hat,
> was sie tun.

All Deine Argumente sind richtig und dennoch scheint keines der 
Argumente zu greifen.

Hier bin ich einfach nicht von meiner Meinung abzubringen. Ich war bei 
NXP/Philips in der Abteilung, die die LPC2000 entwickelt und verkauft 
hat zu der Zeit als das Futurlec Board rauskam und wir haben uns damals 
schon am Kopf gekratzt was diese Kombination bewirken soll.
Es gab keine Knappheit von LPC2114 waehrend es gleichzeitig den LPC2119 
gab, es gibt kein anderes Board (am Markt) von Futurlec mit dem LPC2119 
(ich hab gesucht, Du auch?), der LPC2119 war immer teurer als der 
LPC2114 und der LPC2119 hat absolut keinen sonstigen Vorteil ausser CAN.
Ob mit Absicht der LPC2119 genommen wurde oder nicht weiss ich nicht. 
Jetzt koennten wir noch dasselbe Argument mit Bauteilnummer, 
Verfuegbarkeit... fuer den Quarz diskutieren. Das ist aber muessig.
In den features fuer das Board ist CAN gelistet, allerdings sind keine 
CAN Transceiver auf dem Board und auch nicht auf dem Motherboard.

Es ist Teil meines Jobs damals und heute die best geeigneten MCUs mit 
den richtigen Applikationen zu paaren und die Paarung auf diesem Board 
passt nicht! Ich verkaufe auch Eval-Boards aber dafuer mache ich hier 
keine Werbung, kein Link, nichts. Futurlec wuerde ich nicht verkaufen.

Der Laden ist allerdings billig, kein Einspruch. Muss auch ehrlich 
gestehen, ich war ueberrascht als ich gesehen hab die sitzen in 
Neuseeland, hat sich fuer mich alles so nach Entwicklung und Fertigung 
in Billigstlohnlaendern angehoert.

Hab mir jetzt die Webseite nochmals ne Weile angeschaut und bin zu dem 
Schluss gekommen, da hat noch nie einer was mit CAN gemacht aber sonst 
sieht's nicht so uebel aus.
Beim LPC2368 geben die allerdings in der Beschreibung an, 
http://www.futurlec.com/ARM2368_Controller.shtml
dass man bis 75 MHz betreiben kann, max ist aber 72 MHz, 75 MHz ist auch 
wiederum unsinning, denn damit laesst sich weder USB noch CAN vernueftig 
betreiben, mit 72 MHz schon. Ich kann einfach keinen Hersteller 
empfehlen, der in den Details schludrig ist.

Genug Zeit verbraten, Robert

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.