EDA365电子论坛网
标题:
迅为i.MX6ULL终结者查看变量的实时值
[打印本页]
作者:
阳阳天
时间:
2021-3-26 14:13
标题:
迅为i.MX6ULL终结者查看变量的实时值
IAR的调试模式可以查看变量的实时值,下面我们来演示一下。首先我们修改下hello_world程序,我们在main函数定义一个变量i,然后写一个for循环给变量i赋值,如图 1所示:
& r) m) t; }: t- J1 i: }
! _ Z3 Y7 B& P9 z
然后我们点解菜单栏的“Make”快捷图标,开始编译我们修改后的程序,编译完成如图 2所示:
, t3 [6 V$ _/ g& x( t. j! V
: j/ L E, R: ^$ K5 o; T1 L( ]7 B
从上图可以看到编程成功,然后我们点击“Debug without Downloading”快捷图标,进入调试模式,如图 3所示:
/ U3 R R! \7 r) Z! u
& h9 a: z6 L. p8 N5 [& h; ]3 m" F) |
然后我们鼠标右键点击变量“i”,在弹出的选项,选择“add to watch”,如图 4所示:
, \1 i% j* |& m6 ~+ a, c
.
" r9 i) t# t7 y
然后可以看到打开“Watch i”窗口,里面列出了变量i,以及对应的值(Value),如图 5所示:
& \6 B5 A: c1 m" ?' g$ B& n6 k
$ H0 n$ \- m3 }% f) V
接着我们点击调试快捷图标中的“Go”快捷图标,是程序运行,由于我们在for循环中设置了断点,所以程序运行到断点处会停止,同时我们在“Watch i”窗口可以看到你变量i的值为0,运行结果如图 6所示:
7 R( E# M1 u% A5 d/ X5 t
' }6 `/ C$ b) ~5 k- @' @7 U
在上图的“Watch i”窗口可以看待变量i是按照字符的方式显示的,我们可以鼠标右键点击该行,然后在弹出的选项里面修改变量i的显示类型,如图 7所示:
1 q: g7 z4 A" {
( r/ v( T: ~4 N' d/ K
从上图我们可以看到显示类型有默认类型,二进制,八进制,十进制,十六进制,字符类型。这里我们选择十进制显示方式(Decimal Format),我们可以看到变量i的值是0,如图 8所示:
" L7 k' m$ K5 R% Z8 |& ~
, U1 B+ a4 h& f, {# E- Z
然后我们继续点击调试快捷图标的“Go”快捷图标,使程序仅需运行,程序会再次停止在断电位置,此时变量i的值是1,如图 9所示:
3 O0 {0 U4 e8 C2 T G5 S5 |
6 e4 ~; r( ?- w
我们可以反复点击“Go”快捷图标,使程序集训运行,我们可以看到,没点击一次“Go”快捷图标,变量i的值就会加1,如图 10所示:
& L, G0 u- y9 z% f
( Y4 ^1 }) k( R8 @
通过调试查看变量i的值,可以发现变量i的值与我们程序设计的逻辑是一致的。通过IAR调试查看变量可以很方便的帮助我们跟踪程序的运行,以及某个时刻变量的值。
& Z2 y, j) G# J" R5 X3 x+ L. ]: F
5 i5 k0 Q1 P+ j
关于IAR调试模式下查看变量的值,我们就介绍到这里。当然我们也可以在IAR的调试模式下查看某个内存,或者某段内存的内容。
9 o3 w$ x' C) `! Y$ `5 _
8 ~+ R2 t. W" Y3 ]4 u7 u
关于i.MX6ULL使用JTAG调试我们就先介绍到这里。前面我们在安装JLINK V9驱动的时候,同时也会安装一些JLINK V9的应用工具,他们在驱动的安装目录下(C:\Program Files (x86)\SEGGER\JLink_V634f),如图 11所示:
1 ^4 C& a7 ]9 J' x$ r [
- w- F! w5 B# d! i6 X, M% `% }
* T! B' ~$ T& U }4 `7 i2 C
在这些应用里面我们最常用的是JFlash.exe和JLink.exe,如图 12所示:
/ V; [. F2 J5 }+ _% s x' f
8 A! G( {! z, L/ B }
我们可以使用JLink.exe下载编译好的二进制程序到i.MX6ULL开发板的内存指定位置,然后从该位置执行我们的二进制程序。具体的使用我们会在后面的文档中给大家介绍。
0 n0 X8 s7 C! ]; v- i! B4 w' R8 O
3 s% k1 c/ e7 q
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2