STM32
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'un 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.

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.

Applications

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, 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.

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.

Compteur électrique 
Le compteur électrique Linky déployé en France .

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. Les séries F1 F3 F4 et F7 peuvent en être utilisés dans ce domaine. 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), il est notamment utilisé par les drones de Quantum Systems, 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.

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.

Séries 

Les différentes séries de microcontrôleurs 32 bits de la marque STMicroelectronics possèdent une référence sur 7 caractères:

 Famille : STM32 = famille de microcontrôleur basé sur les processeurs ARM Cortex-M 32-bit
Type : F = Mainstream ou High performance | L = Low Power | H = High performance | WB/WL = Wireless
 Modèle du processeur : 0 = M0 | 1/2 = M3 | 3/4 = M4 | 7 = M7
 Performance : Cette caractéristique représente la vitesse d'horloge (MHz), la RAM et les entrées et sorties. Elle est codée sur 2 chiffres.
 Nombre de pins : F = 20 | G = 28 | K = 32 | T = 36 | S = 44 | S = 44 | C = 48 | R = 64-66 | V = 100 | Z = 144 | I = 176
 Taille mémoire flash (en KByte) : 4 = 16 | 6 = 32 | 8 = 64 | B = 128 | C = 256 | D = 384 | E = 512 | F = 768 | G = 1024 | H = 1536 | I = 2048
 Package : P = TSOOP | H = BGA | U = VFQFPN = T = LQFP | Y = WLCSP
 Gamme de température : 6 = -40°C à 85°C | 7 = -40°C à 105°C

Par exemple, le STM32F429ZIT6 (à lire STM-32-F-4-29-Z-I-T-6) est un microcontrôleur de la compagnie STM de 32 bits mainstream équipé d'un CORTEX-M4, 180 MHz, 144 I/O, 144 pins, 2048 KBytes, un package LQFP et une température de fonctionnement allant de -40°C à 85°C.

Général

Série F0 
Lancée en 2012, cette série est basée sur l'ARM Cortex-M0 et peut monter jusqu'à une fréquence de 48 Mhz.

Série F1 
Lancée en 2007, cette série est la première à utiliser le cœur ARM Cortex-M3, la fréquence du CPU peut aller de 24 à 72 MHz. C'est un des plus gros succès de la marque dans ce domaine.

Série F3 
Lancée en 2012 ARM Cortex-M4F pouvant monter jusqu'à 72 MHz, il comporte un DSP et un FPU, ainsi que les jeux d'instruction Thumb-1 et Thumb-2 et Saturated d'ARM. Le circuit intégré est compatible broche à broche avec la série F1.

Ultra basse consommation 
Les différents modèles ultra-basse consommation sont :

Série L0 
ARM Cortex-M0+ à 32MHz, 8 à 192 Kio de mémoire flash, consomme  dans le mode plus basse consommation.

Série L1 
ARM Cortex-M3 à 32Mhz, 32 à 512 Kio de mémoire flash, consomme  dans le mode plus basse consommation.

Série L4 
ARM Cortex-M4 et un FPU à 80MHz, 180 Kio à 1 Mio de mémoire flash, consomme  dans le mode plus basse consommation.

Série L4+ 
ARM Cortex-M4 et un FPU à 120MHz, 1 à 2 Mio de mémoire flash, consomme  dans le mode plus basse consommation.

