Passer aux informations sur le produit
Guide complet de Lim Jong-su sur le STM32 Cortex-M, vol. 1
Guide complet de Lim Jong-su sur le STM32 Cortex-M, vol. 1
Description
Introduction au livre
La première édition a été publiée, et une édition révisée a été publiée plus de deux ans et demi plus tard.
Les trois premiers livres devaient paraître sous forme de série, le tome 2 étant prévu pour octobre 2024.
Dans cette édition révisée, les éléments suivants ont été ajoutés et révisés par rapport à la première édition.
En raison des modifications de licence des principaux outils de développement, MDKARM de KEIL Inc. et Embedded Workbench de IAR Inc., le contenu les concernant a été révisé et complété.
Le code et le déroulement général des exemples ont été conservés afin que vous puissiez regarder, suivre et pratiquer les 41 cours vidéo existants sans aucun problème.
Par conséquent, suite du volume 1.
Pour étudier l'édition révisée, vous devez utiliser par défaut la carte SJ_MCUBook_M3, mais nous recommandons d'utiliser la carte SJ_MCUBook_M4, qui sera utilisée en commun dans le volume 1, le volume 2 et le prochain volume 3.
Pour plus de détails, voir 10.2.
Veuillez vous référer à l'unité.
Certains contenus ont été révisés et complétés (par exemple 14.3.
Unité, Chapitre 16.
etc).

  • Vous pouvez consulter un aperçu du contenu du livre.
    Aperçu

indice
Chapitre 1 : Introduction aux microcontrôleurs STM32 19

■ Objectif d'apprentissage 20
1.1 Types et caractéristiques des microcontrôleurs STM32 21
1.2 Schéma de configuration interne du microcontrôleur STM32 25
1.3 Introduction aux outils de développement liés au microcontrôleur STM32F 29
■ Projet de recherche 44

Chapitre 2 : Comment installer CubeIDE, CubeMX, IAR et KEIL 45

■ Objectif d'apprentissage 46
2.1 Introduction à l'installation de CubeIDE 47
2.2 Introduction à l'installation de CubeMX 51
2.3 Introduction à l'installation d'IAR Embedded Workbench 52
2.4 Introduction à la méthode d'installation de KEIL MDK-ARM 59
2.5 Introduction aux autres logiciels requis 64
2.5.1 Comment installer TERA Term 64
2.5.2 Comment installer SJ_MCUBook_Apps 66
■ Projet de recherche 75

Chapitre 3 : Utilisation du GPIO 77

■ Objectif d'apprentissage 79
3.1 Analyse de la structure interne et des caractéristiques électriques des GPIO 80
3.2 Méthode de contrôle du port GPIO 90
■ Projet de recherche 106

Chapitre 4 : Introduction aux interruptions et aux méthodes de gestion des interruptions externes 107

■ Objectif d'apprentissage 109
4.1 Comment utiliser les interruptions externes avec KEIL 110
4.2 Exemple d'utilisation des interruptions externes GPIO 129
■ Projet de recherche 133

Chapitre 5 : Réglages de l’alimentation et de l’horloge 135

■ Objectif d'apprentissage 136
5.1 Système d'alimentation et de surveillance 137
5.2 Mode d'alimentation 140 du microcontrôleur STM32
5.3 Comment régler l'horloge 145
5.3.1 Introduction à l'horloge HSI 149
5.3.2 Introduction à la PLL (boucle à verrouillage de phase) 150
5.3.3 Introduction à l'horloge LSE 151
5.3.4 Introduction aux autres horloges 152
■ Projet de recherche 154

Chapitre 6 : Comment utiliser la minuterie et le minuteur de surveillance 155

■ Objectif d'apprentissage 156
6.1 Analyse détaillée du principe de fonctionnement de la minuterie 158
6.2 Comment utiliser le minuteur avec des exemples 166
6.3 Comment utiliser le minuteur de surveillance 175
6.4 Comment utiliser l'ADM8613 (chien de garde) 181
6.5 Comment implémenter une fonction de délai en microsecondes à l'aide d'une minuterie 188
■ Projet de recherche 191

Chapitre 7 : Comment générer et utiliser la modulation de largeur d’impulsion (PWM) 193

