IAR的调试模式可以查看变量的实时值,下面我们来演示一下。首先我们修改下hello_world程序,我们在main函数定义一个变量i,然后写一个for循环给变量i赋值,如图 1所示:

然后我们点解菜单栏的“Make”快捷图标,开始编译我们修改后的程序,编译完成如图 2所示:

从上图可以看到编程成功,然后我们点击“Debug without Downloading”快捷图标,进入调试模式,如图 3所示:

然后我们鼠标右键点击变量“i”,在弹出的选项,选择“add to watch”,如图 4所示:
.
然后可以看到打开“Watch i”窗口,里面列出了变量i,以及对应的值(Value),如图 5所示:

接着我们点击调试快捷图标中的“Go”快捷图标,是程序运行,由于我们在for循环中设置了断点,所以程序运行到断点处会停止,同时我们在“Watch i”窗口可以看到你变量i的值为0,运行结果如图 6所示:

在上图的“Watch i”窗口可以看待变量i是按照字符的方式显示的,我们可以鼠标右键点击该行,然后在弹出的选项里面修改变量i的显示类型,如图 7所示:

从上图我们可以看到显示类型有默认类型,二进制,八进制,十进制,十六进制,字符类型。这里我们选择十进制显示方式(Decimal Format),我们可以看到变量i的值是0,如图 8所示:

然后我们继续点击调试快捷图标的“Go”快捷图标,使程序仅需运行,程序会再次停止在断电位置,此时变量i的值是1,如图 9所示:

我们可以反复点击“Go”快捷图标,使程序集训运行,我们可以看到,没点击一次“Go”快捷图标,变量i的值就会加1,如图 10所示:

通过调试查看变量i的值,可以发现变量i的值与我们程序设计的逻辑是一致的。通过IAR调试查看变量可以很方便的帮助我们跟踪程序的运行,以及某个时刻变量的值。
关于IAR调试模式下查看变量的值,我们就介绍到这里。当然我们也可以在IAR的调试模式下查看某个内存,或者某段内存的内容。
关于i.MX6ULL使用JTAG调试我们就先介绍到这里。前面我们在安装JLINK V9驱动的时候,同时也会安装一些JLINK V9的应用工具,他们在驱动的安装目录下(C:\Program Files (x86)\SEGGER\JLink_V634f),如图 11所示:

在这些应用里面我们最常用的是JFlash.exe和JLink.exe,如图 12所示:

我们可以使用JLink.exe下载编译好的二进制程序到i.MX6ULL开发板的内存指定位置,然后从该位置执行我们的二进制程序。具体的使用我们会在后面的文档中给大家介绍。

|