Ministère de l`enseignement
supérieur
et de la recherche scientifique
Ecole Nationale d’Ingénieurs
de Monastir
Département génie électrique
Tp1 : Initiation à la
programmation des
microcontrollers
STM32F4xx en
utilisantSTM32CubeIDE
Elaborer par: Yehmed Adem
Mersni khawla
1. Introduction générale:
STM32 est une famille de microcontrôleurs de STMicroelectronics, une société mondiale de semi-
conducteurs basée en France. Les microcontrôleurs STM32 sont largement utilisés dans diverses
applications, y compris le contrôle industriel, l’automobile et l’électronique grand public.. Elle est
également couramment utilisée comme carte de développement pour d’autres microcontrôleurs et
processeurs. elle est également largement utilisée dans les applications IoT.
Parmi ses caractéristiques, elle est basé sur des cœurs Cortex-M de bras, connu pour sa performance
élevée et sa faible consommation d’énergie, offre une large gamme d’interfaces périphériques, y
compris UART, I2C, SPI, USB, CAN et Ethernet, offre une large gamme d’options de mémoire, y
compris jusqu’à 2 Mo de mémoire flash et jusqu’à 512 Ko de SRAM.
STM32CubeIDE est un environnement de développement intégré (IDE) spécialement conçu pour
fonctionner avec les microcontrôleurs STM32. Il fournit un ensemble complet d’outils et de ressources
pour le développement, le débogage et le déploiement de logiciels sur les appareils STM32.
Globalement, STM32 et STM32CubeIDE offrent une plate-forme puissante et flexible pour la
construction de systèmes embarqués et d’appareils IoT, avec un riche ensemble
de fonctionnalités et de ressources pour aider les développeurs à démarrer rapidement et à construire
des logiciels de haute qualité.
2. Question :
Configuration :
1) Ajouter une instruction pour allumer la diode LED D2 :
HAL_GPIO_WritePin(led_GPIO_Port, led_Pin, 1);
2)-Écrire une instruction pour commander la diode LED D2 avec le
bouton poussoir B1 :
Si B1 =1 -> LD2 “ON”
Si B1=0 ->LD2 “OFF”
3)-Écrire un programme pour clignoter la LED D2 à une fréquence de 1Hz :
4)- Écrire un programme pour réaliser un cycle de clignotement 10
périodes à chaque action sur le bouton poussoir B1 :
5)
a) -Écrire une fonction Led_Clin(uint32_t time) qui permet de réaliser
une période de clignotement de la diode D2 à une fréquence 1/time.
b-) Utiliser cette fonction pour varier la fréquence de la diode Led D2 en
fonction des actions sur le bouton poussoir B1 et selon le tableau suivant :