■ Objectif d'apprentissage 194
7.1 Introduction à la modulation de largeur d'impulsion (PWM) et à son utilisation 195
7.2 Comment synchroniser plusieurs minuteurs 204
7.2.1 Réinitialisation du mode 208 pour la synchronisation de la minuterie
7.2.2 Mode de déclenchement 210 pour la synchronisation de la minuterie
7.2.3 Mode de déclenchement 212 pour la synchronisation des minuteries
■ Projet de recherche 220

Chapitre 8 : Utilisation de l’UART et rédaction des spécifications de transmission 221

■ Objectif d'apprentissage 222
8.1 Introduction à la structure de la bibliothèque STM32 223
8.2 Utilisation de l'UART avec CubeIDE 231
8.3 Comment communiquer avec les programmes Windows via UART 250
8.4 Précautions lors de l'utilisation du composant UART2USB dédié 262
■ Projet de recherche 264

Chapitre 9 : Comment utiliser le RTC 265

■ Objectif d'apprentissage 266
9.1 Introduction à l'horloge temps réel et description détaillée du CubeMX 267
9.2 Utilisation de l'horloge temps réel (RTC) et communication entre PC 278
9.3 Comment appliquer le projet L476 RTC aux F103, F303 et L496 292
9.3.1 Comment appliquer le code RTC L476 à F103 292
9.3.2 Comment appliquer le code RTC L476 au F303 300
9.3.3 Comment appliquer le code RTC L476 au L496 302
9.4 Utilisation des fonctions HAL liées à l'horloge temps réel (RTC) 304
■ Projet de recherche 314

Chapitre 10 : Utilisation du protocole I2C et des composants associés 315

■ Objectif d'apprentissage 316
10.1 Introduction à la communication I2C 317
10.2 Introduction au tableau pédagogique SJ_MCUBook_M3 321
10.3 Comment utiliser l'EEPROM AT24C256C 324
10.4 Méthode de codage EEPROM AT24C256C 331
10.5 SJ_MCUBook_M3 Utilisation du port UART : 344
10.6 Comment utiliser l'EEPROM M24M02-DR 346
10.7 Comment utiliser le chargeur de batterie Li-Ion ADP5062 348
10.8 Comment utiliser le DS3231M RTC 352
10.9 Bug I2C et autres mises en garde concernant les STM32F10xxC/D/E 359
■ Projet de recherche 363

Chapitre 11 : Comment utiliser SPI et les composants associés 365

■ Objectif d'apprentissage 366
11.1 Introduction à l'utilisation de SPI 367
11.2 Comment utiliser le DAC TLV5638 377
11.3 TLV5638 Méthode de codage DAC 385
11.4 Méthode de sortie du convertisseur numérique-analogique TLV5638 utilisant la minuterie 394
11.5 Utilisation des convertisseurs numérique-analogique AD5687R et AD5689R 401
■ Projet de recherche 418

Chapitre 12 : Comment utiliser le DMA 419

■ Objectif d'apprentissage 420
12.1 Introduction à l'accès direct à la mémoire (DMA) sur les microcontrôleurs STM32 421
12.2 Utilisation de l'UART DMA et de l'interruption IDLE 430
12.3 Nécessité d'une mémoire tampon et introduction à la double mémoire tampon 446
12.4 Méthode d'implémentation du transfert DMA et de la file d'attente circulaire (tampon annulaire) 453
12.5 Comment implémenter un DMA UART complet 461
12.6 Méthode de codage SPI DMA 480
12.7 Précautions de codage DMA 489
■ Projet de recherche 493

Chapitre 13 : Convertisseur analogique-numérique, capteur de température interne et utilisation de la thermistance NTC 495

■ Objectif d'apprentissage 496
13.1 Concept et types de CAN 497
13.2 Comment lire les fiches techniques des CAN 503
13.3 Configuration de base du CAN avec le CubeMX 509
13.4 Comment utiliser l'ADC avec le CubeMX 529
13.5 Autres méthodes de paramétrage ADC 544
13.6 Méthode de mesure de température 553
13.6.1 Méthode de mesure de température utilisant une sonde NTC 554
13.6.2 Méthode de mesure de température utilisant le capteur de température interne du microcontrôleur STM32F 559
■ Projet de recherche 564

