打印
[STM32F1]

基于STM32F1软件仿真经验分享

[复制链接]
247|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
cr315|  楼主 | 2023-5-17 10:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MDK 的一个强大的功能就是提供软件仿真,通过软件仿真,我们可以发现很多将要出现的问题,避免了下载到 STM32 里面来查这些错误,这样最大的好处是能很方便的检查程序存在的问题,因为在 MDK 的仿真下面,你可以查看很多硬件相关的寄存器,通过观察这些寄存器,你可以知道代码是不是真正有效。另外一个优点是不必频繁的刷机,从而延长了 STM32的 FLASH 寿命(STM32 的 FLASH 寿命≥1W 次)。当然,软件仿真不是万能的,很多问题还是要到在线调试才能发现。

检查配置
如下图



Debug 选项卡
Use Simulator,即使用软件仿真。选择:Run to main(),即跳过汇
编代码,直接跳转到 main 函数开始仿真。设置下方的:Dialog DLL 分别为:***DARMSTM.DLL ****和 TARMSTM.DLL,

使用特权

评论回复
沙发
cr315|  楼主 | 2023-5-17 10:08 | 只看该作者
Parameter 均为:

-pSTM32F103ZE

,用于设置支持 STM32F103ZE 的软硬件仿真(即可以通过Peripherals 选择对应外设的对话框观察仿真结果)。最后点击 OK,完成设置。





开始仿真
我们点击 开始仿真,进入仿真界面



Debug工具条


使用特权

评论回复
板凳
cr315|  楼主 | 2023-5-17 10:08 | 只看该作者
复位:相当于硬件复位按键,从头开始

执行到断点处:该按钮用来快速执行到断点处

挂起:可以使程序停止下来,进入到单步调试状态

执行进去:实现执行到某个函数里面去的功能,在没有函数的情况下,是等同于执行过去按钮的

执行过去:在碰到有函数的地方,通过该按钮就可以单步执行过这个函数,而不进入这个函数单步执行

执行出去:该按钮是在进入了函数单步调试的时候,有时候你可能不必再执行该函数的剩余部分了,通过该按钮就直接一步执行完函数余下的部分,并跳出函数,回到函数被调用的位置。

执行到光标处:可以迅速的使程序运行到光标处,其实是挺像执行到断点处按钮功能,但是两者是有区别的,断点可以有多个,但是光标所在处只有一个。

汇编窗口:可以查看汇编代码,这对分析程序很有用。

观看变量/堆栈窗口:显示变量的窗口,在里面可以查看各种你想要看的变量值,也是很常用的一个调试窗口。

性能分析窗口:观看各个函数执行时间和所占百分比的窗口,用来分析函数的性能

逻辑分析窗口:按下该按钮会弹出一个逻辑分析窗口,通过 SETUP 按钮新建一些 IO 口,就可以观察这些 IO 口的电平变化情况,以多种形式显示出来,比较直观。

使用特权

评论回复
地板
周半梅| | 2024-6-1 07:03 | 只看该作者

每个电容与纹波电流源的引线阻抗一样

使用特权

评论回复
5
Pulitzer| | 2024-6-1 08:06 | 只看该作者

时间片轮的设计思想

使用特权

评论回复
6
童雨竹| | 2024-6-1 10:02 | 只看该作者

大大减小与其他引线之间的容性耦合

使用特权

评论回复
7
Wordsworth| | 2024-6-1 11:05 | 只看该作者

需要在做项目的过程中经历磨难

使用特权

评论回复
8
公羊子丹| | 2024-6-1 13:01 | 只看该作者

与电感和续流二极管相连

使用特权

评论回复
9
万图| | 2024-6-1 14:04 | 只看该作者

结构化模块化的程序设计的思想,使最基本的要求

使用特权

评论回复
10
Uriah| | 2024-6-1 15:07 | 只看该作者

确定好硬件原理图,硬件布线,最后才是软件的开发

使用特权

评论回复
11
帛灿灿| | 2024-6-1 17:03 | 只看该作者

写程序不难,但是程序怎么样才能写的好,写的快,那是需要点经验积累的

使用特权

评论回复
12
Bblythe| | 2024-6-1 18:06 | 只看该作者

在实际的项目应用当中,单片机引脚的复用相当厉害

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1327

主题

3832

帖子

0

粉丝