Forum: Mikrocontroller und Digitale Elektronik Suche Cortex-M3/uCLinux-Development Board


von Manuel W. (multisync)


Lesenswert?

Hallo zusammen!

Ich will mich mit der
* ARM-Architektur sowie mit
* (uC-)Linux
auseinandersetzen, und suche dafür ein "System on Module" Development 
Board.

Anforderungen:
* SDRAM am Board
* ARM-Prozessor ohne MMU (Cortex-M3 oder -M4 wenn ich das richtig sehe)
* Zumindest eines von beiden: Zugang zum USART (entweder über USB-Bridge 
oder RS232) oder Ethernet-Buchse
* JTAG-Schnittstelle
* Peripherie (I2C, SPI) des uC sollte über Prototyping Area zugänglich 
sein.
* Vorkonfiguriertes lauffähiges Linux liegt bei.

Optional wäre nett:
* On-Board-Debugger mit USB-Zugang
* Beides: Zugang zum USART (entweder über USB-Bridge oder RS232) UND 
Ethernet-Buchse

Gefunden habe ich schon dieses Board von Emcraft: 
https://www.emcraft.com/products/224#starter-kit

Könnt ihr mir vielleicht (preisgünstigere, in Europa verfügbare) 
Alternativen vorschlagen?


Mein Eindruck ist, dass die Auswahl an Boards wie ich sie suche nicht 
sehr groß ist.

"Kleine" Boards (ohne SDRAM) gibt es preisgünstig und wie Sand am mehr. 
Auf diesen kann man aber kein Linux laufen lassen. "Große" Boards wie 
Raspberry Pie, BeagleBoard usw. mit "ausgewachsenem" ARMv9 gibt es 
ebenfalls zur Genüge, allerdings trau ich mich da noch nicht drüber. Das 
ist mir von den 8-/16-Bit PICMicros die ich bis dato programmiert habe 
ein zu großer Schritt.

von grundschüler (Gast)


Lesenswert?

stm32f429 disco

von Pete K. (pete77)


Lesenswert?

Wenn Du Ethernet benötigst würde ich ein Raspi/Galileo/Beagleboard/etc. 
nehmen. So schwer ist das programmieren nicht, wird meistens mit 
phyton/php gemacht.

uCLinux läuft auch nur auf ausgesuchter Hardware, wenn man die Homepage 
richtig deutet. Aktuelle Hardware habe ich da nicht gefunden.

Vielleicht ist hier ja etwas dabei:
http://www.aliexpress.com/wholesale?catId=0&initiative_id=SB_20141206035946&SearchText=arm+sdram

von Manuel W. (multisync)


Lesenswert?

grundschüler schrieb:
> stm32f429 disco

Ich habe mir das Board auch schon angesehen, habe es aber aus der 
Auswahl gestrichen, weil ich keinen Hinweis darauf fand, dass ein 
vorkonfiguriertes Linux dabei wäre. Scheinbar lag ich falsch. Könntest 
du mir sagen, wo ich es finde?


Pete K. schrieb:
> Wenn Du Ethernet benötigst würde ich ein Raspi/Galileo/Beagleboard/etc.
> nehmen. So schwer ist das programmieren nicht, wird meistens mit
> phyton/php gemacht.
>
> uCLinux läuft auch nur auf ausgesuchter Hardware, wenn man die Homepage
> richtig deutet. Aktuelle Hardware habe ich da nicht gefunden.
>
> Vielleicht ist hier ja etwas dabei:
> 
http://www.aliexpress.com/wholesale?catId=0&initiative_id=SB_20141206035946&SearchText=arm+sdram

Nur um mein Vorhaben nochmal zu präzisieren: Mir geht es darum Linux 
kennen zu lernen. Wie das Ding unter der Haube funktioniert, wie 
Programme aufgerufen und ausgeführt werden; wie Treiber programmiert 
werden. Auch will ich die ARM-Architektur kennenlernen.

Bist du sicher, dass mich das Programmieren eines Raspberry Pis in 
PHP/Python diesem Ziel näher bringt? Meiner Meinung nach befinde ich 
mich mit diesen Sprachen auf einer viel zu hohen Abstraktionsebene.

Den Link den du gepostet hast werde ich mir noch ansehen. Sieht auf den 
ersten Blick jedenfalls interessant aus.

von Lars R. (lrs)


Lesenswert?

Ich hätte auch emcraft gesagt. Von aliexpress würde ich in diesem Fall 
abraten. Für den Raspberry kannst Du auch mit C Kernelmodule 
programmieren (Google). Mit dem Raspberry kommst Du einfacher zu Recht.

