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

如何在STM32f4配置jlink-rtt

[复制链接]
STMCU小助手 发布时间:2023-1-8 12:00
1、使用stm32cubemx配置一个基本工程7 Y! |' p4 N) [! G8 a
使用内部HSI时钟) Q6 x, I, e! o0 X

6 ^% z$ x0 \. L: O( \7 [% Y! E% r
9919e9557d7f4f6a98d1ddab666180d6.png 1 s7 N  W% b8 X/ E

# K+ z6 |# O0 J% T9 E0 { 只用配置SW调试引脚/ N- c' {! b. D+ C0 W- O; w% W
+ y" Q4 J2 r: y& D. ~4 k
5f6ade1288a34a00b4e37c19f7f712ab.png
( C% ?8 y9 [0 B& B. y. t- t
" h" E% {3 K! r& }$ F 生成MDK工程
  f  v. `& \- i) F  m1 f1 j
9 w1 c0 W* t& `5 C' j* a3 P  W
d4a234303da442ae813049001b95a729.png * ?' e% K5 @; V4 u

1 A$ w5 V& p5 e" ?( m3 J2 c' ~ 打开MDK添加Jlink rtt驱动文件
0 @4 ^; T- _( l* e: f
' P1 _; \5 a7 Z) g! c. d6 b9 ]0 g
2b4abd9bb4f846bda8c61ff6bf53815e.png
/ A  \1 N$ x1 X5 `* o" z" p0 w
在jlink软件的安装目录下找到
: K! G" F/ Z2 `) q" {* ~
! g. @7 m- d+ I8 S: d5 l
70bce14d8e064d63995d7348cff9c613.png 5 g, v& M  {) I! P, q$ o
  S! c3 e+ Z9 G$ n
将rtt文件夹和config文件夹放置在stm32的工程目录下新创建的jlink文件夹中
7 x, c4 C, K0 P6 J9 N% j7 a( B: X& d' q1 U+ k
ea9216b6d62442bb95495a1a2ca9dec5.png " b; m9 \7 q4 N" N4 n1 ^: ]
- o2 Q/ T* K/ J( |
在MDK中将源文件和头文件路径添加到工程中: e2 W3 L/ ~3 z0 k
9 ~4 x' p5 t; b8 N+ n8 S2 z7 [: O1 A
61261abe3c56412c8538a9d0e19a222e.png
& {( J9 ?* x+ g% ?4 z
( V6 g6 b/ }: g1 }) `2 N% h 在main.h中添加头文件
. u2 p/ ^5 c+ y6 x% i
+ x  O( @4 s; M  `$ w( g" w
f74506f7f63048a9899b7d1793534b4a.png
6 E0 V1 M5 s! a0 V3 P3 i* f

0 T' j8 b6 [, b# Q) l/ H" ] 在main.c中添加rtt初始化代码
, _* }" u8 _0 T
* L( s1 n3 l: r3 c7 A) p0 M和printf输出代码 - Y) `% u; D) S4 `

* ?2 d4 h4 q5 h( v; U6 Z
1246938db6734249ad36dabb55dca2c9.png   g5 T) {5 X& Y$ G
, f# e  j* v+ U5 A- O. |
将代码编译通过jlink将代码下载到开发板
9 I) P! D7 h5 ]1 B0 ]7 V
1 J: {6 ~' Y) ?! z3 Q8 k: q
2c4f396143e44fd192faf84575a29cde.png
$ {7 ~- Z# B1 O& ^, D( ^
& b: x5 `4 f" ^2 P& d; |$ _) N通过jlink command复位开发板
; w8 I9 E+ Q( W/ }. I! n! i$ ^: w: Y" x
3eb92a4c295f463ea27b04653394d0c2.png
8 L8 b  T3 d( B4 N" j+ I* }0 Z
4 W1 F: z' C: E. g$ k打开rttview( `  `' P# S3 Z0 f

- S' W+ Z2 T1 B: a# `
eebd5817a703402dab0d3440ffa04d75.png # H2 \- Z( s1 o
$ x6 g+ D) [5 J! N8 Z; k
显示如下内容
, g: E2 f- @) o3 }+ o
" S+ w. _4 z; K( S
2402c0ed10dd452dbf1c1f293052bfe5.png 7 J9 U- C% \  Y3 y

3 \) n0 z# d' f' X% q浮点数没有显示,表示rtt本身的函数不支持浮点数输出,需要修改底层驱动# f" z5 L& v" J9 I3 L
7 F4 Z. d6 V/ B* N: Q7 M+ }2 h
484c2e57c6ed413b9694b7281262db3b.png
# g2 Z& C* I! X+ ]: L& c2 X: G8 L2 U
重新编译代码下载到开发板,运行输出如下,只能显示小数点后两位
4 j# ?/ u# d% H6 X7 |7 c
4 q/ k. c# i1 \3 k* ?# [# @8 x
b106bbd5e9d84d4c80351298f3e537f2.png
! h6 |/ N1 `( b( e8 r. U7 D' m; H4 i$ L6 C
修改代码
* |8 f0 Z+ i+ r! m; {2 N& v, D7 v- Q* r$ c. q! d
ab473c1f29f9430cab727a06a61a35a5.png ; P9 s8 z0 k) W4 _1 `" W