Série L5 
ARM Cortex-M33 (32-/64-bit, jeu d'instruction ARMv8-M) à 110 MHz, comportant la FPU, l'extension de sécurité TrustZone d'ARM et une extension de sécurité de STMicroelectronics, ainsi qu'une nouvelle version du processeur graphique ST ART Accelerator. Il gère jusqu'à 512 Kio de mémoire flash et 256 Kio de SRAM. Le support de USB Type-C est intégré de base.

Série U5 
ARM Cortex-M33 (32-/64-bit, jeu d'instruction ARMv8-M) à 160 MHz, comportant la FPU, l'extension de sécurité TrustZone d'ARM et des accélérateurs cryptographies robustes aux attaques par canaux cachés. Il gère jusqu'à 2048 Kio de mémoire flash et 768 Kio de SRAM.

Haute performance

Série F2 
Lancée en 2010, elle est comme la série F1, basée sur l'ARM Cortex-M3, mais avec des fréquences pouvant aller jusqu'à 120 MHz.

Série F4 
La série F4 sortie en 2011, est basée sur l'ARM Cortex-M4F, et comporte donc également un DSP, les versions F4P comportent en plus un FPU, ses fréquences selon les modèles, peuvent atteindre 84 à 180 MHz.

Série F7 

Sortie en 2014, cette série est basée sur des ARM Cortex-M7F, pouvant aller jusqu'à 216 Mhz et de dimension critique de 90nm. Il comporte un DSP, un FPU en simple et double précision et supporte les jeux d'instruction Thumb-1, Thumb-2 et Saturated d'ARM.

Les cartes de cette série contiennent l'accélérateur graphique ART.

Série H7 
Sortie au second semestre 2017, cette série est basée, comme la F7 sur des ARM Cortex-M7F, pouvant aller jusqu'à 480 Mhz. Il comporte un DSP et un FPU. Il existe une famille dual coeurs ou un ARM Cortex-M4F est associé au ARM Cortex-M7 pour augmenter la puissance de calcul.

Sans-fil

Série WB 
Cette série supporte plusieurs protocoles radio :  Bluetooth Low Energy 5.3, Zigbee et Thread. Il comporte un double-cœur  soit un Cortex-M0+ à 32 MHz dédié à la sécurité et aux protocoles radio et un Cortex-M4 à 64 MHz dédié à l'application. On trouve également une mémoire flash de 1MB et une mémoire RAM de 256kB.

Chrom-ART 
Le processeur graphique Chrom-ART a notamment les caractéristiques suivantes :
 Il gère un arrière plan et un avant plan séparés ;
 De tracer des fontes avec anti-crénelage ;
 Comporte son propre DMA ;
 Comporte différents niveaux d'activités pour la réduction de la consommation énergétique ;
 Calcul indépendamment et en parallèle au processeur.

Annexes

Notes et références

Bibliographie 
 
 
  (Licence CC BY-NC-SA 3.0)
 *

Liens externes 
  — Page de présentation des STM32
  — Éducatifs sur les STM32
 

STMicroelectronics
Architecture ARM
Microcontrôleur ARM
SoC ARM
La famille STM32 regroupe plusieurs séries de microcontrôleurs bits réalisés par la société Franco-Italienne STMicroelectronics . Les composants d' un même série STM32 sont basés sur un processeur d' architecture ARMbits , 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 . 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 de les microcontrôleurs peuvent également être programmés à l' aide de l' IDE d' Arduino . Applications 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 de les 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 ) . de les logiciels tels que Grbl permettent de contrôler de les machines de fraisage , à lesquelles notamment les imprimantes ou imprimantes de découpe laser se rapprochent . Permettant ainsi de rendre accessible ce type de machines traditionnellement très onéreuse à de les 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 de les microcontrôleurs ARM Cortex-Mbits ) et non Atmel AVRbits ) 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 . 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 de le 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 ) , sans besoin d' un véritable DAC . Compteur électrique Le compteur électrique Linky déployé en France \ . 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 de les processeursbits . Les séries F1 F3 F4 et F7 peuvent en être utilisés dans ce domaine . 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 ) , il est notamment utilisé par les drones de Quantum Systems , 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 de les amateurs expérimentés de ces disciplines . Ils supportent les STM32 F7 , F4 , F3 et F1 . 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 de les éléments disponibles sous licence GPLv2 et BSD . Séries Les différentes séries de microcontrôleursbits de la marque STMicroelectronics possèdent une référence surcaractères : Famille \ : STM32 = famille de microcontrôleur basé sur les processeurs ARM Cortex-Mbit Type \ : F = Mainstream ou High performance | L = Low Power | H = High performance | WB / WL = Wireless Modèle de le processeur \ := M0 |2 = M3 |4 = M4 | = M7 Performance \ : Cette caractéristique représente la vitesse d' horloge ( MHz ) , la RAM et les entrées et sorties . Elle est codée surchiffres . Nombre de pins \ : F = | G = | K = | T = | S = | S = | C = | R = | V = | Z = | I = Taille mémoire flash ( en KByte ) \ := | =| =| B = | C = | D = | E = | F = | G = | H = | I = Package \ : P = TSOOP | H = BGA | U = VFQFPN = T = LQFP | Y = WLCSP Gamme de température \ := C àC |=C àC Par exemple , le STM32F429ZIT6 ( à lire STM-32- F-4-29-Z-I-T-6 ) est un microcontrôleur de la compagnie STM debits mainstream équipé d' un CORTEX-M4,MHz,I / O, pins ,KBytes , un package LQFP et une température de fonctionnement allant deC àC. Général Série F0 Lancée en cette série est basée sur l' ARM Cortex-M0 et peut monter jusqu' à une fréquence deMhz . Série F1 Lancée en cette série est la première à utiliser le cœur ARM Cortex-M3 , la fréquence de le CPU peut aller deàMHz . C' est un de les plus gros succès de la marque dans ce domaine . Série F3 Lancée enARM Cortex-M4F pouvant monter jusqu' àMHz , il comporte un DSP et un FPU , ainsi que les jeux d' instruction Thumb-1 et Thumb-2 et Saturated d' ARM . Le circuit intégré est compatible broche à broche avec la série F1 . Ultra basse consommation Les différents modèles ultra-basse consommation sont \ : Série L0 ARM Cortex-M0 + àHz,àKio de mémoire flash , consomme dans le mode plus basse consommation . Série L1 ARM Cortex-M3 àhz,àKio de mémoire flash , consomme dans le mode plus basse consommation . Série L4 ARM Cortex-M4 et un FPU àHz ,Kio àMio de mémoire flash , consomme dans le mode plus basse consommation . Série L4 + ARM Cortex-M4 et un FPU àHz,àMio de mémoire flash , consomme dans le mode plus basse consommation . Série L5 ARM Cortex-M33 / 64-bit , jeu d' instruction ARMv8-M ) àMHz , comportant la FPU , l' extension de sécurité TrustZone d' ARM et une extension de sécurité de STMicroelectronics , ainsi qu' une nouvelle version de le processeur graphique ST ART Accelerator . Il gère jusqu' àKio de mémoire flash etKio de SRAM . Le support de USB Type-C est intégré de base . Série U5 ARM Cortex-M33 / 64-bit , jeu d' instruction ARMv8-M ) àMHz , comportant la FPU , l' extension de sécurité TrustZone d' ARM et de les accélérateurs cryptographies robustes à les attaques par canaux cachés . Il gère jusqu' àKio de mémoire flash etKio de SRAM . Haute performance Série F2 Lancée en elle est comme la série F1 , basée sur l' ARM Cortex-M3 , mais avec de les fréquences pouvant aller jusqu' àMHz . Série F4 La série F4 sortie en est basée sur l' ARM Cortex-M4F , et comporte donc également un DSP , les versions F4P comportent en plus un FPU , ses fréquences selon les modèles , peuvent atteindreàMHz . Série F7 Sortie en cette série est basée sur de les ARM Cortex-M7F , pouvant aller jusqu' àMhz et de dimension critique dem . Il comporte un DSP , un FPU en simple et double précision et supporte les jeux d' instruction Thumb-1 , Thumb-2 et Saturated d' ARM . Les cartes de cette série contiennent l' accélérateur graphique ART . Série H7 Sortie à le second semestre cette série est basée , comme la F7 sur de les ARM Cortex-M7F , pouvant aller jusqu' àMhz . Il comporte un DSP et un FPU . Il existe une famille dual coeurs ou un ARM Cortex-M4F est associé à le ARM Cortex-M7 pour augmenter la puissance de calcul . Sans-fil Série WB Cette série supporte plusieurs protocoles radio \ : Bluetooth Low Energy3 , Zigbee et Thread . Il comporte un double-cœur soit un Cortex-M0 + àMHz dédié à la sécurité et à les protocoles radio et un Cortex-M4 àMHz dédié à l' application . On trouve également une mémoire flash deB et une mémoire RAM deB. Chrom-ART Le processeur graphique Chrom-ART a notamment les caractéristiques suivantes \ : Il gère un arrière plan et un avant plan séparés ; De tracer de les fontes avec anti-crénelage ; Comporte son propre DMA ; Comporte différents niveaux d' activités pour la réduction de la consommation énergétique ; Calcul indépendamment et en parallèle à le processeur . Annexes Notes et références Bibliographie ( Licence CC BY-NC-SA0 ) * Liens externes — Page de présentation de les STM32 — Éducatifs sur les STM32 STMicroelectronics Architecture ARM Microcontrôleur ARM SoC ARM