Programme ST-Link

Table des Matières

STLINK-V3SET

Nous avons déjà présenté les outils de débogage matériel / programmeur. Voyons maintenant ensemble le programmeur ST-Link. Dans cet article, vous découvrirez les différentes versions de ST-Link, leurs différences et comment les utiliser pour programmer votre puce.

Version ST-Link

Il existe actuellement trois versions de ST-Link : ST-LINK/V1, ST-LINK/V2 et STLINK-V3. Parallèlement, la carte de développement ST est également fournie avec son propre outil ST-Link, mais la version ST-Link varie en fonction de la carte de développement.

ST-LINK V1

ST-LINK V1 est la version la plus ancienne, et actuellement peu de gens l'utilisent sur le marché.

ST-LINK V1
ST-LINK V1

ST-LINK V2

La version ST-LINK V2 peut être divisée en deux : ST-LINK/V2 (version standard) et ST-LINK/V2-ISOL (version isolée). Parmi celles-ci, ISOL (Isolation) est dotée d'une isolation de 1000 V. Cette version est relativement coûteuse.

ST-LINK_V2
ST-LINK_V2
ST-LINK_V2-ISOL
ST-LINK_V2-ISOL

ST-LINK V3

STLINK-V3 comporte également plusieurs catégories :

STLINK-V3SET

STLINK-V3SET est un ensemble d'outils de programmation et de téléchargement entièrement fonctionnels, indépendants de la carte d'évaluation ST, et constitue également un outil STLINK-V3 courant. Il est commercialisé au prix de 35 $.

STLINK-V3SET
STLINK-V3SET

STLINK-3MINI

En 2019, ST a lancé le STLINK-3MINI, plus compact et plus petit, mesurant seulement 15 x 30 mm, et son prix à la mise en vente n'était que de 9,75 $.

STLINK-3MINI
STLINK-3MINI

STLINK-V3MODS

Les fonctions du STLINK-V3MODS et du STLINK-V3MINI sont fondamentalement les mêmes, mais leurs scénarios d'application sont différents. Vous pouvez le comparer à la « version tampon » du STLINK-V3MINI.

STLINK-V3MODS
STLINK-V3MODS

B-STLINK-VOLT

La carte B-STLINK-VOLT est un module complémentaire/une carte adaptateur pour STLINK-V3SET. Elle est plus adaptée aux systèmes STM32 à basse tension (tels que 1,8 V).

B-STLINK-VOLT
B-STLINK-VOLT

B-STLINK-ISOL

Le B-STLINK-ISOL est similaire au B-STLINK-VOLT et est également une « carte d'extension » pour le STLINK-V3SET. Il offre des fonctions d'isolation galvanique et de conversion de tension et s'utilise avec des microcontrôleurs inférieurs à 3,3 V.

B-STLINK-ISOL
B-STLINK-ISOL

STLINK-V3PWR

STLINK-V3PWR, lancé en mars 2023, est un matériel ST-Link utilisé pour surveiller et déboguer le courant à faible consommation STM32. Son prix de lancement est de 93,10 $.

STLINK V3PWR
STLINK-V3PWR

Différentes interfaces ST-LINK

Interface SWIM

L'interface SWIM est utilisée pour déboguer et télécharger STM8. Elle ne comporte que quatre fils et est définie comme suit :

ST-LINK PortSTM8 Target BoardFunction
VDDMCU VCCConnects to STM8's power supply VCC
DATAMCU SWIM PINConnects to STM8's SWIM pin
GNDGNDConnects to STM8's GND
RESETMCU RESET PINConnects to STM8's reset pin

Interface JTAG/SWD

L'interface ST-Link/V2 JTAG/SWD est définie comme suit :

PinST-LINK PortTarget STM32 (JTAG)Target STM32 (SWD)
1TVCCMCU VDDMCU VDD
2TVCCMCU VDDMCU VDD
3TRSTJNTRSTGND
4GNDGNDGND
5TDIJTDIGND
6GNDGNDGND
7TMS_SWDIOJTMSSWDIO
8GNDGNDGND
9TCK_SWCLKJTCKSWCLK
10GNDGNDGND
11NCNCNC
12GNDGNDGND
13TDO_SWOJTDOTRACESWO (for SWV)
14GNDGNDGND
15NRSTNRSTNRST
16GNDGNDGND
17NCNCNC
18GNDGNDGND
19VDDNCNC
20GNDGNDGND

Outil de programmation ST-LINK

