你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32CubeIDE ST-LINK 服务器

[复制链接]
STMCU小助手 发布时间:2023-2-13 20:54
引言 STM32CubeIDE ST-LINK GDB server 也被称为 GDB server,是通过 ST-LINK JTAG 探头在与 Arm® Cortex®-M 目标设备连接的PC 上运行的命令行应用程序。
4 B2 ^% e  L1 r3 j ST-LINK GDB server 启动时会通过 ST-LINK JTAG 连接至 STM32 Arm® Cortex®-M 目标设备。与目标设备侧建立通信之后,将等待客户端连接至 TCP 监听套接字。客户端连接至 TCP 监听套接字之后,ST-LINK GDB server 将处理客户端发送的远程串行通信协议(RSP)消息,并对目标设备侧执行适当操作,随后向客户端回复 RSP。" d4 G. s* Z1 Y, @9 b6 F
图 1 展示了使用 ST-LINK GDB server 和 STMicroelectronic ST-LINK 探头调试 Arm® Cortex®-M 目标设备的标准调试会话。
& m2 B% Q' i+ @( Y8 N) R

8 |, X0 G9 |7 X9 f3 `; E4 e# v+ T9 t FV@2P[8TW2G42C$J6SUCT9H.png - |( U" z2 k5 J2 T% Q& h+ z" _

9 i5 e0 _  Y/ V# t
' i9 x8 X% _  t6 w, |% W& J
该图展示了如何利用 TCP 套接字接口将 GDB 客户端连接至 ST-LINK GDB server,以便对 ST-LINK JTAG 上所连接的Arm® Cortex®-M 目标进行调试。 $ H, }( ]# D% _. p' d) B
* x( ~9 g0 K( C
  x; I5 f0 R- L
1 GDB server 使用 ; Z4 R$ b+ l" a
STM32CubeIDEST-LINK GDB 服务器是命令行应用程序,该应用程序可通过以下方式启动
6 @: w: y/ `# x; V* H. F• 输入一组命令行选项 . s: `" ^" S  ?. w  P5 }7 l6 H
• 指示 GDB server 从配置文件中加载选项
* \6 N3 x: a  \! D  q& L7 U/ C若未指定任何选项, GDB server 将以预配置默认选项启动。启动选项及对应的默认值列于第 1.1 节 GDB server启动选项中。% M& m- v6 w( Y6 l
STM32CubeIDEST-LINK GDB 服务器利用 STM32CubeProgrammer (STM32CubeProg)对需要调试的设备进行flash 下载。当 gdb 发出 load 命令时, GDB server 将自动使用 STM32CubeProgrammer 软件。
; f7 ]: B# t/ E% X  K 当需要进行高级设备控制(例如 Flash 擦除或者设置选项字节)时,可以使用 STM32CubeProgrammer(STM32CubeProg)。它包含在 STM32CubeIDE 中并且可以从 STMicroelectronics 网站 www.st.com 单独下载。: |0 P6 B/ y$ i8 b1 O
STM32CubeIDE 支持基于 Arm® Cortex®处理器的 STM32 32 位产品。提示 Arm 是 Arm Limited(或其子公司)在美国和/或其他地区的注册商标。8 G5 Q6 B# T6 F9 g% k2 D. v$ {  ?

/ x. f4 W" Q+ m0 s
. N; U8 `) U9 e( b( X
1.1 GDB server 启动选项
# O( U6 O+ P% g. b7 n: R1 Z" N GDB 服务器可以利用以下命令启动:
" j: X# k  V* h% m: @5 HST-LINK_gdbserver.exe [options]
" O# t' ?9 Q: G* o5 J: W大多数选项有长格式和短格式两种格式。以下将介绍 GDB server 支持的选项组,其中默认模式和配置以粗体表示:
. s7 t# f  u) l! D • -h, --help使 ST-LINK_gdbserver 显示使用信息。
2 k5 i/ d) B: z- k$ N" @ • -c , --config-file 指示 GDB server 从配置文件中读取选项。附录 B 中提供了有关语法分析的配置文件示例。• -f , --log-file 指定日志文件名称。默认名称为 debug_log.txt。, p8 p2 O$ s9 [/ C& u3 O
• -l , --log-level 指定记录级别。记录级别分为 0 至 31 级。将记录级别指定为 0 时将关闭记录功能,将记录级别指定为 31 时将启用完全记录。默认记录级别为 31。记录级别可以根据以下列表进行设置:
, [& }% j3 P. D$ {0 j4 w  J6 Q – = 0:禁用记录。* Y# N& ^& d) I7 t
– ≥ 1:启用错误消息记录。
# B2 E8 f" m0 }+ t' S4 y– ≥ 2:增加警告消息。
( Z( ]" l& N% \/ ^$ O – ≥ 4:增加通信特定消息。 ' C9 G/ X/ [0 M  B
– ≥ 8:增加所有信息消息
% y! \9 c8 o7 g4 B$ K% t9 Y– ≥ 16:增加所有 HW 特定消息。
; I  E6 @4 F9 g; {因此若未指定选项–f 和-l,服务器将以默认的 31 级记录级别(完全记录)启动,默认日志文件为 debug_log.txt。# u. m0 ~2 g/ i- O  Y
• -p , --port-number
$ j: [9 f7 u$ b指定服务器监听客户端连接对应的 TCP 端口号。服务器监听的默认端口号为 61234。+ k+ b9 ~# s+ p/ Z
• -v, --verbose
9 P, M6 z2 J/ {- P) e6 X9 T* c2 v* }在命令行中指定-v 将启用详细模式;此外,还将打印服务器调试日志标准输出。默认情况下,详细模式处于禁用状态。
- u1 _$ I& T: @! G1 F- ?* q• -r , --refresh-delay
- I4 ~. _! ]* C+ f# N% f6 H指定调试日志文件中硬件状态更新的间隔时间(单位秒)。注意,状态更新间隔时间很短会导致调试日志文件扩大。默认状态刷新延迟时间为 5 秒。 / J6 A; R# M  q6 ]: R
• -s, --verify
7 J. c1 [. G$ J- Q* E 启用 Flash 下载验证。 7 r& S- L7 i4 ^2 H
• -e, --persistant指定选项-e 后将在持续模式下启动服务器。  K* v- l1 a0 K! Q( K1 ]7 x
默认情况下,持续模式将处于禁用状态,这意味着服务器将在非持续模式下启动。  @6 `5 B+ @: a
• -d, --swd启用串行线调试(SWD)模式指定使用 SWD 而非使用 JTAG。[对 SWV 使用此选项。] 0 `' ?& f* D% ~4 c, N2 C
• -z , --swo-port 指定服务器输出原始 SWO 数据对应的 TCP 端口号[对 SWV 使用此选项。]
0 c) ]* q" Y( \6 p• -a , --cpu-clock 指定 CPU 的时钟频率,单位 Hz。[对 SWV 使用此选项。] ' H9 P( u' E6 m( n5 t; F  Y6 ^/ G
• -b , --swo-clock-div 指定 SWO 时钟分频器。利用–a 选项可以使其作用于给定的 CPU 时钟速度。[对 SWV 使用此选项。]同时使用–z、–a 和–b 选项可指定 SWO 速度。例如当核心以 168 Mhz 频率运行,目标 SWO 频率为 1 Mhz时,将按照以下方式配置上述选项: -z 61235 -a 168000000 –b 168。当核心以 72 Mhz 频率运行,SWO 频率为 125 kHz 时,将使用-z 61235 –a 72000000 –b 576。
0 {' l" m2 q& ~- }$ u: N! q# a2 {/ E• -k, --initialize-reset在复位状态下将设备初始化。
: N: @' e+ [. Y; s; E• -q, --debuggers列出已连接的调试器,ST-LINK 序列号。 * |- D  X0 I. ]" u8 y
• -i , --serial-number 指定服务器应连接的 ST-LINK 序列号。
+ o  X- A7 q5 B• -m , --apid 定义需要调试的 apID。[对多内核使用此选项。] ( N0 M+ G6 S: }: N3 G
• -g, --attach连接正在运行的目标。
- u: ~# ?$ V% c  V" Y# W• -t, --shared允许使用一个 ST-LINK 探头将两个或以上程序连接至同一台设备。[对 ST-LINK server 使用此选项。]
  Y3 \. J- b3 H! b& j• --erase-all
& A5 h/ r( l% w( m擦除所有存储内容。5 t. L% d" T* {, G8 `9 }1 c
• --memory-map
# s" R* n( c  x5 E, D# K! L* `0 L显示给定设备标识符对应的存储器映射例如 0x410。* k0 n$ X3 H; D
• --ext-memory-loaders + u* U1 \4 R7 h6 c' q! e3 _
提供可供使用的外部存储器加载程序列表。 + R7 ~/ V/ a. `' |3 B: V
• -el , --extload
. i% Y& l- a/ X选择自定义外部存储器加载程序。+ m; ?* R' ]6 A$ F2 L5 _
• -cp , --stm32cubeprogrammer-path ; ]. O7 L- m( p9 z" S
STM32CubeProgrammer (STM32CubeProg)安装路径。 , f# T3 l- ]2 I; H( q
• --temp-path
! ?  W4 h; J) }% o动调试会话的临时文件存储在此前提供的路径下。
9 D* i: t/ v, b% G8 K1 h3 y/ G• --licenses
1 S( [. c* D6 @6 {, L提供已使用的工具和许可列表。
7 S% P* E  ^6 n9 O4 p# o• --, --ignore-rest 7 q1 g% P6 }2 K7 s# X$ j
忽略剩余的、后跟此标志的标签参数。
1 @* I; C+ t: _, f4 ~• --版本
1 U4 S" p/ |7 I) {7 g0 E# P1 A显示版本信息并退出。 & |1 w' ^/ a. ], w& ?
6 ]$ Q6 S2 |- I7 Z* R. T) l
0 o7 G% L: g8 w* i2 ?* r7 s
1.2 GDB server 工作模式
! H& J$ ?7 s: r3 ]( }此服务器可以在持续模式或非持续模式下运行 - 具体由配置选项决定。在持续模式下,服务器将在客户端断开连接后继续运行并等待新连接,而在非持续模式下客户端关闭连接后服务器将直接退出。但如果服务器与目标进行通信时出现错误,无论服务器处于哪一种模式,服务器都将关闭所有连接并关机。5 Y7 o4 K5 t6 h" \  C/ S. c

! u# W  D+ Q" I/ t' i8 i
7 J& J* l/ l( u, y
1.3 启动 GDB server
+ ]# @* _2 D. c" E GDB server 可以在命令窗口中以下列方式启动:+ C7 {; i0 z! G4 B
1. cd
1 p7 ]# ?( S# \C:\ST\STM32CubeIDE_1.0.0.19w12patch\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.stlink-gdb-server.win32_1.0.0.201903011553\tools\bin\STLINK_gdbserver
; ]8 k/ _/ |4 P3 D5 ^ 2. 利用–cp 和 STM32_Programmer_CLI.exe 路径启动 GDB server * P5 {9 S  e$ K. W& j) V( k; I+ n  O
例如:ST-LINK_gdbserver.exe -d -v -cp"C:\ST\STM32CubeIDE_1.0.0.19w12patch\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_1.0.0.201903011553\tools\bin"
' V% B0 N) p3 x8 K3. 随后 GDB server 将通过 ST-LINK JTAG 与 STM32 设备相连,并等待 GDB 调试会话命令。
/ w2 a) I0 H$ p" J- y5 N$ c
9 E# c' \7 a7 X. T
# S0 l4 X3 w3 ]
: u* y, T4 F2 p4 _0 G) c

" r# O# ]) ?( e) P- ]1 ^完整版请查看:附件 STM32CubeIDE ST-LINK 服务器.pdf (478.67 KB, 下载次数: 11)
收藏 评论0 发布时间:2023-2-13 20:54

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版