Programmatore ST-Link

Indice

STLINK-V3SET

Abbiamo introdotto gli strumenti di debug hardware / programmatore in precedenza, ora impariamo insieme il programmatore ST-Link. In questo articolo imparerai le diverse versioni di ST-Link, le loro differenze e come usarle per programmare il tuo chip.

Versione ST-Link

Attualmente, ci sono tre versioni di ST-Link: ST-LINK/V1, ST-LINK/V2 e STLINK-V3. Allo stesso tempo, la scheda di sviluppo ST viene fornita anche con il suo strumento ST-Link, ma la versione ST-Link varia a seconda della scheda di sviluppo.

ST-LINK V1

ST-LINK V1 è la versione più antica e attualmente poche persone la usano sul mercato.

ST-LINK V1
ST-LINK V1

ST-LINK V2

La versione ST-LINK V2 può essere divisa in due: ST-LINK/V2 (versione standard) e ST-LINK/V2-ISOL (versione isolata). Tra questi, ISOL (Isolation) è dotato di isolamento da 1000V. Questa versione è relativamente costosa.

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

ST-LINK V3

STLINK-V3 ha anche più categorie:

STLINK-V3SET

STLINK-V3SET è un set di strumenti di download e programmazione completamente funzionali indipendenti dalla scheda di valutazione ST ed è anche uno strumento STLINK-V3 mainstream. È in vendita a $ 35.

STLINK-V3SET
STLINK-V3SET

STLINK-3MINI

Nel 2019, ST ha lanciato il più compatto e piccolo STLINK-3MINI, che misura solo 15 x 30 mm, e il suo prezzo quando è stato messo in vendita era di soli $ 9,75.

STLINK-3MINI
STLINK-3MINI

STLINK-V3MODS

Le funzioni di STLINK-V3MODS e STLINK-V3MINI sono fondamentalmente le stesse, ma gli scenari di applicazione sono diversi. Puoi paragonarlo alla versione “stamp” di STLINK-V3MINI.

STLINK-V3MODS
STLINK-V3MODS

B-STLINK-VOLT

La scheda B-STLINK-VOLT è un modulo aggiuntivo / una scheda adattatore per STLINK-V3SET. È più adatto per sistemi STM32 a bassa tensione (come 1,8 V).

B-STLINK-VOLT
B-STLINK-VOLT

B-STLINK-ISOL

B-STLINK-ISOL è simile a B-STLINK-VOLT ed è anche una “scheda di espansione” per STLINK-V3SET. Fornisce isolamento galvanico e funzioni di conversione della tensione ed è utilizzato con microcontrollori inferiori a 3,3 V.

B-STLINK-ISOL
B-STLINK-ISOL

STLINK-V3PWR

STLINK-V3PWR, lanciato a marzo 2023, è un hardware ST-Link utilizzato per monitorare e eseguire il debug della corrente a basso consumo di STM32. Il prezzo al lancio è di $ 93,10.

STLINK V3PWR
STLINK-V3PWR

Diverse interfacce di ST-LINK

Interfaccia SWIM

L’interfaccia SWIM viene utilizzata per eseguire il debug e scaricare STM8. Ha solo quattro fili ed è definita come segue:

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

Interfaccia JTAG / SWD

L’interfaccia ST-Link / V2 JTAG / SWD è definita come segue:

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

Strumento di programmazione ST-LINK

Una caratteristica comune di ST-LINK è che viene utilizzato per la programmazione (download di programmi). Gli strumenti di programmazione includono: STVP, STM32 ST-LINK Utility e STM32CubeProgrammer.

  • STVP: uno strumento che può essere utilizzato sia per la programmazione STM8 che 32.
  • ST-LINK Utility: uno strumento limitato alla programmazione STM32.
  • STM32CubeProg: uno strumento che può essere utilizzato sia per la programmazione STM8 che 32.

Un esempio di programmazione ST-LINK con Keil 5

Qui introduciamo come utilizzare st-link v2 in Keil 5 per scaricare e eseguire il debug dei programmi per la scheda di sviluppo arm. Inclusi il metodo di cablaggio di stlink, la configurazione di stlink in keil, il debug in keil, ecc.

Configurazione Keil 5

Fai clic sulla bacchetta magica nella barra degli strumenti Keil per visualizzare la finestra di dialogo di configurazione come mostrato di seguito:

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

Seleziona “Reset e Run”, il programma si ripristinerà e verrà eseguito automaticamente dopo il download nel microcontrollore.

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

Debug

Entra nello stato di debug

Fai clic sul pulsante per entrare o uscire dalla modalità debug:

Debug mode of Keil
Debug mode of Keil

Operazioni di debug comuni

Ripristina

Ripristina il programma alla sua posizione iniziale.

Reset of Keil
Reset of Keil
Debug passo passo

Significa che ogni volta che il pulsante viene cliccato, il programma esegue un passo. Quando si incontra una funzione chiamata, entrerà nella funzione chiamata. Clicca sul pulsante icona, oppure premi il tasto di scelta rapida F11.

Single-step Debug of Keil
Single-step Debug of Keil
Debug passo passo

Significa debug riga per riga, cioè ogni volta che il pulsante viene cliccato, il programma esegue una riga. Quando viene incontrata una funzione, non entrerà nella funzione. Clicca sul pulsante icona, oppure premi il tasto di scelta rapida F10.

Step-by-step Debug of Keil
Step-by-step Debug of Keil
Esci dal Debug

significa uscire dal debug della funzione, cioè ogni volta che il pulsante viene cliccato, il programma esce da una funzione finché non esce dalla funzione più esterna (funzione principale). Clicca sul pulsante icona, oppure premi il tasto di scelta rapida Ctrl + F11.

Jump Out Debug of Keil
Jump Out Debug of Keil
Esegui il Programma in una Posizione Specifica

Se clicchi sul pulsante (o Ctrl + F11), il programma si fermerà quando raggiungerà la posizione del cursore (a condizione che il programma possa essere eseguito fino alla posizione del cursore).

Runs the Keil's Program to the Specific Location
Runs the Keil's Program to the Specific Location
Vai alla Posizione di Pausa del Programma Keil

Questa funzione è efficace quando il programma si ferma e può aiutarci a trovare la posizione di pausa del programma.

Jump to the Pause Position of Keil's Program
Jump to the Pause Position of Keil's Program
Finestra di Debug

Il menu della finestra di debug viene attivato solo durante il processo di debug ed è diverso dalla finestra nello stato di modifica normale.

Debug Window of Keil
Debug Window of Keil
Finestra Memoria o Variabile

Seleziona una variabile, fai clic destro con il mouse e seleziona “Aggiungi ‘Nome Variabile’ a…” per aggiungerla alla finestra di osservazione specificata.

Variable Debug of Keil
Variable Debug of Keil
Finestra Periferiche di Sistema

Cioè, la finestra di visualizzazione del valore del registro periferico.

System peripherals of Keil
System peripherals of Keil

Iscriviti

Unisciti alla nostra lista di iscritti per ricevere aggiornamenti mensili sul blog, notizie tecnologiche, casi di studio. Non invieremo mai spam e potrai annullare l’iscrizione in qualsiasi momento.

Informazioni sull'autore

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.

Hai bisogno di aiuto?

Torna in alto

Instant Quote