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

STM32CubeIDE ST-LINK 服务器

[复制链接]
STMCU小助手 发布时间:2023-2-13 20:54
引言 STM32CubeIDE ST-LINK GDB server 也被称为 GDB server,是通过 ST-LINK JTAG 探头在与 Arm® Cortex®-M 目标设备连接的PC 上运行的命令行应用程序。
' m5 i( a7 X5 {; }& J0 D+ D; k4 r9 I ST-LINK GDB server 启动时会通过 ST-LINK JTAG 连接至 STM32 Arm® Cortex®-M 目标设备。与目标设备侧建立通信之后,将等待客户端连接至 TCP 监听套接字。客户端连接至 TCP 监听套接字之后,ST-LINK GDB server 将处理客户端发送的远程串行通信协议(RSP)消息,并对目标设备侧执行适当操作,随后向客户端回复 RSP。
6 P0 O  w- m5 U& N0 N. P 图 1 展示了使用 ST-LINK GDB server 和 STMicroelectronic ST-LINK 探头调试 Arm® Cortex®-M 目标设备的标准调试会话。' e- y* U+ B- \8 ~8 o

: d. D7 t- U# B. v4 V9 `* ~ FV@2P[8TW2G42C$J6SUCT9H.png
6 B+ ~( W1 ~0 o+ H* K+ Y3 g" o7 M% t( x5 y# y

: {7 y" d5 `8 Z% ]1 I: z. j. X1 P$ s该图展示了如何利用 TCP 套接字接口将 GDB 客户端连接至 ST-LINK GDB server,以便对 ST-LINK JTAG 上所连接的Arm® Cortex®-M 目标进行调试。 5 F6 r4 k2 f0 a, N4 q6 b/ @5 _
, h# @/ l  R* `" `$ w7 a

6 B4 g& _+ N' G2 [8 w8 R3 i4 t+ _/ A1 GDB server 使用
! }0 w9 h! g5 Z' i* eSTM32CubeIDEST-LINK GDB 服务器是命令行应用程序,该应用程序可通过以下方式启动 : }& |3 C7 k0 W, }% h( p
• 输入一组命令行选项 2 @1 l# D1 H4 E- b
• 指示 GDB server 从配置文件中加载选项 , ^# A* D* i6 n, x6 `
若未指定任何选项, GDB server 将以预配置默认选项启动。启动选项及对应的默认值列于第 1.1 节 GDB server启动选项中。. e6 }" p$ o: e. ?% H
STM32CubeIDEST-LINK GDB 服务器利用 STM32CubeProgrammer (STM32CubeProg)对需要调试的设备进行flash 下载。当 gdb 发出 load 命令时, GDB server 将自动使用 STM32CubeProgrammer 软件。
; C$ W+ `" u; b- d, W 当需要进行高级设备控制(例如 Flash 擦除或者设置选项字节)时,可以使用 STM32CubeProgrammer(STM32CubeProg)。它包含在 STM32CubeIDE 中并且可以从 STMicroelectronics 网站 www.st.com 单独下载。
2 q, a5 V6 R, v* Y# R STM32CubeIDE 支持基于 Arm® Cortex®处理器的 STM32 32 位产品。提示 Arm 是 Arm Limited(或其子公司)在美国和/或其他地区的注册商标。
: w9 V) S, Z3 P6 J( y
* o8 Y# m6 x  {" a5 I% [
! E9 _' q/ b6 R8 M8 ~) [$ h
1.1 GDB server 启动选项
9 Q+ n' M* c8 I2 P0 ?4 G$ t  W) Q, d GDB 服务器可以利用以下命令启动:
! w, Z8 ~; J) P* B! D( rST-LINK_gdbserver.exe [options]
( @7 r+ j1 D3 T5 j大多数选项有长格式和短格式两种格式。以下将介绍 GDB server 支持的选项组,其中默认模式和配置以粗体表示:
% U4 I! s/ R0 d; R! h( e. K • -h, --help使 ST-LINK_gdbserver 显示使用信息。. D2 f& L2 {2 y, s' X
• -c , --config-file 指示 GDB server 从配置文件中读取选项。附录 B 中提供了有关语法分析的配置文件示例。• -f , --log-file 指定日志文件名称。默认名称为 debug_log.txt。6 D$ c0 ]) }0 `$ W1 m9 @1 o
• -l , --log-level 指定记录级别。记录级别分为 0 至 31 级。将记录级别指定为 0 时将关闭记录功能,将记录级别指定为 31 时将启用完全记录。默认记录级别为 31。记录级别可以根据以下列表进行设置:/ t* Y( {5 e4 r1 |0 @
– = 0:禁用记录。  U. B1 H0 l9 z+ o; _
– ≥ 1:启用错误消息记录。
0 O5 L3 y& N2 D2 k6 b: A4 h– ≥ 2:增加警告消息。
4 I% J  y. p, K! a8 s – ≥ 4:增加通信特定消息。
0 i- V' Z) j  T$ d% _, h– ≥ 8:增加所有信息消息
, R7 E; g0 C8 c3 P( }5 ~2 ^  ^– ≥ 16:增加所有 HW 特定消息。
9 y  k2 ^; e, x6 x/ V因此若未指定选项–f 和-l,服务器将以默认的 31 级记录级别(完全记录)启动,默认日志文件为 debug_log.txt。
$ d' Z9 l4 _8 r • -p , --port-number , }8 \9 U' g( \7 Z, c2 l
指定服务器监听客户端连接对应的 TCP 端口号。服务器监听的默认端口号为 61234。
+ D% I* g8 A3 s5 B( q8 o$ g • -v, --verbose
! i5 r1 a0 p$ Y, K+ y& I在命令行中指定-v 将启用详细模式;此外,还将打印服务器调试日志标准输出。默认情况下,详细模式处于禁用状态。
  V" I9 [& K- r# `• -r , --refresh-delay
+ p: J! @# ^, C5 I. w0 O# V指定调试日志文件中硬件状态更新的间隔时间(单位秒)。注意,状态更新间隔时间很短会导致调试日志文件扩大。默认状态刷新延迟时间为 5 秒。
- r+ [7 k  k$ y• -s, --verify$ Y& q. ]# H+ {( k; ]
启用 Flash 下载验证。
6 ?4 v$ M, [6 i9 {• -e, --persistant指定选项-e 后将在持续模式下启动服务器。
! h4 N9 Q! m* z* Y默认情况下,持续模式将处于禁用状态,这意味着服务器将在非持续模式下启动。
# [  [* a" K" G, x• -d, --swd启用串行线调试(SWD)模式指定使用 SWD 而非使用 JTAG。[对 SWV 使用此选项。]
# ?1 s# ^+ d1 ^. _• -z , --swo-port 指定服务器输出原始 SWO 数据对应的 TCP 端口号[对 SWV 使用此选项。]
3 R+ N& I1 }! w• -a , --cpu-clock 指定 CPU 的时钟频率,单位 Hz。[对 SWV 使用此选项。] + s0 n1 ]. w7 ]% l& X
• -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。 9 b. {# Q1 n" G
• -k, --initialize-reset在复位状态下将设备初始化。 9 ~4 ^3 C$ k4 g: C2 N; ?
• -q, --debuggers列出已连接的调试器,ST-LINK 序列号。
3 V( G$ v2 h& b+ a* X• -i , --serial-number 指定服务器应连接的 ST-LINK 序列号。
/ X) k5 U: G$ n; q0 r) V• -m , --apid 定义需要调试的 apID。[对多内核使用此选项。]
; M/ G( w3 c) B• -g, --attach连接正在运行的目标。 + \' S" ^0 ?+ T1 z2 n
• -t, --shared允许使用一个 ST-LINK 探头将两个或以上程序连接至同一台设备。[对 ST-LINK server 使用此选项。]
# P8 T+ z7 w8 i' j1 g8 k% s. E• --erase-all
' R# P0 \$ f: T+ \. c* N% |擦除所有存储内容。+ g( `* A( r& J, F8 R% @
• --memory-map / m; Y" f# h2 G) }3 x+ w/ ~
显示给定设备标识符对应的存储器映射例如 0x410。
) \. \' m/ f, K* F8 o4 R0 y • --ext-memory-loaders
9 c+ ?. k, |5 m9 y提供可供使用的外部存储器加载程序列表。 ) Y9 ~0 O# A; u, r% ]
• -el , --extload
& j. ?. a" K+ W0 U. M. [选择自定义外部存储器加载程序。
2 Y# Y! f7 c, W) b5 _" ~9 A3 g • -cp , --stm32cubeprogrammer-path
! }& \0 q' N1 ~4 R( q" j( @/ BSTM32CubeProgrammer (STM32CubeProg)安装路径。
) c% J; G) n! c% ^( X• --temp-path + D( g+ ?3 M: [
动调试会话的临时文件存储在此前提供的路径下。
7 j" |% ~: N# I' o' ?) p• --licenses
- s7 S" |1 l' ~0 u提供已使用的工具和许可列表。
$ L* d( v1 O+ r- ?3 d5 f• --, --ignore-rest
1 ?% s% ]0 f2 @. n  {忽略剩余的、后跟此标志的标签参数。 ) F  U5 N% |6 h+ |, P  d1 r, r4 m
• --版本
2 ?, x) t! A2 K显示版本信息并退出。
6 f- E/ u# q/ N7 {& @9 A7 \5 J/ n! ?0 [9 _6 _3 Z9 D$ k
6 ^7 i- m$ S0 I8 a9 w5 Q. p( f
1.2 GDB server 工作模式
! z$ `6 D6 a% c) O! k+ D4 _此服务器可以在持续模式或非持续模式下运行 - 具体由配置选项决定。在持续模式下,服务器将在客户端断开连接后继续运行并等待新连接,而在非持续模式下客户端关闭连接后服务器将直接退出。但如果服务器与目标进行通信时出现错误,无论服务器处于哪一种模式,服务器都将关闭所有连接并关机。
' M1 w( L9 I8 h7 t* @, s, F$ i* y+ x, H2 J8 }

- v, C- H" K  W- a' G& o, { 1.3 启动 GDB server/ g# z) m: M- y7 V4 d( I
GDB server 可以在命令窗口中以下列方式启动:' K2 G6 \9 A1 z3 ~& e* I& ]
1. cd
1 w1 v' ?6 k6 y; lC:\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_gdbserver1 f! f' L$ S0 E' f* y
2. 利用–cp 和 STM32_Programmer_CLI.exe 路径启动 GDB server
( g- C( W$ v* ^( Y& F% _6 X. 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"   a- w9 p1 r7 y+ `8 b1 a- b
3. 随后 GDB server 将通过 ST-LINK JTAG 与 STM32 设备相连,并等待 GDB 调试会话命令。
" e2 i8 ]- e2 [9 ]; n
8 f$ u# u5 C6 L* e0 a
! f5 e2 Z# s0 ^% {7 U! p+ r
7 u+ O1 A/ Y+ G5 @: \( }+ h5 F

$ d  g+ m/ i( z! p完整版请查看:附件 STM32CubeIDE ST-LINK 服务器.pdf (478.67 KB, 下载次数: 9)
收藏 评论0 发布时间:2023-2-13 20:54

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版