Forum: Mikrocontroller und Digitale Elektronik Horizonterweiterung um die Arm-Architektur


von Sven (Gast)


Lesenswert?

Hallo Allerseits,

Ich würde mich gerne mit der Programmierung von Arm-Mikrocontrollern 
beschäftigen und bräuchte diesebzüglich ein paar Meinungen/ Erfahrungen?

Bis zum heutigen Tag hab ich ein paar Projekte mit AVR-Mikrocontrollern 
realisiert. Diese habe ich ausschließlich in C programmiert unter 
Verwendung des AVR-Studios.

Da ich mich nun in der "Welt der Mikrocontroller" noch etwas anderes 
anschauen möchte, plane ich gerade den Umstieg/ die Horizont-Erweiterung 
auf die Arm-Architektur. Im Zuge dessen möchte ich mir auch eine andere 
Entwicklungsumgebung anschauen und eventuell auch C++ für die 
Programmierung verwenden! Was könntet ihr mir als Freeware IDE 
empfehlen?

Außerdem möchte ich von euch wissen ob sich folgendes Entwicklungsboard 
für den Einstieg eignet?

[[http://www.steitec.net/ARM-Boards/ARM-LPC1768-Cortex-M3-LCD-Board.html]]

Das Board an sich schätze ich als ziemlich gut ein was das Preis/ 
Leistungsverhältniss betrifft. Denke für das Geld kann man nicht viel 
falsch machen. Was mich jedoch stört is der nur wenig dokumentierte 
Mikrocontroller von NXP? Hatte mir ein Datasheet ähnlich den AVRs 
erhofft, mit Registerbeschreibung und den Schnittstellenbeschreibungen.

[[http://www.nxp.com/documents/data_sheet/LPC1769_68_67_66_65_64_63.pdf]]

Als längerfristiges Projekt wollte ich mir ein bis zwei Sensoren 
besorgen und diese auszulesen. Es sollte klar sein, dass es mir eher 
darum geht mich mit der Arm-Architektur zu beschäftigen 
(Horizonterweiterung).

Beste Grüße.Sven

von Alex E. (tecnologic) Benutzerseite


Lesenswert?

Moin,

Guck mal bei CooCox, ist ein chinesisches Projekt aber recht weit, und 
wie ich finde auf dem richtigen Weg zu einer guten IDE für 
Hobbyentwickler. Wenns eine "richtige" IDE sein soll dann empfehle ich 
Keil (ist aber Free auf 32k begrenzt (debugger) ) ich setze beides ein. 
Für Privat ist für mich Coocox goldwert.

MfG

Tec

von Stefan H. (stefan_h16)


Lesenswert?

Sven schrieb:
> Das Board an sich schätze ich als ziemlich gut ein was das Preis/
> Leistungsverhältniss betrifft. Denke für das Geld kann man nicht viel
> falsch machen. Was mich jedoch stört is der nur wenig dokumentierte
> Mikrocontroller von NXP? Hatte mir ein Datasheet ähnlich den AVRs
> erhofft, mit Registerbeschreibung und den Schnittstellenbeschreibungen.

Suche mal nach dem  "User Manual" des uC. Das ist ein dickes PDF wo wie 
bei den AVR Datenblätter jedes Registerbit des uC einzeln besschrieben 
wird.

Für den Einstieg auch sehr zum empfehlen ist sind die LPCXpresso. Für 
weniger als 30€ gibt es Controller, Debugger und IDE auf Eclipse Basis.

von JojoS (Gast)


Lesenswert?

eine gute Übersicht ist auch hier im Wiki entstanden:
http://www.mikrocontroller.net/articles/LPC1xxx
nur der CooCox Link fehlt noch. BTW: kann man CooCox jetzt auch mit dem 
LPCXpresso/LPCLink nutzen?

von Mr.T (Gast)


Lesenswert?

Sven schrieb:

> Außerdem möchte ich von euch wissen ob sich folgendes Entwicklungsboard
> für den Einstieg eignet?
>
> [[http://www.steitec.net/ARM-Boards/ARM-LPC1768-Cortex-M3-LCD-Board.html]]

Hab ich auch - Grundlagen des BSP habe ich schon geschrieben. Gibt auch 
etwas günstigere Boards auf Basis des STM32 bei ebay zum Beispiel 
(http://www.ebay.de/itm/Development-Board-STM32F107VCT6-3-2-TFT-2-4G-wireles-/220848980829?pt=LH_DefaultDomain_0&hash=item336ba0035d).

> Was mich jedoch stört is der nur wenig dokumentierte
> Mikrocontroller von NXP? Hatte mir ein Datasheet ähnlich den AVRs
> erhofft, mit Registerbeschreibung und den Schnittstellenbeschreibungen.
Was Du suchst, ist das UserManual 
(http://www.nxp.com/documents/user_manual/UM10360.pdf)

STM32 sind m.E. im Forum hier weiter verbreitet als andere Cortex µC. In 
der Firma nehmen wir STM32, privat nehme ich LPC17xx.

bye, Arne

von Sven (Gast)


Lesenswert?

Vielen Dank schonmal für die Antworten!

Wie sind eure Erfahrungen mit C++ auf der Basis eines Arms?
Ich bin gerade dabei meine C-Kenntnisse um die Objektorintierung von C++ 
zu erweitern, deswegen dachte ich ich könnte das dann in einem 
zukünftigen Projekt anwenden? Oder macht dies absolut gar keinen Sinn 
einen µC objektorientiert zu programmieren?

@Arne: weshalb privat die Entscheidung für die LPCs?

Beste Grüße.Sven

von (prx) A. K. (prx)


Lesenswert?

Sven schrieb:

> Oder macht dies absolut gar keinen Sinn
> einen µC objektorientiert zu programmieren?

Doch. Man muss nur wissen was man tut - nicht alle Programmiertechniken 
von C++ eignen sich für Controller.

von Alex E. (tecnologic) Benutzerseite


Lesenswert?

JojoS schrieb:
> eine gute Übersicht ist auch hier im Wiki entstanden:
> http://www.mikrocontroller.net/articles/LPC1xxx
> nur der CooCox Link fehlt noch. BTW: kann man CooCox jetzt auch mit dem
> LPCXpresso/LPCLink nutzen?

Laut der HP der CooCoxe unterstützen die den LPC link noch nicht.

http://www.coocox.org/Forum/topic.php?id=741

Hier steht aber das es einen Workarround gibt. vllt hilfts

von Mr.T (Gast)


Lesenswert?

Sven schrieb:

> Wie sind eure Erfahrungen mit C++ auf der Basis eines Arms?
Wenn Du 32bit µC allgemein meinst: sehr schlecht. Ich kann Dir dermaßen 
schlechten C++ Code zeigen, der draußen in der freien Wildbahn auf 
Anlagen existiert, dass Dir die Haare zu Berge stehen.
A.K. hat aber grundsätzlich recht: man muss genau wissen, was man macht. 
Die meisten kennen C++ vom PC und legen auf nem µC genauso los. Und das 
geht in die Hose.

> @Arne: weshalb privat die Entscheidung für die LPCs?
a) was anderes machen ;)
b) Timer/ADC sind auf STM32 deutlich komplexer (meine Meinung)
   dafür sind UARTs auf LPC (wenn man den 16Byte TxFIFO wirklich nutzen 
will) komplexer. GPIO-Portzugriffe erscheinen mir auf LPC auch 
komplizierter. Zumal sich LPC175x/176x und LPC177x/178x hier wieder 
voneinander unterscheiden.
c) nehm ich den LPC1768 erstmal zum "warm werden". Projekt zielt auf 
LPC1778 ab wegen SDRAM Schnittstelle. Aber das ist ein anderes Thema.

Gruß, Arne

von Uwe Bonnes (Gast)


Lesenswert?

Das STM32F4Discovery Board, dass in den naechsten Wochen kommen soll, 
koennte auch eine preisguenstigen Einstieg bieten.

von (prx) A. K. (prx)


Lesenswert?

Je dicker der Controller, desto grösser der Umstieg. Der neueste dickste 
schnellste Controller ist i.d.R. auch der komplexeste. Und verdoppelt 
mit dem Preis der Ärger, wenn man ihn vernichtet.

von JojoS (Gast)


Lesenswert?

> Wie sind eure Erfahrungen mit C++ auf der Basis eines Arms?

hier offenbart sich leider ein Nachteil der kostenlosen CodeRed Version: 
diese enthält keine Unterstützung für C++.

von Martin S. (mstahl)


Lesenswert?

Sven schrieb:
> Was mich jedoch stört is der nur wenig dokumentierte
> Mikrocontroller von NXP? Hatte mir ein Datasheet ähnlich den AVRs
> erhofft, mit Registerbeschreibung und den Schnittstellenbeschreibungen.

Dazu gibts das User Manual UM10360, welches du hier findest:
http://www.nxp.com/documents/user_manual/UM10360.pdf

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.