|
MDK 的一个强大的功能就是提供软件仿真,通过软件仿真,我们可以发现很多将要出现的问题,避免了下载到 STM32 里面来查这些错误,这样最大的好处是能很方便的检查程序存在的问题,因为在 MDK 的仿真下面,你可以查看很多硬件相关的寄存器,通过观察这些寄存器,你可以知道代码是不是真正有效。另外一个优点是不必频繁的刷机,从而延长了 STM32的 FLASH 寿命(STM32 的 FLASH 寿命≥1W 次)。当然,软件仿真不是万能的,很多问题还是要到在线调试才能发现。+ {) C! l0 q, V B' w3 f 检查配置 如下图( z) s" p8 @/ ]" S8 O ' C$ c+ R' N* W: @' `3 Y$ D
! n; w3 l7 f5 E$ d. L. q& V5 Z Debug 选项卡9 ^9 ]+ E9 L* |) U Use Simulator,即使用软件仿真。选择:Run to main(),即跳过汇# V- V! D/ W8 ~: N 编代码,直接跳转到 main 函数开始仿真。设置下方的:Dialog DLL 分别为:***DARMSTM.DLL ****和 TARMSTM.DLL,8 J4 W( E+ B: Y& K ) p+ o* }$ P$ R z8 _ Parameter 均为:& Q: ?: ^9 P1 V+ V % {3 x5 K1 q. S$ T -pSTM32F103ZE, S6 g% G$ \: o5 Z) _ 1 a9 k9 u% p. }; H$ q ,用于设置支持 STM32F103ZE 的软硬件仿真(即可以通过Peripherals 选择对应外设的对话框观察仿真结果)。最后点击 OK,完成设置。 5 E) q% m, I0 E; A) u+ V+ P+ l ~
" g- T9 M% {% P1 L0 t: j! s. ?
4 x1 L2 R. p- |# }6 c 开始仿真/ s9 V2 U* a, u4 H 我们点击
) `& |% G7 y7 H! i, T2 J- B ]+ y
Debug工具条9 [; E% }( E7 V; ~9 U: C & ~9 S- d) W. W( J- k$ X: ^
% O" g) B) ^3 S; s6 j 复位:相当于硬件复位按键,从头开始 执行到断点处:该按钮用来快速执行到断点处7 b6 y) ~3 `) G- ^ - C0 i+ ^& H7 c/ z+ P, { 挂起:可以使程序停止下来,进入到单步调试状态 执行进去:实现执行到某个函数里面去的功能,在没有函数的情况下,是等同于执行过去按钮的 $ V" ?: _6 G0 `4 q7 i 执行过去:在碰到有函数的地方,通过该按钮就可以单步执行过这个函数,而不进入这个函数单步执行 执行出去:该按钮是在进入了函数单步调试的时候,有时候你可能不必再执行该函数的剩余部分了,通过该按钮就直接一步执行完函数余下的部分,并跳出函数,回到函数被调用的位置。 + y. D ~8 T, L% d" a" o0 Y0 Q& t 执行到光标处:可以迅速的使程序运行到光标处,其实是挺像执行到断点处按钮功能,但是两者是有区别的,断点可以有多个,但是光标所在处只有一个。3 O. ^6 u8 h0 M6 T7 t 汇编窗口:可以查看汇编代码,这对分析程序很有用。 0 J" `: _3 i# R# ^1 m( ? 观看变量/堆栈窗口:显示变量的窗口,在里面可以查看各种你想要看的变量值,也是很常用的一个调试窗口。 性能分析窗口:观看各个函数执行时间和所占百分比的窗口,用来分析函数的性能1 u# X6 o2 X4 j8 e9 e4 \; l! s ! }9 P" _0 P! @3 h U 逻辑分析窗口:按下该按钮会弹出一个逻辑分析窗口,通过 SETUP 按钮新建一些 IO 口,就可以观察这些 IO 口的电平变化情况,以多种形式显示出来,比较直观。 A, W8 z7 _7 d7 H* V2 p8 e ————————————————0 Z' d% P! _# X5 S) m5 m! g- Q4 g 版权声明:Mr Harsh l0 I# L# e. Z" c3 l9 o" v 如有侵权请联系删除" g& ^& D7 E9 A: R/ U |
DMA 原理从 0 到 1:为什么它能解放 CPU?一文讲透 DMA 的工作流程
【福利三:雨露均沾·逢7狂欢】之五:STM32系统时钟PLL故障排除1例
【福利三:雨露均沾·逢7狂欢】之三:AI帮我查BUG
福利三:雨露均沾·逢7狂欢】之二:STM32F407VG串口通信乱码故障的排除
基于STM32F103的I2C主从机通信
OpenBLT移植到STM32F103战舰开发板上适用于所有STM32F103系列的Bootloader
TFT LCD 与 FSMC 的硬件连接大容量 STM32F10xxx FSMC 接口
单片机:初学者该了解的STM32F103基础知识
2025软件工具兔哥知道
STM32之继电器模块
微信公众号
手机版