五分钟学会STM32 Debug仿真(J-Link教程)

1 篇文章 0 订阅
1 篇文章 0 订阅

  这篇文章介绍一下单片机里非常重要的debug,使用的硬件是J-Link。在工程上,使用J-Link来Debug将会让寻找bug的效率事半功倍,J-Link等仿真器是一个嵌入式工程师必不可少的工具,就像是电工不能没有电烙铁。而大多数新手在入门的时候都会忽略debug的训练,这篇文章可以让你五分钟轻松入门debug功能。

  下图是连线规则,VCC连接3.3V,GND连接GND,SWCLK和SWDIO连接单片机上的CLK和DIO端口,具体是哪一个IO口还要阅读一下数据手册。

 然后如果你想使用J-Link来Debug,首先你要做的就是在网上下载相应的J-Link驱动,具体链接大家可以上网搜索一下,我这里就不放下载链接了。

 我们打开熟悉的keil5,然后点击Option for Target。

  点击Debug这个选项,然后我们可以看到界面如下,然后右边的框框那里选择J-Link,点击setting,看一下电脑检测到你的J-Link了没有。

 具体界面如下,如果你的SW Device没有被检测到,就不会有以下的界面,然后其他的数值按照默认的来就好了。

  然后bulid一下你自己的程序,他才会生成相应的代码。一定要记住每次写完代码后要build一下,不然烧录的代码是你修改之前的代码。 

   点击右上方start debug,进入debug模式。

 进入之后就是下面的界面,进入之后代码是不会运行的,单片机是处于停止状态的。

   然后介绍一下一些边栏的作用,左边第一个RST按钮是RESET的按钮,可以让单片机复位。第二个是RUN,让单片机程序运行。第三个是STOP,在单片机运行的时候如果我们发现程序不对,我们可以及时按下STOP来停止程序的运行。第四个之后的按钮就分别是一步步运行,跳过,跳出,跳到指定程序。

  看到右上方start debug的右边的按钮,第一个是比较实用的添加断点,何为断点呢,就是程序如果运行到断点处,这个程序就会停止STOP。但是断点的个数是有数量限制的,增添太多断点程序或许会卡死。剩余的几个按钮也是关于断点设置的,大家感兴趣可以把鼠标放在上面看看英文显示,就明白它们的作用了。

  左边栏显示的黄色箭头和蓝色箭头又代表的什么意思呢?黄色箭头代表的是你STOP程序后,程序运行停在了哪一行代码之上,而蓝色箭头代表着你选择的代码行。我们可以在中断程序里面设置断点,然后运行根据黄色的箭头来判断我们的程序是否进入了中断程序,然后来debug中断程序的基础配置和逻辑运行。

 介绍一下右边watch栏的作用,这些都是程序里相关的变量值,我们可以根据watch来观察我们程序在运行时各个变量的具体变化趋势。比如说有时候usart乱码了,但你又不知道usart乱码成了什么数据,你就可以设置一个变量Temp接受usart发送过来的数据然后把它放在watch栏里观察它的值。 然后这个变量要设置为全局变量,因为watch只能观察全局变量,如果是函数里的相应变量,是无法加入到watch里的。

  

 最后我介绍一下如何将一个变量加入到watch栏里面,我们先右击相应变量,然后点击add current to...,点击watch1或者watch2,然后你就可以在watch栏里看到相应变量的数值啦。  今天的教程就这些了,这些就是J-Link Debug的简单教程,如果能帮助到大家是我莫大的荣幸。

  • 20
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
野火STM32F103可以通过以下步骤连接ST-LINK仿真器: 1. 首先,将ST-LINK仿真器连接到计算机的USB接口上。 2. 打开野火STM32F103的开发环境(比如Keil)。 3. 在开发环境中选择“debug”选项,并选择ST-LINK Debugger作为调试工具。 4. 在设置中,您应该能够看到产品型号和ID,这表示驱动正常。如果驱动不正常,您可以在网上查找驱动程序的下载和安装教程。\[1\] 5. 如果您需要进一步了解如何连接ST-LINK仿真器和野火STM32F103,您可以参考一些相关的文章和教程。例如,您可以查看以下作者的文章:\[2\] 6. 如果您在使用Keil开发环境时遇到了容量限制的问题,您可以按照以下步骤解决:首先,打开Keil所在的目录,将FLM文件从一个目录复制到另一个目录。然后,在Keil中添加新的产品,以获得所需的容量。\[3\] 希望以上信息对您有所帮助! #### 引用[.reference_title] - *1* *3* [基于keil5 的stm32F103C8T6的ST-LINK V2的仿真器使用](https://blog.csdn.net/weixin_52343149/article/details/121272267)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [使用st-link v2给STM32f103c8t6下载程序](https://blog.csdn.net/zq178/article/details/119114449)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值