找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 485|回复: 8
打印 上一主题 下一主题
收起左侧

求助 Keil+Proteus STM32 联调失败,51 正常 STM32 不行

[复制链接]
跳转到指定楼层
楼主
ID:1172019 发表于 2026-5-27 01:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位大佬好,
51 单片机 Keil 和 Proteus 实时联调完全正常,
但换成 STM32 工程就无法建立调试连接。


我已开启 Proteus 远程调试,端口 8000,
Keil 已选 Proteus 仿真器,顺序先跑仿真再开调试,
还是连不上。


想请教下 STM32 联调还有什么特殊设置?谢谢!

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1066092 发表于 2026-6-6 01:04 | 只看该作者
你是用的vdmagi这个插件吗?以前用这个插件是可以联调的后面再也不能了,我试的结果是无法指定加载的编译文件,它不能加载keil编译后的文件所以无法联调仿真,后面在keil网站上也没有发现有这个官方插件了,不知道是不是不再做支持也就没管了。哪个有解决办法的可以分享下。
回复

使用道具 举报

板凳
ID:1172818 发表于 2026-6-7 15:49 | 只看该作者
STM32的Keil和51的不通用,要重新安装ARM版的。Proteus好像只能仿真部分stm32芯片,例如:STM32F103C8T6,很多stm32芯片在proteus里仿真不了
回复

使用道具 举报

地板
ID:106977 发表于 2026-6-7 22:26 | 只看该作者
STM32系列很多且不断发展。Proteus对F1系列支持最好,仿真模型最多。其次是F4系列。仿真模型不是自己能建立的。所以不能指望仿真全系列的STM32,更不可能仿真较新型号的STM32!Keil对STM32最新型号都有滞后!
回复

使用道具 举报

5#
ID:1172856 发表于 2026-6-7 22:54 | 只看该作者
Proteus 必须支持 STM32 调试 低版本 Proteus(8.6 及以下)不支持 STM32 硬件调试,仅能跑仿真,无法和 Keil 联调! 解决方案:升级到 Proteus 8.9 及以上版本(8.15 最稳定)。 STM32 芯片选型必须完全一致 Keil 工程芯片 ≠ Proteus 原理图芯片 → 直接连不上! 例:Keil 选 STM32F103C8T6,Proteus 也必须搜 STM32F103C8(不能选 C6、R8 等)。 严格遵守操作顺序(不能乱) ✅ 正确顺序: 打开 Proteus 工程 → 运行仿真(▶️ 运行,不要暂停) 打开 Keil → 点击调试(Debug → Start Debug Session) ❌ 错误顺序:先开 Keil 调试,再开 Proteus 仿真
回复

使用道具 举报

6#
ID:1172856 发表于 2026-6-7 22:55 | 只看该作者
Proteus 必须支持 STM32 调试
低版本 Proteus(8.6 及以下)不支持 STM32 硬件调试,仅能跑仿真,无法和 Keil 联调!
解决方案:升级到 Proteus 8.9 及以上版本(8.15 最稳定)。
STM32 芯片选型必须完全一致
Keil 工程芯片 ≠ Proteus 原理图芯片 → 直接连不上!
例:Keil 选 STM32F103C8T6,Proteus 也必须搜 STM32F103C8(不能选 C6、R8 等)。
严格遵守操作顺序(不能乱)
✅ 正确顺序:
打开 Proteus 工程 → 运行仿真(▶️ 运行,不要暂停)
打开 Keil → 点击调试(Debug → Start Debug Session)
❌ 错误顺序:先开 Keil 调试,再开 Proteus 仿真
回复

使用道具 举报

7#
ID:1172856 发表于 2026-6-7 22:55 | 只看该作者
开启 Debug 远程监控
Proteus 菜单栏:Debug → Debugger Configuration
勾选:Enable Remote Debug Monitor
端口默认 8000(不要改,和 Keil 保持一致)
STM32 必须添加调试接口(必加!51 不需要)
STM32 是 ARM 内核,必须在原理图中添加 SWD/JTAG 调试接口:
搜元件:DEBUG_FTDI 或 DEBUG_SWD
直接连接到 STM32 的 SWD 引脚:
PA13 (SWDIO)
PA14 (SWCLK)
51 不需要这个,但 STM32 不加这个 100% 连不上!
回复

使用道具 举报

8#
ID:1172856 发表于 2026-6-7 22:55 | 只看该作者
. Debug 调试器选择
打开 Keil → 魔法棒(Options for Target)→ Debug
右侧下拉框选择:Proteus VSM Simulator
点击 Settings 确认:
Hostname:localhost
Port:8000(和 Proteus 一致)
2. 必须取消「硬件调试」勾选
取消:Use Debug Driver
取消:Settings 里的任何 J-Link/ST-Link 选项
只保留:Proteus VSM Simulator
3. Utilities 下载选项(必改!)
切换到 Utilities 选项卡
选择:Use Debug Driver
下拉框同样选:Proteus VSM Simulator
这个设置 51 不用改,但 STM32 必须改,否则无法加载程序到 Proteus。
4. 内核 / 晶振设置匹配
Target 选项卡:
晶振频率:必须和 Proteus 原理图中 STM32 的晶振一致(常用 8MHz/72MHz)
ARM 内核:Cortex-M3(F103 系列)
回复

使用道具 举报

9#
ID:1173404 发表于 2026-6-15 10:55 | 只看该作者
12313131ssss 发表于 2026-6-7 22:54
Proteus 必须支持 STM32 调试 低版本 Proteus(8.6 及以下)不支持 STM32 硬件调试,仅能跑仿真,无法和 Ke ...

有道理
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表