RTOS für STM32F4-Discovery

OP #3482274
Lesenswert?

Hallo Leute

Wer verwendet welches RTOS für den STM32F4 (-Discovery), bzw.
was würdet ihr empfehlen? Insbesondere welche Erfahrungen wurden gemacht 
bezüglich:

 - Stabilität/Zuverlässigkeit/Bugs (auch für komplexe Projekte)
 - Footprint, Resourcbelegung
 - Effizients/Geschwindigkeit
 - Einfachheit/Übersichtlichkeit/Dokumentation
 - FPU-Unterstützung?

Für meine private Projekte soll vorzugsweise Gratis-SW verwendet werden, 
und für den GCC-ARM (Eclipse-IDE) compilierbar sein

Bisher habe ich etwas mit CoOS (CooCox) gespielt, es scheint mir aber 
nicht wirklich ausgereift. Ich vermute Probleme mit der Stackverwaltung 
(besonders wenn man etwas mehr Stack pro Task verwenden möchte >2kByte, 
zudem wird es nicht weitergepflegt, bzw. es gab kein Update mehr seit 
Juni 2012.

Zur Zeit habe ich ChibiOS und FreeRtos im Visier. Wer kann darüber 
(oder andere Alternativen) etwas Berichten?
(Firma: dl1bg) #3482325
Lesenswert?

Ich verwende seit zwei Jahren eCos auf STM32F103 und seit kurzem auf dem 
STM32F407. Das Betriebssystem ist lange gewachsen, extrem konfigurierbar 
und unterstützt sehr viele Plattformen.
Ich bin schwer begeistert davon und gebe eCos in deinen KPIs gute Noten, 
aber der Einstieg ist recht komplex.
#3482449
Lesenswert?

Ich verwende auch das NuttX mit dem STM32F4.

Den größten Vorteil sehe ich darin, daß die Schnittstelle zwischen RTOS 
und Deinem Programm weitgehend POSIX-kompatibel ist. Wenn Du also schon 
etwas Erfahrung mit der Programmierung unter Linux (oder anderen Unixen) 
hast, geht der Einstieg sehr einfach von der Hand weil Du die ganzen 
Schnittstellen und deren Verhalten/Besonderheiten schon kennst. Auch 
lassen sich Linux-Programme so leichter rüberportieren. Natürlich gibts 
auch ne Shell auf dem Teil, das finde ich fürs Debuggen ziemlich 
praktisch.
OP #3483395
Lesenswert?

Danke für die Feedbacks, man hat die Qual der Wahl!

RTX ist vermutlich nicht frei, bzw erhält man nur mit dem Kauf der 
Keil IDE.

eCOS klingt interresant, es gibt sogar einen Port für den Discovery! 
Aber nur mal zum angucken ist der Aufwand schon recht gross, habe keine 
Lust mir erst einen CVS-Client einzurichten nur um mir die 
Discovery-Demo runterzuladen. Zudem ist das arpeiten mit Cygwin immer 
recht buckelig, ich möchte den native Win32 ARM-GCC verwenden, mit 
Eclipse oder CooCoox als IDE.
=> Hätte jemand ein kleines Demo-Projekt als Zip-File bereit?

NuttX ist auch schon recht umfangreich/komplex, bietet aber vieles was 
mir sehr willkommen ist.
-TCP/IP-Stack
-Filesystem
-Shell
-Posix (vxWorks/Linux-ähnlich)
=> Hätte jemand ein kleines Demo-Projekt als Zip-File bereit?
(Firma: dl1bg) #3483417
Lesenswert?

Hi,

hier ein für das STM32F4 gebautes eCos, das du in ein beliebiges Projekt 
einbinden kannst.

Kopiere in deine "main.cpp" oder .c einfach

#include <stdlib.h>
#include <cyg/infra/diag.h>

#include "DSPController/CDSPController.h"
#include "Common/SystemMonitor/CSystemMonitor.h"
#include "WebServer/CWebServer.h"

extern "C" void cyg_user_start(void);

CDSPController* pub_pcl_DSP;
CWebServer* pub_pcl_Web;

void cyg_user_start()
{
  diag_printf("cyg_user_start()\n");

  pub_pcl_Web = new CWebServer;
}

und starte wie ich in CWebServer deine threads.

Gruß
Bernhard
Angehängte Dateien:
Gast #3615653
Lesenswert?

Hallo alle zusammen!
Ich versuche momentan eCos auf dem stm32f4_discovery zum Laufen zu 
bringen. Das setup und das flashen funktioniert so weit so gut. 
Allerdings habe ich einige Probleme mit dem HAL. Die Ansteuerung der 
LEDs zum Beispiel funktioniert bei mir überhaupt nicht, auch nicht mit 
dem setup von Bernhard. Selbst wenn ich die clocks manuell konfiguriere 
tut sich da nix. Kann mir da eventuell jemand nen Tipp geben was man da 
machen muss?
Ansonsten müsste ich weiterhin auf asm-Code zurückgreifen.

Gruß Juri

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren