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

STM32CubeIDE ST-LINK 服务器

[复制链接]
STMCU小助手 发布时间:2023-2-13 20:54
引言 STM32CubeIDE ST-LINK GDB server 也被称为 GDB server,是通过 ST-LINK JTAG 探头在与 Arm® Cortex®-M 目标设备连接的PC 上运行的命令行应用程序。
, R4 @5 A7 ]" i4 @& G ST-LINK GDB server 启动时会通过 ST-LINK JTAG 连接至 STM32 Arm® Cortex®-M 目标设备。与目标设备侧建立通信之后,将等待客户端连接至 TCP 监听套接字。客户端连接至 TCP 监听套接字之后,ST-LINK GDB server 将处理客户端发送的远程串行通信协议(RSP)消息,并对目标设备侧执行适当操作,随后向客户端回复 RSP。
; O- I4 n# D" `3 G4 | 图 1 展示了使用 ST-LINK GDB server 和 STMicroelectronic ST-LINK 探头调试 Arm® Cortex®-M 目标设备的标准调试会话。
, S/ B- K) j2 x1 F3 a% m
4 L0 R5 _8 i0 o( z9 l$ n9 u
FV@2P[8TW2G42C$J6SUCT9H.png
" j, X  Q. m) y9 Z
5 M, @5 n6 k1 \3 R
$ ?0 I4 d+ d/ |' |& L
该图展示了如何利用 TCP 套接字接口将 GDB 客户端连接至 ST-LINK GDB server,以便对 ST-LINK JTAG 上所连接的Arm® Cortex®-M 目标进行调试。 $ r: N% c5 g8 z
  x! }) G* d% R( ^4 G5 V9 T
4 D) m! H- t* e6 m& _1 c, ~
1 GDB server 使用 ! g& ]4 o/ v; r$ i
STM32CubeIDEST-LINK GDB 服务器是命令行应用程序,该应用程序可通过以下方式启动
" u& D' K% D4 y  j% N" [• 输入一组命令行选项 ! m8 b' k' Q( h) o) D; z
• 指示 GDB server 从配置文件中加载选项 $ J- i0 b4 g+ |
若未指定任何选项, GDB server 将以预配置默认选项启动。启动选项及对应的默认值列于第 1.1 节 GDB server启动选项中。
0 d2 y& N/ E" I8 T7 I9 S) d! Q) r0 }" L; c STM32CubeIDEST-LINK GDB 服务器利用 STM32CubeProgrammer (STM32CubeProg)对需要调试的设备进行flash 下载。当 gdb 发出 load 命令时, GDB server 将自动使用 STM32CubeProgrammer 软件。
; P% t, o6 n( `% p- \* Y2 B 当需要进行高级设备控制(例如 Flash 擦除或者设置选项字节)时,可以使用 STM32CubeProgrammer(STM32CubeProg)。它包含在 STM32CubeIDE 中并且可以从 STMicroelectronics 网站 www.st.com 单独下载。0 Y; H8 ?! v# A" A& [$ ~0 @
STM32CubeIDE 支持基于 Arm® Cortex®处理器的 STM32 32 位产品。提示 Arm 是 Arm Limited(或其子公司)在美国和/或其他地区的注册商标。3 L) k& B' S6 y3 D% u

3 v; L+ B+ a5 V6 t+ ?' O% T5 n0 m! T

' Y  z& @8 f( I: M/ R1 W 1.1 GDB server 启动选项
5 S$ r- g4 r6 w! J: n GDB 服务器可以利用以下命令启动: 2 A) A, k8 b4 ]; D* m9 B( c8 S2 k
ST-LINK_gdbserver.exe [options] 7 q3 K& ?. k/ C: a: _0 P
大多数选项有长格式和短格式两种格式。以下将介绍 GDB server 支持的选项组,其中默认模式和配置以粗体表示:# ~0 j' n5 ]: W. g1 v
• -h, --help使 ST-LINK_gdbserver 显示使用信息。
* W6 X# ^: G- R8 m6 W; X • -c , --config-file 指示 GDB server 从配置文件中读取选项。附录 B 中提供了有关语法分析的配置文件示例。• -f , --log-file 指定日志文件名称。默认名称为 debug_log.txt。
8 k/ }" O1 k/ o. h$ i& ` • -l , --log-level 指定记录级别。记录级别分为 0 至 31 级。将记录级别指定为 0 时将关闭记录功能,将记录级别指定为 31 时将启用完全记录。默认记录级别为 31。记录级别可以根据以下列表进行设置:
9 i6 F6 \% ]6 k3 p" @/ O6 } – = 0:禁用记录。
  W: \& n4 W/ \2 m# I" t+ V – ≥ 1:启用错误消息记录。
- z9 @( k3 ]" |% F2 o" R. W– ≥ 2:增加警告消息。
3 ?/ X, c* F' S6 K# c$ ?( T – ≥ 4:增加通信特定消息。
/ k) U* S4 u3 }0 Y: ]% x( S/ n' }+ f– ≥ 8:增加所有信息消息 + j& `. u4 E) a& U
– ≥ 16:增加所有 HW 特定消息。
+ i0 n, o. Z- p" [2 G9 g因此若未指定选项–f 和-l,服务器将以默认的 31 级记录级别(完全记录)启动,默认日志文件为 debug_log.txt。
% f3 M  f1 C  ?9 ]$ L • -p , --port-number
4 j; K& q1 g0 m$ N: @2 i) z& a指定服务器监听客户端连接对应的 TCP 端口号。服务器监听的默认端口号为 61234。
& m9 x+ T4 j1 P7 l; q1 p9 n • -v, --verbose 9 P# s0 l2 k% _9 v% S) m
在命令行中指定-v 将启用详细模式;此外,还将打印服务器调试日志标准输出。默认情况下,详细模式处于禁用状态。 7 h8 ^; W# H- J* T5 i- {; m
• -r , --refresh-delay : T: ]( J6 N! b
指定调试日志文件中硬件状态更新的间隔时间(单位秒)。注意,状态更新间隔时间很短会导致调试日志文件扩大。默认状态刷新延迟时间为 5 秒。   _8 u6 C+ d$ N5 \
• -s, --verify% R$ P4 e' ~7 ^2 `& H# R
启用 Flash 下载验证。
7 V' J1 x1 b$ B3 K! B1 e• -e, --persistant指定选项-e 后将在持续模式下启动服务器。
- C5 O) |5 K* U  }/ z+ G7 w默认情况下,持续模式将处于禁用状态,这意味着服务器将在非持续模式下启动。
8 V2 o2 z3 w5 q  l5 A& c) {• -d, --swd启用串行线调试(SWD)模式指定使用 SWD 而非使用 JTAG。[对 SWV 使用此选项。] / k6 s& d+ q% U  e9 W
• -z , --swo-port 指定服务器输出原始 SWO 数据对应的 TCP 端口号[对 SWV 使用此选项。] 5 D- X5 [8 W5 {2 A$ b6 K1 _' R6 @
• -a , --cpu-clock 指定 CPU 的时钟频率,单位 Hz。[对 SWV 使用此选项。] # Z2 P7 s, b8 F; o% |
• -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。 4 K/ x% b; j% p+ U
• -k, --initialize-reset在复位状态下将设备初始化。
. e/ V0 J2 L3 Z# v2 [• -q, --debuggers列出已连接的调试器,ST-LINK 序列号。 " l7 e5 _# l- ], w0 h* H- `
• -i , --serial-number 指定服务器应连接的 ST-LINK 序列号。
; |* \' E# i: Z6 N4 `! a! m! n• -m , --apid 定义需要调试的 apID。[对多内核使用此选项。] % H9 |; Q; t, i0 m8 q, M/ {
• -g, --attach连接正在运行的目标。
4 M* {0 M9 z5 A  F# V• -t, --shared允许使用一个 ST-LINK 探头将两个或以上程序连接至同一台设备。[对 ST-LINK server 使用此选项。] 3 q# c) ]0 W, ]: s% T
• --erase-all
# R5 S' a4 k% i# x/ N) S9 ~擦除所有存储内容。
/ E2 K& V8 L+ E • --memory-map $ y, r2 w6 f- N' i' j7 b
显示给定设备标识符对应的存储器映射例如 0x410。
  u% e, E4 V+ u. Y6 b • --ext-memory-loaders
7 w; _, z# t7 u提供可供使用的外部存储器加载程序列表。
! f8 \. f1 X' l) C( J+ C• -el , --extload $ B! q7 X# _" a2 p/ i  k' D6 X
选择自定义外部存储器加载程序。/ L0 E( f  u0 x5 z( s0 q" Y
• -cp , --stm32cubeprogrammer-path ( ]: h0 M* l6 q% c
STM32CubeProgrammer (STM32CubeProg)安装路径。 1 q: z& Q4 |; q: `9 V/ N
• --temp-path
, W* s, W  r7 u+ }+ b动调试会话的临时文件存储在此前提供的路径下。 ; B0 ~8 v% ?- K6 n' t
• --licenses
4 R: u; Q% J6 v, o7 W) F! |2 [5 g提供已使用的工具和许可列表。 * X. u1 k) [7 @2 I0 ^7 z2 K
• --, --ignore-rest
: ?. _  h3 @9 N; T1 w$ @8 u忽略剩余的、后跟此标志的标签参数。
  T0 z7 s. o' D, E( u• --版本 ! w! x: y4 g: Z. N! s, R
显示版本信息并退出。 ( \2 l2 \5 ^) w9 M
( a3 E" C* w( B
, G0 l2 T' i9 G+ c
1.2 GDB server 工作模式 / e* h! V! v' [# B$ l0 a  K
此服务器可以在持续模式或非持续模式下运行 - 具体由配置选项决定。在持续模式下,服务器将在客户端断开连接后继续运行并等待新连接,而在非持续模式下客户端关闭连接后服务器将直接退出。但如果服务器与目标进行通信时出现错误,无论服务器处于哪一种模式,服务器都将关闭所有连接并关机。5 x4 K" F6 }- v

$ \6 M' |. h, U9 W9 d- l9 b

, T* o' ?& p2 q  I" r* \. X 1.3 启动 GDB server
- o; X' n& {0 \, P6 c GDB server 可以在命令窗口中以下列方式启动:- M3 m, Q% n0 d# E# B1 z
1. cd
4 |7 _$ X; c' {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, t' }/ Q: ~; m+ @* T' D2 H
2. 利用–cp 和 STM32_Programmer_CLI.exe 路径启动 GDB server
8 \  ]9 w. [% D, I- b2 v( h# n; p例如: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"
5 y; g( D4 `/ ^* O3. 随后 GDB server 将通过 ST-LINK JTAG 与 STM32 设备相连,并等待 GDB 调试会话命令。
. i* M+ b, d: t* G  _: g
: ^7 m; ]" \" T$ K4 M$ @) K% J0 B) ?- [( H

& b7 W; [+ i* S- O/ |
- H, j9 S6 \. R  h! c( ~+ C: P; m( a
完整版请查看:附件 STM32CubeIDE ST-LINK 服务器.pdf (478.67 KB, 下载次数: 10)
收藏 评论0 发布时间:2023-2-13 20:54

举报

0个回答

所属标签

相似分享

官网相关资源

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