+ H; p+ y7 f5 B
0bb12fdfd69b40b6a561c096903d33fd.png
; h5 F: }5 `/ o) v: R! \4 ^2 b& _) b: G; s- Q0 m+ `# {) }
重新编译下载后运行如下7 U8 _- M! W  Z% }9 V" k

- Z* h' ?- P# I0 V
1a9af6a5bee5495994e28186a558af01.png
/ h2 U& }: n7 n6 B9 G* \: N
0 M" ]& W- K( q/ n
以上就是jlink rtt的简单输出配置,代码如下
  j$ {0 a$ p7 r
  1. //----------------------------------      
    4 Y$ ]7 m- U5 W- q/ H% M% |
  2.                         case 'f':
      t+ A5 Z1 @$ V# K
  3.                         case 'F':
    " i% }* P  W$ M! g2 z
  4.                         {8 O3 \( Q" z0 J- }# l  \$ ^
  5.                                 float fv;
    0 X% H& r/ O. s. B: w" O& C
  6.                                 fv = (float)va_arg(*pParamList, double);   
    - X8 o9 o3 ]- Y" f7 O3 |* H* p

  7. ) w+ P, V# t4 ^! d+ j6 V1 L
  8.                                 v = (int)fv;                                
    9 b+ K* a0 K& J2 k5 y% V. }% m( k2 _

  9. + U3 X8 I& ]0 C/ s( R# U
  10.                                 _PrintInt(&BufferDesc, v, 10u, NumDigits, FieldWidth, FormatFlags);
    7 [; ~9 ~( m# R' W! L/ `; g
  11.                                 _StoreChar(&BufferDesc, '.');                                    
    6 D6 ?& w9 q6 `6 g2 y0 `, N8 ]  Q
  12.                                 v = abs((int)(fv * 100));               ; t; {- w5 V' `* Y
  13.                                 v = v % 100;
    ! D6 {+ T/ X) S
  14.                                 _PrintInt(&BufferDesc, v, 10u, 2, FieldWidth, FormatFlags);         
    & Z$ p- C6 I7 e$ M( f
  15.                         }
    ' j4 b; P* U5 M3 Q  A7 H
  16.                         break;
    ( J, Z$ O$ `: Q$ U" ]* T( y# w$ f
  17. //--------------------------------
复制代码

* @8 u) O1 I3 T7 x————————————————6 Z" I  _* n! e8 P- [) a
版权声明:jiangxinzhumeng
' L4 e! M/ h: W/ |9 z( z8 V; P: L' e' E6 F1 \
赞 收藏 评论0 发布时间:2023-1-8 12:00

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版