FreeRTOS [1], l’environnement exécutif de Richard Barry plébiscité par Amazon Web Services (AWS), fonctionne sur une plateforme matérielle ou son émulateur munis de seulement 2,5 KB de RAM. La mise en œuvre de FreeRTOS dans aussi peu de ressources fournit une opportunité de plonger dans les détails de l’implémentation de ses fonctions.
Le microcontrôleur Atmega32U4 fait partie des petites architectures 8-bits très faciles à appréhender, compte tenu de ses faibles ressources et de la taille réduite de la documentation technique limitée à quelque 400 pages [2]. Pour son malheur, il s’agit aussi d’une plateforme communément supportée par la bibliothèque Arduino avec toutes les bêtises qui traînent sur le Web autour de cette approche supposée simple de la programmation. Malgré les ressources très réduites des 2,5 KB de RAM, nous nous interrogeons sur la capacité à exécuter l’environnement exécutif FreeRTOS et ainsi aborder les techniques classiques de développement de systèmes embarqués exploitant une multitude de tâches – et donc l’accès concurrent aux ressources protégé par mutex et sémaphores – voire le partage d’informations entre tâches par les queues.
1. FreeRTOS
Nous avions déjà abordé FreeRTOS sur STM32 dans [3] et [4] en argumentant que l’environnement...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première