STM32CubeIDE est le logiciel intégré de ST pour développer les microcontrôleurs STM32.
Auparavant, deux outils étaient nécessaires : TrueSTUDIO (Atollic) et STM32CubeMX (ST).
En 2019, ST a racheté Atollic et les deux logiciels ont été fusionnés pour former STM32CubeIDE.
STM32CubeIDE est librement téléchargeable sur le site ST (STM32CubeIDE)
Il permet :
de configurer les périphériques
d'écrire l'application en C ou C++
de télécharger l'application dans une cible
de débugger l'application
Prise en main
Nous allons ici montrer la configuration d'un projet avec une carte NUCLEO-64.
Les cartes NUCLEO sont produites par ST à des fins de tests et d'évaluation des microcontrôleurs. Elles sont ouvertes, dans le sens où très peu de périphériques externes y sont intégrés et donc toutes les fonctionnalités du microcontrôleur sont disponibles.
De plus, toutes les pattes du microcontrôleur sont accessibles sur des connecteurs. De surcroît, elles disposent de connecteurs Arduino pour les aficionados.
Il existe trois types de cartes NUCLEO, selon le nombre de pattes du microcontrôleur employé : NUCLEO-32, NUCLEO-64 et NUCLEO-144.
Pour cet exemple, on utilise une NUCLEO-F446RE équipée d'un STM32F446RE. La transposition sur une autre carte NUCLEO ou un autre microcontrôleur reste simple.
Sur cette carte, on distingue deux zones :
La partie ST-Link, avec une prise USB. Elle permet de programmer le microcontrôleur en raccordant l'USB à l'ordinateur.
La partie Microcontrôleur sur laquelle s'exécutera l'application.
On dispose d'un bouton poussoir utilisateur (bleu) et d'un bouton poussoir Reset (noir).
Une LED CMS est disponible pour l'application.
La carte peut être alimentée par les connecteurs et dispose de régulateurs 5V et 3,3V.
Les deux cartes sont sécables afin d'obtenir une carte d'application autonome.
Lancement de l'application
Démarrer l'application STM32CubeIDE.
Une première fenêtre s'ouvre :
On indique dans cette fenêtre le répertoire de travail. Ce répertoire constituera un espace de projets, dans lequel plusieurs projets pourront figurer.
On peut modifier le chemin proposé en cliquant sur
Aller ensuite dans File ® New ® STM32 Project
Cliquer sur Board Selector :
Dans Type, cocher NUCLEO-64 :
Dans MCU/MPU Series, cocher STM32F4 :
Dans la partie droite, cocher la carte NUCLEO-F446RE :
Cliquer
Dans la fenêtre suivante, choisir un nom de projet (ici, on prend le nom Test) :
Cliquer enfin
Une fenêtre s'ouvre alors. Elle permet d'initialiser les périphériques internes dans leur mode par défaut.
Ceci est préférable, dans la mesure où les pattes utilisées par la carte seront ainsi référencées.
Cliquer
A l'ouverture du projet, on obtient la visualisation du microcontrôleur suivante :
Les pattes épinglées en vert sont celles qui sont déjà utilisées pour l'horloge, le programmateur (ST-Link), le bouton poussoir et la LED.
On constate qu'il reste pas mal de pattes d'entrées-sorties disponibles pour l'application. Si cela s'avère insuffisant, on s'orientera sur une carte NUCLEO-144.