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?
#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

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.