Chapitre 14 : Utilisation du CNA et des priorités d’interruption 565

■ Objectif d'apprentissage 566
14.1 Résumé des fonctionnalités du convertisseur numérique-analogique (DAC) du microcontrôleur STM32 567
14.2 Comment utiliser le DAC 578
14.3 Priorité d'interruption 588
■ Projet de recherche 606

Chapitre 15 : Utilisation du RS-485 et de l’écran LCD 607

■ Objectif d'apprentissage 608
15.1 Introduction à la communication RS-485 et à son utilisation 609
15.2 Comment utiliser l'écran LCD 16×2 618

Chapitre 16 : Résumé de l’utilisation d’IAR, KEIL, CubeIDE et CubeMX 623

■ Objectif d'apprentissage 624
16.1 Résumé de l'utilisation d'IAR Embedded Workbench 625
16.1.1 Comment inclure des fichiers d'en-tête externes arbitraires 625
16.1.2 En cas d'erreur CMSIS 626
16.1.3 Précautions lors de la sortie des opérations de débogage 626
16.1.4 Si plus de données sont générées que prévu 627
16.1.5 Comment vérifier l'utilisation des ressources du microcontrôleur 629
16.1.6 En cas d'erreur de correspondance de chemin d'accès au fichier source, 632
16.1.7 Comment exclure des fichiers sources arbitraires d'un projet 633
16.1.8 Comment combiner les images du chargeur de démarrage et de l'application 634
16.1.9 Méthodes de débogage pour 2 images et précautions CubeIDE 650
16.1.10 Comment passer à Projet actif et point rouge 656 suite à une modification de fichier
16.1.11 Erreur de dépassement de capacité de la pile CSTACK 657
16.1.12 Résumé des méthodes d'utilisation de IAR C-STAT 658
16.1.13 Comment ajouter un nouveau projet 661
16.1.14 L'exécution ne s'arrête pas au point d'arrêt 662
16.1.15 Comment configurer l'optimisation partielle 663
16.1.16 Option 665 pour la définition de tableaux de tailles variables
16.1.17 Si le fichier hexadécimal n'est pas créé, 666
16.1.18 Les variables globales ne sont pas disponibles dans la fenêtre de surveillance en direct 667
16.1.19 Erreur dans le fichier de script de l'éditeur de liens *.icf généré par CubeMX ! 668
16.1.20 Comment utiliser l'environnement de débogage IAR dans d'autres projets 671
16.2 Résumé de l'utilisation de KEIL MDK-ARM 672
16.2.1 Comment créer un nouveau projet pour n'importe quel MCU 673
16.2.2 Comment modifier le nom du projet 680
16.2.3 Comment télécharger uniquement les fichiers hex 680
16.2.4 Si les fichiers obtenus de l'extérieur ne correspondent pas aux fichiers de la bibliothèque 683
16.2.5 Si vous affectez une valeur négative à uint32_t, elle sera toujours égale à « 0 ». 686
16.2.6 Précautions d'utilisation du langage C basé sur le Cortex Core - Concerne également IAR 686
16.3 Précautions lors de l'utilisation de CubeMX et CubeIDE 694
16.3.1 Comment importer un projet IAR dans CubeIDE 694
16.3.2 Configuration de CubeMX et de l'émulateur ST-Link 702
16.3.3 Précautions lors de l'ajout de nouveaux fichiers *.c 705
16.3.4 Activation de l'unité de calcul en virgule flottante (FPU) 705
16.3.5 Si vous ne vous souvenez pas du nom de la fonction HAL dont vous avez besoin, 706
16.3.6 L'erreur 707 s'est produite après le changement de l'outil de développement en IAR.
16.4 Précautions d'utilisation des cartes Nucleo 708
16.4.1 Comment déboguer d'autres cartes avec l'émulateur sur la carte Nucleo 708
16.4.2 Si la communication UART fournie par la carte Nucleo ne fonctionne pas correctement, 710
16.4.3 Résumé des concepts relatifs aux courants de fuite 711

