keil5软件仿真STM32F103波形

近日,在使用 Keil5 MDK 对STM32进行仿真的时候,无法查看IO端口的信号波形。

在网络上搜索了一番,才搞明白原因:一是没有选中【设置】选项中的【仿真器(simulator)】;二是【Debug】中的参数设置有问题。

现将有关设置记录如下:

第一步,在工程选项中,找到【debug】选项卡,左上方,一定要选中【use simulator】;

第二步,在下方的参数设置中,一定要修改四个参数,即第2步和第3步;

第三步,四个参数分别为【DARMSTM.DLL】、【-pSTM32F103ZE】、【TARMSTM.DLL】和【-pSTM32F103ZE】。

见下图所示:

keil5软件仿真STM32F103波形

【友情提醒】 第2和第4个参数是一致的,而且必须和工程选择器件类型是一致的。

前两天写一个报告中,无意中需要用到keil5中的软件仿真,看输出的PWM波形,折腾了几番后才搞出来。其中也出现unknown signal 的问题。

1.keil5进行软件仿真的设置步骤

首先如下图,需要设置勾选为软件仿真(这里设置为硬件仿真不行),其次后面的参数也需要改。第二个红圈里勾选的-pSTM32F103ZE这里是根据自己的芯片进行
设置。这里我选用的是STM32F103ZET6芯片。
keil5软件仿真STM32F103波形

2.仿真基本设置

首先进入仿真设置,然后点击波形查看图标。
keil5软件仿真STM32F103波形


设置仿真参数点击Setup...

keil5软件仿真STM32F103波形

设置添加需要查看的硬件IO口。在setup中输入PORTX.i等需要观察的引脚。
keil5软件仿真STM32F103波形

如果此时出现unknown signl。就是debug的设置问题了。
此时需要从新返回第一步的仿真设置,查看是否是按照自己的开发板设置的。

添加好需要查看的IO口后,点击RUN进行运行。
此时如果在框里没有看到波形的出现此时查看自己的设置是否合理。
logic Analyzer的左侧右键将每个波的数据设置为bit和Hexadecimal valus
keil5软件仿真STM32F103波形

如果此时波形未出现动态的变化就需要检查是否有如下设置

keil5软件仿真STM32F103波形

如果需要调整方便查看波形的话,点击  in out all 调整波形

特别需要注意的是:我IO设置为开漏输出,居然仿真都不能输出波形,这个问题坑了我好久。