keill5中用JLINK下载与调试程序



本教程以下载与调试STM32芯片为例,简单说下在MDK平台上用JLINK下载与调试时配置的步骤


JLINK V9 可支持JTAGSWD两种调试模式,同时STM32也支持JTAG SWD。所以,我们有2种方式可以用来调试,当用JTAG调试的时候,占用的IO线比较多,而SWD 调试的时候占用的IO 线只需要两根即可。

1、连线:在硬件上,把JLINKUSB线连接到电脑和板子的JTAG接口上。


2、JLINK连线: 

1Vref 电压参考,用于Jlink测试被调试设备的总线电压,一般接被调试设备的Vcc。

2-------------3.3VJlink输出3.3v给外部设备(可选)

5------------------TDI

7------------------TMS

9------------------TCK

http://pan.baidu.com/s/1eSBHlWu密码:380f

3配置JLINK的一些参数:

1)、打开MDK平台,在IDE 里面点击即打开Options   for   Target 选项卡  确定Target 选项如图图1所示(主要检查芯片型号和晶振频率,其他的一般默认就可以)

 

1

2)、在Debug 栏选择仿真工具为 J-LINK/J-TRACE Cortex,如图图2所示:

 

2

上图中我们还勾选了Run to main() ,该选项选中后,只要点击仿真就会直接运行到main函数,如果没选择这个选项,则会先执行 startup_stm32f10x_hd.s  文件的 Reset_Handler ,再跳到main函数。

3)、然后点击Settings,配置J-LINK调试模式。

 

3

3中,我们使用J-LINK V9 SW 模式调试,Max Clock选项可以点击Auto Clk 来自动设置,图3中我们设置SWD 的调试速度为10Mhz,这里,如果你的USB 数据线比较差,那么可能会出问题,此时,你可以通过降低这里的速率来试试。

单击确定。

4)、在Utilities选项卡里面设置下载时的目标编程器,如图图4所示:

4

 

4中,我们直接勾选Use Debug Driver ,即和调试一样,选择JLINK来给目标器件的FLASH 编程,

5)、然后点击 Settings按钮,进入FLASH算法设置,设置如图 图5所示:

5

这里MDK会根据我们新建工程时选择的目标器件,自动设置flash 算法。我们使用的是STM32F103RCT6FLASH 容量为256K 字节,属于高容量系列,所以Programming   Algorithm 里面默认会有512K 型号的STM32F10x High-density Flash 算法(注意:256K 512K 共用)。 另外,如果这里没有flash 算法,大家可以点击Add 按钮,自行添加即可。最后选中Reset and Run 选项,以实现在编程后自动启动,其他默认设置即可。在设置完之后,点击确定,然后再点击确定,回到IDE界面,编译一下工程。

4、调试:在工程项目编译通过后,点击(开始/停止仿真按钮),接下来我们就可以通过JLINK调试代码了,如图图6所示。

6

可以发现,多出了一个工具条,这就是Debug 工具条,这个工具条在我们仿真调试的时候是非常有用的,下面简单介绍一下Debug 工具条相关按钮的功能。Debug 工具条部分按钮的功能如图图7所示:

 

7

复位:其功能等同于硬件上按复位按钮。相当于实现了一次硬复位。按下该按钮之后,代码会重新从头开始执行。

执行到断点处:该按钮用来快速执行到断点处,有时候你并不需要观看每步是怎么执行的,而是想快速的执行到程序的某个地方看结果,这个按钮就可以实现这样的功能,前提是你在查看的地方设置了断点。

挂起:此按钮在程序一直执行的时候会变为有效,通过按该按钮,就可以使程序停止下来,进入到单步调试状态。

执行进去:该按钮用来实现执行到某个函数里面去的功能,在没有函数的情况下,是等同于执行过去按钮的。

执行过去:在碰到有函数的地方,通过该按钮就可以单步执行过这个函数,而不进入这个函数单步执行。

执行出去:该按钮是在进入了函数单步调试的时候,有时候你可能不必再执行该函数的剩余部分了,通过该按钮就直接一步执行  完函数余下的部分,并跳出函数,回到函数被调用的位置。

执行到光标处:该按钮可以迅速的使程序运行到光标处,其实是挺像执行到断点处的功能,但是两者是有区别的,断点可以有多个,但是光标所在处只有一个。

汇编窗口:通过该按钮,就可以查看汇编代码,这对分析程序很有用。

观看变量/堆栈窗口:该按钮按下,会弹出一个显示变量的窗口,在里面可以查看各种你想要看的变量值,也是很常用的一个调试窗口。

串口打印窗口:该按钮按下,会弹出一个类似串口调试助手界面的窗口,用来显示从串口打印出来的内容。

内存查看窗口:该按钮按下,会弹出一个内存查看窗口,可以在里面输入你要查看的内存地址,然后观察这一片内存的变化情况。是很常用的一个调试窗口

性能分析窗口:按下该按钮,会弹出一个观看各个函数执行时间和所占百分比的窗口,用来分析函数的性能是比较有用的。

逻辑分析窗口:按下该按钮会弹出一个逻辑分析窗口,通过 SETUP 按钮新建一些IO口,就可以观察这些IO  口的电平变化情况,以多种形式显示出来,比较直观,注意软件仿真则没有这个功能。

 

5、调试完成之后,使用JLINK下载代码就非常简单了,大家只需要点击LOAD 按钮就可以进行程序下载。下载完成之后程序就可以直接在开发板执行,如图图8所示。

 

8

 



猜你喜欢

转载自blog.csdn.net/qq_41960196/article/details/80865637
今日推荐