STM32
From Wikipedia, the free encyclopedia
La famille STM32 regroupe plusieurs séries de microcontrôleurs 32-bits réalisés par la société franco-italienne STMicroelectronics. Les composants d'une même série STM32 sont basés sur un processeur d'architecture ARM 32-bits, tels que le Cortex-M33, le Cortex-M7F, le Cortex-M4F, le Cortex-M3, Cortex-M0+, ou encore Cortex-M0. Chaque microcontrôleur est constitué d'un cœur de calcul, de mémoire vive (RAM) statique, de mémoire flash (pour le stockage),de mémoire volatile RAM, d'une interface de débogage et de périphériques de calcul et de communication[1].
Le STM32 F4 comporte un Cortex-M4F, un DSP et un FPU. Il est notamment complètement géré par le système libre temps-réel ChibiOS/RT.
L'ensemble des microcontrôleurs peuvent également être programmés à l'aide de l'IDE d'Arduino.
Arduino
Il existe différents types de cartes compatibles Arduino basées sur le STM32. La série Nucleo a été conçue par STMicroelectronics à cet effet. D'autres constructeurs ont également fait des cartes compatibles utilisant ce SoC sous divers noms. Cela permet de l'utiliser comme contrôleur de machine-outil à commande numérique (CNC en anglais). des logiciels tels que Grbl permettent de contrôler des machines de fraisage[2], auxquelles notamment les imprimantes 3D ou imprimantes de découpe laser se rapprochent. Permettant ainsi de rendre accessible ce type de machines traditionnellement très onéreuse à des fab lab et amateurs éclairés.
Nucleo
Les cartes STM32 Nucleo, supportent une compatibilité matérielle avec les cartes Arduino, bien que basées sur des microcontrôleurs ARM Cortex-M (32 bits) et non Atmel AVR (8 bits) comme dans les cartes Arduino classiques. Il ajoute ainsi à Arduino de bonnes performances graphiques en y ajoutant l'accélérateur graphique Chrom-ART (fourni avec une bibliothèque open source), orienté affichage TFT (ou plus généralement, écran à cristaux liquides), et comportant pour cela une interface MIPI DSI[3].
Audio
Les STM32 F4 et supérieurs possédants un DSP, ils sont adaptés à l'usage pour le son. La carte synthétiseur Axoloti est un exemple d'application dans le domaine du son.
Le logiciel de synthétiseur analogique libre, Mozzi pour Arduino peut être utilisé directement sur les STM32, en particulier sur la carte à bas prix, STM32F103C8T6 blue pill board (dans les 2€), sans besoin d'un véritable DAC[4].
Compteur électrique
Le compteur électrique Linky déployé en France utilise un STM32 F2 (STM32 F203)[réf. nécessaire].
Drones
Ce processeur est utilisé comme processeur principal et contrôleur de vol dans les drones quadrirotors de course et acrobatiques utilisés en pilotage en immersion (FPV, généralement DIY (artisanaux). Il offre plus de puissance de calcul que les autres contrôleurs utilisés dans ce type de drone, tel que les Atmel AVR et le Microchip PIC, tous deux des processeurs 8 bits[5],[6]. Les séries F1 F3 F4 et F7 peuvent en être utilisés dans ce domaine[7]. Les STM32 de la série F4 en particulier, ont un certain succès dans ce domaine (où il est généralement appelé F4[8]), il est notamment utilisé par les drones de Quantum Systems[9], mais également sur les « cartes de vol » (cartes contrôleur) de différents constructeurs (Aikon, Matek…). Le firmware de ce type de cartes de vol, contenu sur une EEPROM est flashable et différents firmwares sont disponibles, dont les populaires firmwares sous licence libre, Cleanflight et son fork Betaflight, développés par des amateurs expérimentés de ces disciplines. Ils supportent les STM32 F7, F4, F3 et F1[10].
Fer à souder
Le fer à souder type TS100, vendu par différentes marques, comporte une carte utilisant un STM32. Un firmware sous licence libre, pouvant remplacer celui livré par défaut de Miniware (E-design), utilise FreeRTOS sous sa propre licence, et comporte des éléments disponibles sous licence GPLv2 et BSD[11].
- Un des types de carte Nucleo STM32F411 (F4)
- Carte surnommée Blue Pill compatible Arduino basée sur un STM32 F103 C8T6 et reliée par GPIO à un module comportant un microsystème électromécanique MPU6050 (gyroscope et accéléromètre).
- Carte de vol basée sur un STM32F103CBT6 (F1)
- Gros plan sur un STM32F031K4 (F0) utilisé sur une carte de vol de drone quadrirotor