Il existe un grand nombre de systèmes d'exploitation qui ont été portés sur les microcontrôleurs Cortex M3, il est donc probable que cela devienne une liste très longue. Avec cette spécification minimale, il est difficile de recommander quoi que ce soit en particulier, et une telle recommandation n'est généralement que le système d'exploitation (subjectif) préféré de l'auteur. Quels sont les critères qui vous intéressent? Comment prévoyez-vous de prendre la décision entre les différentes options?
La plupart des produits énumérés ci-dessus ont également des versions commerciales. Je n'ai pas énuméré les RTOS strictement commerciaux qui existent, car je suppose que vous êtes plus intéressé par les offres open source.
J'ai utilisé FreeRTOS pour un projet simple (micro TI / Stellaris Cortex M3 câblé à une balance de salle de bain, avec un serveur web pour que vous puissiez voir le poids sur la balance à distance). Passez simplement de l'utilisation du SDK du firmware du fournisseur. J'ai implémenté mon firmware de trois façons, avec le SDK du fournisseur, FreeRTOS et eLua. FreeRTOS semblait bien, au moins c'était suffisant pour commencer et faire fonctionner les choses. J'ai dû faire un petit portage pour le construire pour ma carte de développement (le port Stellaris dans la distribution source ciblait un écran LCD différent) mais par rapport à beaucoup de choses que j'ai utilisées, il était assez facile de travailler.
Suboptimus
5
Pourquoi est-ce la réponse acceptée? Ce n'est qu'une des nombreuses valides.
Jason S
6
Nous avons déjà utilisé le CT de Rowley (démarré et abandonné très rapidement) et FreeRtos (recommandé) dans les M3.
J'ai été très intéressé par ChibiOS mais je n'ai pas eu l'occasion de l'essayer. Commercial mais raisonnable.
Il existe également un système d'exploitation spécifique à M3 appelé Cocox , qui a l'air soigné, mais quelque chose m'a dérangé et ne m'a pas donné de détails. Pendant que je regardais cela, je suppose que je pensais que c'était trop nouveau pour franchir le pas, peut-être que maintenant c'est une autre histoire. (Il y a 14 mois).
Freescale a porté MQX sur sa gamme de microcontrôleurs Kinetis . La gamme comprend des Cortex-M4 et Cortex-M0. Freescale fournit une licence pour MQX lorsqu'il est utilisé avec Kinetis. Je ne suis pas sûr qu'il fonctionnera sur un Cortex non-Kinetis prêt à l'emploi.
En plus de fournir une distribution logicielle commerciale (mais très peu coûteuse) et diverses cartes / systèmes sur modules (SOM) Cortex-M, Emcraft distribue également la source complète de ses ports de noyau U-Boot et uClinux pour Cortex- M3 et M4 sur github.com./
SAFERTOS et OPENRTOS ont été portés sur Cortex-M3 à partir de systèmes à haute intégrité, et vous pouvez les évaluer gratuitement. http://www.highintegritysystems.com/
Je connais uClinux tel qu'il est utilisé dans mon université, et un autre dont je ne me souviens plus du nom maintenant.
Vous pouvez consulter cette page pour certains liens, mais cela est beaucoup plus détaillé sur les plates-formes disponibles; certains d'entre eux se réfèrent à des microcontrôleurs spécifiques, mais vous pouvez trouver ce qu'ils sont CM3: TI Stellaris, ST STM32, NXP LPC1700 en sont quelques-uns.
EDIT : Je n'ai pas lu sur le microcontrôleur spécifique; comme je l'ai dit, uClinux est utilisé sur les microcontrôleurs STM32 dans les projets de recherche de mon université.
Je pense que ucLinux est un mauvais choix pour le Cortex-M3, ma réponse à la question liée indique pourquoi
Toby Jaffey
@JobyTaffey Je ne sais pas à quel point il est bon de l'utiliser, et je n'ai (presque) jamais utilisé d'OS dans des microcontrôleurs ... Je sais juste que quelqu'un l'utilise pour une raison quelconque.
Réponses:
Il existe de nombreuses options open source:
La plupart des produits énumérés ci-dessus ont également des versions commerciales. Je n'ai pas énuméré les RTOS strictement commerciaux qui existent, car je suppose que vous êtes plus intéressé par les offres open source.
la source
FreeRTOS est un choix populaire.
http://www.freertos.org/portstm32iar.html
la source
Nous avons déjà utilisé le CT de Rowley (démarré et abandonné très rapidement) et FreeRtos (recommandé) dans les M3.
J'ai été très intéressé par ChibiOS mais je n'ai pas eu l'occasion de l'essayer. Commercial mais raisonnable.
Il existe également un système d'exploitation spécifique à M3 appelé Cocox , qui a l'air soigné, mais quelque chose m'a dérangé et ne m'a pas donné de détails. Pendant que je regardais cela, je suppose que je pensais que c'était trop nouveau pour franchir le pas, peut-être que maintenant c'est une autre histoire. (Il y a 14 mois).
la source
Freescale a porté MQX sur sa gamme de microcontrôleurs Kinetis . La gamme comprend des Cortex-M4 et Cortex-M0. Freescale fournit une licence pour MQX lorsqu'il est utilisé avec Kinetis. Je ne suis pas sûr qu'il fonctionnera sur un Cortex non-Kinetis prêt à l'emploi.
la source
Emcraft Systems est spécialisé dans la fourniture d'une distribution Linux (uCLinux) pour les microcontrôleurs Cortex-M3 et Cortex-M4:
www.emcraft.com
En plus de fournir une distribution logicielle commerciale (mais très peu coûteuse) et diverses cartes / systèmes sur modules (SOM) Cortex-M, Emcraft distribue également la source complète de ses ports de noyau U-Boot et uClinux pour Cortex- M3 et M4 sur github.com./
la source
SAFERTOS et OPENRTOS ont été portés sur Cortex-M3 à partir de systèmes à haute intégrité, et vous pouvez les évaluer gratuitement. http://www.highintegritysystems.com/
la source
Je connais uClinux tel qu'il est utilisé dans mon université, et un autre dont je ne me souviens plus du nom maintenant.
Vous pouvez consulter cette page pour certains liens, mais cela est beaucoup plus détaillé sur les plates-formes disponibles; certains d'entre eux se réfèrent à des microcontrôleurs spécifiques, mais vous pouvez trouver ce qu'ils sont CM3: TI Stellaris, ST STM32, NXP LPC1700 en sont quelques-uns.
EDIT : Je n'ai pas lu sur le microcontrôleur spécifique; comme je l'ai dit, uClinux est utilisé sur les microcontrôleurs STM32 dans les projets de recherche de mon université.
la source
Ceci est une assez grande liste RTOS https://en.wikipedia.org/wiki/List_of_ARM_Cortex-M_development_tools#Real-time_operating_systems
la source