STMCU小助手
发布时间:2022-3-1 12:01
|
问题: 某客户工程师在某型号新产品的设计中,使用了 STM32F407VGT6。据其工程师讲述:他想使用 MDK 自带的 Logic Analyzer 功能,在软件仿真的情况下是正常的,但是用仿真器仿真的时候,该功能出现了问题,尝试了很多种配置都没有成功。 调研: MDK 自带的帮助文档中有针对如何使用 Logic Analyzer 功能的讲解,其基本前提条件就是需要开启仿真器的 Trace 功能,而在完全软件仿真的时候是不需要有此操作的。客户的重点问题是如何在硬件仿真中实现 Logic Analyzer. 结论: 硬件仿真实现 Logic Analyzer 功能是有条件限制的,根据不同的仿真器和不同的 MCU 都有相关的设置。例如使用 Jlink 就需要使用 ETM 接口(详细设置参见 MDK 的帮助文档)。使用 ST-Link/V2 只需要简单的 SWD 接口就可以实现此功能。目前 MDK 的帮助文档中还没有针对 ST-Link 的设置做相关阐述。所以造成有些工程师不了解 ST-Link/V2 在程序仿真时的优势。 处理: 硬件平台:STM32F4DISCOVERY MDK 版本:MDK V4.7.3 32K 限制版本 首先在 MDK 中按照如下步骤进行设置。 1/选择 Target Option 或者 Alt+F7。
2/选择 Debug 选项
3/选择 ST-Link Debugger
4/选择 Setting
5/选择 SW 端口(注意,此时需要连接上 ST-Link/V2)
6/选择 Trace,使能 Trace 功能,禁止 Periodic 和 EXCTRC 功能.其他的配置按照下图设置.
7/点击 OK,返回到 debug 界面,在 Initialization File 中添加“STM32_SWO.ini”文件.该文件的路径如下:“C:\Keil\ARM\Boards\Keil\MCBSTM32C\Blinky_Ulp”(备注:本文提供的例程已经包含了这个文件,所以使用该例程无需再次添加此文件)
8/点击 OK,之后我们的设置就完成了,直接编译仿真即可。
9/尝试一个简单的闪灯程序进行测试.该测试程序在 Logic Analyzer 中看变量 temp_adc 的变化所产生的波形。 备注:添加变量到 Logic Analyzer 中很简单,只需要点击右键 Add
建议: 1/MDK 的这个 Logic Analyzer 是一个简单易用的评估工具,对于低速信号或者简单的变量可以很直观的显示出来,对于早期评估很有帮助。 2/ST-Link 在针对 STM32 的仿真支持的非常好,建议在使用 STM32 的情况下,优先考虑该仿真器。 3/如果想真实的反馈外设的逻辑状态,那么还是需要真正的逻辑分析仪的 |
【经验分享】STM32 HAL库移植FreeModbus详细步骤
【逢7发帖赢大礼】STM32开发之IC门禁卡UID读取方法!
实战经验 | Keil工程使用NEAI库的异常问题
经验分享 | FDCAN数据段波特率增加后发送失败的问题分析
STM32几种流行开发环境的优缺点
好用软件推荐-TouchGFX Designer
OpenSTLinux 6.1发布:M33-TD加持+安全升级,STM32MPU开发效率翻倍!
【经验分享】STM32CubeIDE汉化
手把手教你VSCode搭建STM32开发环境
RTOS在STM32中的应用
微信公众号
手机版