学习啦 > 学习电脑 > 电脑硬件知识 > 硬件知识 > J-LINK如何进行硬件仿真

J-LINK如何进行硬件仿真

时间: 文辉886 分享

J-LINK如何进行硬件仿真

  J-LINK究竟是如何进行硬件仿真的呢?以下就是学习啦小编做的整理,希望对你们有用!

  J-LINK进行硬件仿真

  代码比较简单,所以不需要硬件调试,我们直接就一次成功了。如果代码工程比较大,难免存在一些bug,这时就有必要通过硬件调试来解决问题了。

  串口只能下载代码,并不能实时跟踪调试,而利用调试工具,比如JLINK、ULINK、STLINK等就可以实时跟踪程序,从而找到你程序中的bug,使你的开发事半功倍。这里我们以JLINKV8为例,说说如何在线调试STM32。

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

  JLINKV8的驱动安装比较简单,我们在这里就不说了。在安装了JLINKV8的驱动之后,我们接上JLINKV8,并把JTAG口插到ALIENTEK战舰STM32开发板上,打开之前新建的工程,点击,打开OptionsforTarget选项卡,在Debug栏选择仿真工具为Cortex-M3

  J-LINK,如图所示:

  

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

  然后我们点击Settings,设置J-LINK的一些参数,如图所示:

  

  我们使用J-LINKV8的SW模式调试,因为我们JTAG需要占用比SW模式多很多的IO口,而在ALIENTEK战舰STM32开发板上这些IO口可能被其他外设用到,可能造成部分外设无法使用。所以,我们建议大家在调试的时候,一定要选择SW模式。MaxClock,可以点击AutoClk来自动设置,图4.3.2中我们设置SWD的调试速度为10Mhz,这里,如果你的USB数据线比较差,那么可能会出问题,此时,你可以通过降低这里的速率来试试。

  单击OK,完成此部分设置,接下来我们还需要在Utilities选项卡里面设置下载时的目标编程器,如图所示:

  

  我们选择J-LINK来调试CortexM3,然后点击Settings,设置如图所示:

  

  这里要根据不同的MCU选择FLASH的大小,因为我们开发板使用的是STM32F103ZET6,其FLASH大小为512KB,所以我们点击Add,并在ProgrammingAlgorithm里面选择512K型号的STM32。然后选中ResetandRun选项,以实现在编程后自动启动,其他默认设置即可。设置完成之后,如上图3所示。

  在设置完之后,点击OK,然后再点击OK,回到IDE界面,编译一下工程。再点击,开始仿真(如果开发板的代码没被更新过,则会先更新代码,再仿真,你也可以通过按,只下载代码,而不进入仿真。特别注意:开发板上的B0和B1都要设置到GND,否则代码下载后不会自动运行的!),如图所示:

  

  因为我们之前勾选了Runtomain()选项,所以,程序直接就运行到了main函数的入口处,我们在delay_init()处设置了一个断点,点击

  ,程序将会快速执行到该处。如图所示:

  

1688985