STM32F429开发板调试技巧大全:从入门到精通
创作时间:
作者:
@小白创作中心
STM32F429开发板调试技巧大全:从入门到精通
引用
CSDN
等
9
来源
1.
https://blog.csdn.net/Simon223/article/details/107082143
2.
https://blog.csdn.net/jackie_o2o2/article/details/70135883
3.
https://blog.csdn.net/m0_62520055/article/details/125474079
4.
https://blog.csdn.net/weixin_43336867/article/details/122796768
5.
https://blog.csdn.net/m0_46079750/article/details/139456602
6.
https://blog.csdn.net/qq_22841387/article/details/131349049
7.
https://blog.csdn.net/gitblog_06643/article/details/142572972
8.
https://www.cnblogs.com/armfly/p/13180219.html
9.
https://www.cnblogs.com/armfly/p/13212404.html
在嵌入式开发中,STM32F429开发板以其强大的性能和丰富的外设资源,成为许多开发者的首选平台。然而,随着项目复杂度的增加,调试工作也变得越来越重要。本文将详细介绍如何使用MDK5环境对STM32F429开发板进行高效调试,从基础的硬件连接到高级的调试技巧,帮助开发者快速定位和解决问题。
01
硬件连接与配置
在开始调试之前,首先需要正确连接调试器和开发板。常用的调试器有JLINK和STLINK两种。
JLINK连接
使用JLINK时,需要通过JTAG转SWD转接板与开发板连接。具体的接线图如下:
注意:转接板不要插反,确保VCC、GND、SWDIO、SWCLK和NRST引脚正确连接。
STLINK连接
使用STLINK时,连接相对简单。如果是标准的STLINK,可以直接与开发板连接。如果使用的是三线JLINK-OB,仅需连接GND、SWDIO和SWCLK三个引脚。
驱动与固件
- 使用JLINK时,推荐使用V8、V9或V10版本。
- 使用STLINK时,确保电脑端驱动和固件都是最新版本。
02
MDK环境下的基本调试技巧
断点设置
断点是调试中最常用的工具,可以帮助开发者在特定位置暂停程序执行,检查变量状态。
- 普通断点:在代码行左侧点击设置,程序执行到该行时暂停。
- 条件断点:右键点击断点,选择"Breakpoint Properties",输入条件表达式。例如,当某个引脚状态变化时暂停。
变量监视
- 全局变量:使用Watch窗口(View -> Watch Windows)添加需要监视的变量。
- 局部变量:通过Call Stack Window自动显示当前函数的局部变量。
寄存器查看
要查看外设寄存器内容,可以在菜单中选择相应的选项。内核寄存器则在另一个菜单中查看。
全速运行与单步调试
- 全速运行:点击工具栏上的绿色箭头按钮,程序将正常执行。
- 单步调试:使用Step Into(F7)进入函数内部,Step Over(F8)跳过函数调用,Step Out(Shift+F8)退出当前函数。
03
高级调试工具:Event Recorder
Event Recorder是MDK5.22版本引入的强大调试工具,支持时间测量、功耗测量和printf打印,适用于各种调试器。
功能特点
- 支持所有类型的事件记录,如运行错误、API调用等。
- 可在任务、RTOS内核和中断服务程序中任意调用。
- 对于带ITM功能的Cortex-M内核,无需开关中断操作。
- 支持printf重定向。
使用方法
- 确保使用MDK5.25及以上版本。
- 配置EventRecorderConf.h文件中的缓冲大小,默认为64个消息。
- 在代码中添加事件记录语句,如
EventRecorderInitialize()和EventRecorderEnable()。
04
常见问题与解决方案
MDK调试崩溃
- 解决方案:
- 将工程放在桌面路径下,避免使用中文路径。
- 退出调试前清除所有断点。
JLINK无法下载
- 检查硬件连接:确保所有引脚连接正确。
- 更新驱动和固件:使用最新版本的驱动和固件。
- 检查电源供电:确保开发板供电正常。
05
实用技巧
监视特定引脚状态
使用条件断点可以监视特定引脚的变化。例如,当PF10引脚状态变化时暂停程序:
GPIO_ReadInputDataBit(GPIOF, GPIO_Pin_10) != prev_state
其中prev_state用于存储引脚的前一个状态。
使用逻辑分析仪
MDK自带的逻辑分析仪可以实时监视引脚波形。在调试模式下,添加需要监视的信号,如GPIOF_IDR.10,即可查看实时波形。
通过以上调试技巧和工具的使用,开发者可以更高效地进行STM32F429开发板的程序开发和故障排查。无论是初学者还是有经验的开发者,都能从这些技巧中受益,提高开发效率和代码质量。
热门推荐
如何纠正博美狗的咬人行为?
智驾:我们真的需要吗?
智驾技术的理想与现实 从“全民智驾”到安全反思
这几个小方法教给你,提升腿部力量和爆发力
电商需要考证吗?从必要性到证书指南的全面解析
有限元分析从定义到场景到硬件配置详细讲解
视界·河北丨美在保定
《西游记》中的妖精众生相:分类与深度解读
主机散热器选购全攻略:散热效能如何决定性价比?
大便发黄是什么原因引起的
健身练腿热身动作(运动前的热身动作)
Stata解决中文路径安装的问题(超实用技巧)
一季度A股并购重组持续活跃 巨额并购涌现
喝白粥和小米粥哪个好
20本500万字长篇精品小说,含玄幻、仙侠、都市、历史等不同类别
湖北利川旅游攻略:必去景点+美食全推荐,探索大自然的瑰宝!
湖人VS勇士述评:詹库齐砍30+无与伦比 出人意料的赢球方式
基金买卖的最佳时机如何把握?基金投资的风险如何有效控制?
酵素肥料的应用与发展(探索酵素在农业领域的崭新前景)
如何巧妙地分享生活动态,朋友圈文案的艺术
如何避免云盘数据丢失
新AI算法"望舌诊病"成功率达98%
青团:清明时节的传统美食与文化传承
桑葚的功效 让你重新认识这种水果
于成龙:清朝第一廉吏的传奇人生
58岁曾华倩参加综艺分享人生:从"雪山飞狐"到独立女性
探秘人间仙境:老君山游玩攻略
热火队记:安德鲁-威金斯因右脚脚踝扭伤明日对火箭出战成疑
新手妈妈必学宝典:科学缓解宝宝肠胀气的综合实用指南
新手妈妈必学宝典:科学缓解宝宝肠胀气的综合实用指南