Annexe 1 : Introduction à la carte SJ_MCUBook_M0/3/4 713

Recherche 721

Avis de l'éditeur
La première édition a été publiée, et une édition révisée a été publiée plus de deux ans et demi plus tard.
Les trois premiers livres devaient paraître sous forme de série, le tome 2 étant prévu pour octobre 2024.
Dans cette édition révisée, les éléments suivants ont été ajoutés et révisés par rapport à la première édition.

① En raison des changements de licences des principaux outils de développement, MDKARM de KEIL Inc. et Embedded Workbench de IAR Inc., le contenu relatif à ces outils a été révisé et complété.
② Les exemples de codes et le flux généraux ont été maintenus afin que vous puissiez regarder, suivre et pratiquer les 41 cours vidéo existants sans aucun problème.
Par conséquent, suite du volume 1.
Pour étudier l'édition révisée, vous devez utiliser par défaut la carte SJ_MCUBook_M3, mais nous recommandons d'utiliser la carte SJ_MCUBook_M4, qui sera utilisée en commun dans le volume 1, le volume 2 et le prochain volume 3.
Pour plus de détails, voir 10.2.
Veuillez vous référer à l'unité.
③ Certains contenus ont été révisés et complétés.
Par exemple, 14.3.
Unité, Chapitre 16.
etc.


Ce livre est un cadeau qui fera de vous un expert en programmation de microcontrôleurs STM32.


Chacun a quelque chose qu'il veut accomplir dans la vie, et chacun s'est probablement imaginé réussir en poursuivant constamment cet objectif.
Même si ce n'est pour l'instant qu'un rêve, vous aurez l'occasion de vous imaginer comme un fier protagoniste sur la scène de votre vie et d'en être heureux.
Ce livre regorge de précieux conseils sur la programmation pour microcontrôleur.
Il regorge de précieux cadeaux qui vous aideront assurément à devenir le fier protagoniste de la programmation embarquée et à réaliser vos rêves.

Surtout, ce livre n'aborde pas les tenants et les aboutissants des microcontrôleurs STM32.
De plus, ce livre ne tient pas compte du confort ni de la commodité du lecteur.
Il contient de nombreuses informations sur les microcontrôleurs, qui constituent le point de départ de l'étape nécessaire pour concevoir le circuit électronique de votre produit idéal avec seulement de l'alignement et de la patience, puis pour créer un produit complet en y intégrant le logiciel sur la carte conçue.


Ce livre vous apprendra non seulement à utiliser le microcontrôleur STM32, mais aussi les caractéristiques et l'utilisation de ses différents composants, ainsi que les détails des circuits.
De plus, vous apprendrez à développer le protocole de transmission permettant à votre microcontrôleur et au programme Windows utilisé sur les PC commerciaux de communiquer entre eux par l'échange de données, et à visualiser en temps réel les données fournies par le microcontrôleur sous forme de graphiques et de données.


Comme toujours, tous les documents, y compris les fichiers sources présentés dans ce livre, sont disponibles sur le café Naver de l'auteur, http://cafe.naver.com/limjongsulab, et mon adresse e-mail est limjongsulab@naver.com.

Je gère toutes les informations concernant mes ouvrages existants, tels que Matlab et Simulink, ainsi que mes ouvrages à venir, de même que les différentes formations et les dernières informations proposées par mon entreprise, sur le Naver Cafe mentionné précédemment.
Nous avons ici eu une discussion avec vous par le biais de questions et réponses.
Et j'espère m'inscrire et partager de nombreux documents utiles.

Pour acheter des documents et des cours vidéo sur divers produits, notamment le programme Windows SJ_MCUPro, SJ_MCUFree utilisé dans ce livre, ainsi que les cartes SJ_MCUBook_M0, SJ_MCUBook_M3 et SJ_MCUBook_M4, veuillez consulter la page d'accueil de l'auteur : https://www.sujinpub.com/shop/.
SPÉCIFICATIONS DES PRODUITS
- Date d'émission : 22 novembre 2024
Nombre de pages, poids, dimensions : 728 pages | 1 552 g | 188 × 257 × 38 mm
- ISBN13 : 9791197772726

Vous aimerez peut-être aussi

카테고리