Edit: Linux in der virtuellen Maschine für Kernelmodul-Programmierung. 
USB-UART-Interface nach draussen (oder z.B. SPI oder virtuelle 
Interfaces)

: Bearbeitet durch User
von Lukas K. (carrotindustries)


Lesenswert?

Manuel W. schrieb:
> Ich habe mir das Board auch schon angesehen, habe es aber aus der
> Auswahl gestrichen, weil ich keinen Hinweis darauf fand, dass ein
> vorkonfiguriertes Linux dabei wäre. Scheinbar lag ich falsch. Könntest
> du mir sagen, wo ich es finde?

https://github.com/jserv/stm32f429-linux-builder Über die Sinnhaftigkeit 
lässt sich allerdings streiten...

von grundschüler (Gast)


Lesenswert?

Manuel W. schrieb:
> Mir geht es darum Linux kennen zu lernen.

dafür ist das disco eher ungeeignet.

Deine Anforderung arm-m3,m4 und linux-Betriebssystem schließt sich wohl 
aus.

Wenn du ein Linux-Betriebssystem willst, brauchst du ein board rpi 
aufwärts.

Wenn du dich mit arm-architektur beschäftigen willst, nimm einen m3 oder 
m4 - dann allerdings ohne linux-Betriebssystem.

von 123 (Gast)


Lesenswert?

Linux braucht 32bit und eine MMU.
Damit fallen cortex m3 und m4 raus.
Also Arm9 aufwärtz.

Rapery pi, beagel bone, panda, ...


UClinux braucht zwar keine MMU. Die Unterstützung ist aber geringer.

Gruss

von W.S. (Gast)


Lesenswert?

Manuel W. schrieb:
> Ich will mich mit der
> * ARM-Architektur sowie mit
> * (uC-)Linux
> auseinandersetzen, und suche dafür ein "System on Module" Development
> Board.
>
> Anforderungen:

... ah, Anforderungen hast du. Ja, dann fordere mal an. Wieviel willst 
du wem dafür zahlen?

Mein Vorschlag wäre, daß du dir ein Board nach deinem Gusto selber 
designst. Damit hast du dann automatsch die ARM- oder die 
Cortex-Architektur kennengelernt und dich vermutlich auch damit 
aueseinandergesetzt.

W.S.

von m. keller (Gast)


Lesenswert?

Manuel W. schrieb:
> , allerdings trau ich mich da noch nicht drüber. Das
> ist mir von den 8-/16-Bit PICMicros die ich bis dato programmiert habe
> ein zu großer Schritt.

Dann ist der Schritt auf eine "Zwischenwelt" also ein abgespecktes Linux 
und ARM Cortex M3/M4 der falsche Weg.

Mit einem Rasp Pi kannst du dich wunderbar mit Linux im Embedded Bereich 
beschäftigen. Linux ist aber Betriebssystem für CPUs mit MMU (!= 
Microcontroller).

Geht es dir um ARM Cortex M, also um Microcontroller und einem RTOS dann 
fange doch mit einem STM32F4Discovery und ChibiOS oder FreeRTOS an. Da 
lernst du viel über die ARM Architektur  / Low Level Treiber für ein OS 
und die Mechanismen eines Betriebssystems. ChibiOS und FreeRTOS (usw.) 
sind noch relativ überschaubar und ich kann da noch einigermaßen 
nachvollziehen was auf der Kernel/Treiberseite läuft.


In Systemen wie Linux , Linux-RT, QNX, ... kenn ich mich zwar auch recht 
gut aus, da ist man aber  schon weit weg von der eigentlichen 
Prozessorarchitektur.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

µCLinux läuft auf Systemen ohne MMU. Allerdings sind die 1MB Flash des 
F429 wirklich viel zu wenig, um da sinnvoll einen Mini Kernel drauf zu 
packen.
Mein µCSimm hat einen 68EZ328 Dragonball, 2MB Flash, 8MB RAM und einen 
CS8900 Ethernet Chip, das würde ich mal als Minimal System ansehen.
Ein Palm III oder Palm V ist brauchbar (sind aber Freescale und keine 
ARMs), und ich hab mal gehört, das es irgendjemand auf den Nintendo DS 
portiert, bzw. eine Versuchsversion habe ich auf meinem. Dafür sollte 
man aber die Speicherkarte des Webbrowsers haben, die ich nicht besitze.

: Bearbeitet durch User
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.