Une caractéristique commune du ST-LINK est qu'il est utilisé pour la programmation (téléchargement de programmes). Les outils de programmation comprennent : STVP, STM32 ST-LINK Utility et STM32CubeProgrammer.

  • STVP : outil pouvant être utilisé pour la programmation STM8 et 32.
  • ST-LINK Utility : outil limité à la programmation STM32.
  • STM32CubeProg : outil pouvant être utilisé pour la programmation STM8 et 32.

Exemple de programmation ST-LINK avec Keil 5

Nous vous présentons ici comment utiliser st-link v2 dans Keil 5 pour télécharger et déboguer des programmes pour la carte de développement arm. Cela inclut la méthode de câblage de stlink, la configuration de stlink dans keil, le débogage dans keil, etc.

Keil 5 Configuration

Cliquez sur la baguette magique dans la barre d'outils Keil pour afficher la boîte de dialogue de configuration comme indiqué ci-dessous :

Setting the ST-Link Debugger of Keil
Setting the ST-Link Debugger of Keil
ST-LINKV2 Debug Adapter_Cortex-M Target Driver Setup_Keil
ST-LINKV2 Debug Adapter_Cortex-M Target Driver Setup_Keil

Cochez « Réinitialiser et exécuter », le programme se réinitialisera automatiquement et s'exécutera après le téléchargement vers le microcontrôleur.

Flash Download Function_Cortex-M Target Driver Setup_Keil
Flash Download Function_Cortex-M Target Driver Setup_Keil

Débogage

Entrer en mode débogage

Cliquez sur le bouton pour entrer ou sortir du mode débogage :

Debug mode of Keil
Debug mode of Keil

Opérations courantes de débogage

Réinitialiser

Réinitialisez le programme à sa position initiale.

Reset of Keil
Reset of Keil
Débogage en une seule étape

Cela signifie que chaque fois que vous cliquez sur le bouton, le programme exécute une étape. Lorsqu'il rencontre une fonction d'appel, il entre dans la fonction appelée. Cliquez sur le bouton icône ou appuyez sur la touche de raccourci F11.

Single-step Debug of Keil
Single-step Debug of Keil
Débogage étape par étape

Cela signifie un débogage ligne par ligne, c'est-à-dire que chaque fois que vous cliquez sur le bouton, le programme exécute une ligne. Lorsqu'une fonction est rencontrée, il n'entre pas dans la fonction. Cliquez sur le bouton icône ou appuyez sur la touche de raccourci F10.

Step-by-step Debug of Keil
Step-by-step Debug of Keil
Sortir du débogage

signifie sortir du débogage de fonction, c'est-à-dire que chaque fois que vous cliquez sur le bouton, le programme sort d'une fonction jusqu'à ce qu'il sorte de la fonction la plus externe (fonction principale). Cliquez sur le bouton icône ou appuyez sur la combinaison de touches Ctrl + F11.

Jump Out Debug of Keil
Jump Out Debug of Keil
Exécutez le programme jusqu'à la position spécifique.

Si vous cliquez sur le bouton (ou appuyez sur Ctrl + F11), le programme s'arrêtera lorsqu'il atteindra la position du curseur (à condition que le programme puisse être exécuté jusqu'à la position du curseur).

Runs the Keil's Program to the Specific Location
Runs the Keil's Program to the Specific Location
Aller à la position de pause du programme Keil

Cette fonction est efficace lorsque le programme cesse de s'exécuter et peut nous aider à trouver l'emplacement de la pause du programme.

Jump to the Pause Position of Keil's Program
Jump to the Pause Position of Keil's Program
Fenêtre de débogage

Le menu de la fenêtre de débogage n'est activé que pendant le processus de débogage et diffère de celui de la fenêtre en mode d'édition normal.

Debug Window of Keil
Debug Window of Keil
Mémoire ou fenêtre variable

Sélectionnez une variable, cliquez avec le bouton droit de la souris et sélectionnez « Ajouter « Nom de la variable » à… » pour l'ajouter à la fenêtre d'observation spécifiée.

Variable Debug of Keil
Variable Debug of Keil
Fenêtre Périphériques système

C'est-à-dire la fenêtre d'affichage de la valeur du registre périphérique.

System peripherals of Keil
System peripherals of Keil

Abonnez-vous

Rejoignez notre liste d’abonnés pour obtenir mensuel blog des mises à jour, des nouvelles technologies, des études de cas. Nous n’enverrons jamais de spam, et vous pouvez vous désinscrire à tout moment.

À Propos De L'Auteur

Picture of Aidan Taylor
Aidan Taylor

I am Aidan Taylor and I have over 10 years of experience in the field of PCB Reverse Engineering, PCB design and IC Unlock.

Besoin D'Aide?

Retour en haut

Instant Quote