<aside>
💡 Brancher le câble de transfert de données sur le branchement USB ST-LINK car ST-LINK est le debugger du circuit intégré pour le STM32. Il est directement connecté au programmateur qui va téléverser par la suite le code dans le microcontrolleur.
</aside>
Analyse
- La configuration des GPIO (General Purpose Input/Output) est importante avant de coder car elle définit la façon dont les entrées/sorties sont utilisées. Cela permet de définir le mode de fonctionnement d'une entrée/sortie, par exemple s'il s'agit d'une entrée, une sortie, un alternate function, etc. La configuration adéquate des GPIO est cruciale pour la bonne communication entre le microcontrôleur et les périphériques externes, et peut également affecter les performances du système. Par conséquent, il est important de configurer correctement les GPIO avant d'écrire du code pour éviter les erreurs et les problèmes de communication. De même, l’analyse du voltage est important car cela évite d’endommager la carte électronique.
Lors de la génération du projet à partir d’une carte, on obtient un visualisateur du processeur STM32F072RB Discover. On peut donc voir tout les pins qui sont ouvert.

Etape 0: Se renseigner sur la documentation ainsi que sur la schématique du circuit électronique
Etape 1: Configuration des GPIO ( General Purpose Input/Output )
Le processus général pour configurer les GPIOs peut être divisé en plusieurs étapes:
- Définir les modes de fonctionnement pour chaque entrée/sortie. Il est possible de choisir parmi différents modes, comme l'entrée, la sortie, le mode alternate function, etc.
- Configurer les paramètres pour chaque entrée/sortie, tels que la vitesse, la pull-up/pull-down, etc.
- Initialiser les entrées/sorties. Cela peut inclure la définition de l'état initial pour les sorties, ou l'activation de l'interrupt pour les entrées.
- Vérifier la configuration en effectuant des tests de base pour s'assurer que les entrées/sorties fonctionnent comme prévu.
- Intégrer la configuration des GPIOs avec le reste du code en utilisant des fonctions d'initialisation, de lecture et d'écriture pour les entrées/sorties.