|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
IAR的调试模式可以查看变量的实时值,下面我们来演示一下。首先我们修改下hello_world程序,我们在main函数定义一个变量i,然后写一个for循环给变量i赋值,如图 1所示:2 V8 Z; |3 x7 |# O8 W3 f: c1 I
3 n x1 d. ~% S% l% o/ _4 i- y
然后我们点解菜单栏的“Make”快捷图标,开始编译我们修改后的程序,编译完成如图 2所示:
7 O1 m3 H% }7 m3 M1 j$ _/ x5 W0 z " ?7 q, U8 ]% _" c( p* g; l
从上图可以看到编程成功,然后我们点击“Debug without Downloading”快捷图标,进入调试模式,如图 3所示:6 z- T5 m* |7 m1 i: l
6 j6 D* V4 }/ U d& s( E
然后我们鼠标右键点击变量“i”,在弹出的选项,选择“add to watch”,如图 4所示:8 Y8 q8 q7 A( |6 @
.
" P1 @4 D6 m0 ?8 x; M然后可以看到打开“Watch i”窗口,里面列出了变量i,以及对应的值(Value),如图 5所示:$ u* [$ d- \- `. _* A ~# q
* e4 D d0 o$ E/ R$ ]) K' i5 }
接着我们点击调试快捷图标中的“Go”快捷图标,是程序运行,由于我们在for循环中设置了断点,所以程序运行到断点处会停止,同时我们在“Watch i”窗口可以看到你变量i的值为0,运行结果如图 6所示:, x9 h" r, x. f
0 k( [( y# j7 [8 o. r
在上图的“Watch i”窗口可以看待变量i是按照字符的方式显示的,我们可以鼠标右键点击该行,然后在弹出的选项里面修改变量i的显示类型,如图 7所示:( Y" v4 b% D/ j& m9 m
- S8 d3 ^6 ~6 T4 k H
从上图我们可以看到显示类型有默认类型,二进制,八进制,十进制,十六进制,字符类型。这里我们选择十进制显示方式(Decimal Format),我们可以看到变量i的值是0,如图 8所示: O- ?' O+ e4 m" c1 z7 }
* U' r" N* V# p1 i1 l
然后我们继续点击调试快捷图标的“Go”快捷图标,使程序仅需运行,程序会再次停止在断电位置,此时变量i的值是1,如图 9所示:
5 Y. h" X! w3 V( a% `) L![]()
$ p; L5 N: v. j( H# a |* d我们可以反复点击“Go”快捷图标,使程序集训运行,我们可以看到,没点击一次“Go”快捷图标,变量i的值就会加1,如图 10所示:
' e1 t0 f3 ~0 B2 q![]()
2 n. k5 B! S6 R0 U* j- R8 m通过调试查看变量i的值,可以发现变量i的值与我们程序设计的逻辑是一致的。通过IAR调试查看变量可以很方便的帮助我们跟踪程序的运行,以及某个时刻变量的值。
3 O0 U1 @+ U0 C- D4 J4 X
7 [! \/ v, ~4 K( F( C9 b关于IAR调试模式下查看变量的值,我们就介绍到这里。当然我们也可以在IAR的调试模式下查看某个内存,或者某段内存的内容。
6 b p; [- O, w- ?
1 |6 U R0 {, w, F0 a关于i.MX6ULL使用JTAG调试我们就先介绍到这里。前面我们在安装JLINK V9驱动的时候,同时也会安装一些JLINK V9的应用工具,他们在驱动的安装目录下(C:\Program Files (x86)\SEGGER\JLink_V634f),如图 11所示:
( G# P4 s$ O Q" n0 I " Y$ g0 o! _# B; G. P/ u/ J* \. R
, V& c8 ^( V6 `) J在这些应用里面我们最常用的是JFlash.exe和JLink.exe,如图 12所示:
# I6 M2 U" ]; y5 N) W- o$ v4 s: L' f![]()
. P5 b6 M7 D! N( R: f' e; U6 l我们可以使用JLink.exe下载编译好的二进制程序到i.MX6ULL开发板的内存指定位置,然后从该位置执行我们的二进制程序。具体的使用我们会在后面的文档中给大家介绍。. P, K6 o& J7 x) K, E% e; S+ K# Z
![]()
! q7 @) o+ s% d+ i. g* L1 ~2 Z |
|