前言¶
在 DeepSeek Harness(DSH)里做 8051 / STC 相关开发时,常见做法是聊天里描述需求,再切到 STC-ISP、串口助手、Keil 和各类小工具之间手动操作。流程分散,智能体也难以在同一宿主里完成「体检 → 试烧 → 真烧 → 读选项」这类连贯步骤。dsh-mcu51(xsxll22/dsh-mcu51-plugin)把 STC UART ISP、串口调试、硬件选项、镜像缓冲、芯片目录以及可选 Keil 编译等能力打包成 12 个聊天工具,面向 Windows x64 的独立插件包,并自带隔离 Python 运行时,不依赖系统 Python 或官方 STC-ISP / PZ-ISP。
下面按定位、工具范围、安装与典型用法说明;版本与限制以仓库 README 与 Release 为准。当前为 0.3.0-alpha.3 实验测试版。
这是什么¶
- 名称:dsh-mcu51(GitHub:
XSXLL22/dsh-mcu51-plugin) - 维护者:XSXLL22
- 分类:DSH 客户端插件
- 平台:Windows x64;
package.json中engines.dsh为>=0.2.1-rc.2 <0.2.2-0,README 写明需 DSH 0.2.1-rc.2 / 0.2.1 系列兼容宿主,未声明支持尚未验证的 0.2.2 系列 - 解决的问题:在 DSH 对话中调用工具完成 8051 侧烧录、串口、选项、离线资料与辅助计算,Release 含隔离 CPython 与依赖,插件执行不依赖开发工作区、官方 ISP、系统 Python 或安装期网络脚本
README 说明 CT107D / IAP15F2K61S2 / BSL 7.2.5S 已完成原 gs12 烧录、冷启动与用户按键验收;719 条芯片目录为离线资料,不能理解为 719 种型号均可烧录,细节见仓库 VALIDATION.md。
核心功能:12 个工具¶
| 工具 | 功能 | 已验证范围(README 摘要) |
|---|---|---|
mcu_doctor |
随包运行时、完整性、串口、板档案和可选 Keil 体检 | 枚举/隔离运行/哈希检查;体检通过不等于烧录通过 |
mcu_build |
已有 Keil C51 工程编译和 HEX 解析 | 使用用户安装并授权的 Keil;不分发编译器 |
mcu_flash |
HEX、冻结代码镜像或受约束 memoryApplication 烧录 | F449/7.2.5S 原 gs12 公开工具路径实机通过;其它型号不作同等承诺 |
mcu_chipinfo |
型号、BSL、频率、原始 MSR 和结构化硬件选项 | F449 实机 16 字段查询;读取不校准或擦写 |
mcu_options |
schema/read/plan/prepare/apply | 15 字段离线计划;分频 256→128→256 冷启动持久化实测 |
mcu_catalog |
719 条官方型号记录、主/备用 magic、容量事实 | 18 型号有手册地址布局,其余未知;不会新增下载协议支持 |
mcu_image |
HEX/BIN 双逻辑缓冲、偏移合并、导出、擦写预览和 prepare | 离线镜像;F449 固定组合案例已实测,数据保留未知 |
mcu_serial |
文本/HEX、时间戳、编码、串口帧/流控、预算、取消和 dryRun | 基本遥测实测;新帧配置主要封闭模拟 |
mcu_calc |
波特率、定时器、延时、DAC、超声波计算 | 离线;须选对主频、Timer 和 1T/12T 模式 |
mcu_glyph |
文本/图片取模、扫描/位序、C 数组和 PNG | 文本用已安装字体或用户指定字体,不分发 Microsoft 字体 |
mcu_tone |
简谱转频率、时长、C 数组 | 离线转换 |
mcu_project |
本机工程登记与查询 | 存储在用户数据目录 |
官方 Cordis 与 dsh-tools 由 DSH 宿主提供;完整包还包含 pyserial、stcgal、Pillow 等,无需 pip 安装。
安装与启用¶
环境:Windows x64、已被 Windows 识别的串口驱动、兼容的 DSH 宿主。请安装完整 Release 包——源码仓库不保存运行时二进制,GitHub 自动生成的 Source code ZIP 不能直接使用。
- 从 v0.3.0-alpha.3 Release 下载完整
.tgz或.zip。 - 用 DSH 插件管理安装
.tgz,或安装 ZIP 解压后的插件根目录。 - 命令行管理时可执行(安装命令以 README 原文为准):
dsh plugin --profile <你的配置名> add https://github.com/XSXLL22/dsh-mcu51-plugin/releases/download/v0.3.0-alpha.3/dsh-mcu51-0.3.0-alpha.3-win32-x64.tgz
Desktop 用户请通过应用自带的插件管理器安装,避免装到另一个 web profile。若宿主提示重启,按正常流程重启后检查版本、12 个工具及 mcu_doctor 结果。安装成功提示不能证明当前进程已加载新代码;不要手改 generation 或 app.asar。
插件以当前 DSH 进程权限运行;安装前可在 GitHub 查看源码与 MIT 许可证及 THIRD_PARTY_NOTICES.md。
典型用法¶
README 给出的起步顺序如下。
- 调用
mcu_doctor检查随包运行时和实际串口,按当前接线选择端口。 - 对已有 HEX 先调用
mcu_flash并设置dryRun: true,核对型号、频率、字节数和 SHA256。 - 确认固件与目标后执行真实烧录,再按板载下载键或冷启动 MCU。端口被插件占用时不要另开官方软件下载。
- 查看阶段确认、进程关闭和错误回执;需要时单独冷启动读取状态,再核对板上功能。
参数要点(README 原文):
expectedUid:可选的已知 7 字节 UID(14 个十六进制字符),用于 F449/7.2.5S/内部 IRC 的有界擦除应答接收;不能防止先擦错目标,不符时停止后续编程。dryRun不核验实际芯片身份;应用 ID 绑定代码/选项意图,不能代替对实际目标和固件的确认。- 硬件选项
apply使用完整代码重刷和重新校准,不是无损单独写选项;verify: true明确拒绝;实验性clockMode: preserve尚未实机通过。
配置与运行时¶
- 数据目录默认
~/.dsh-mcu51,可通过dataDir或环境变量DSH_MCU51_DATA指定。 - 可选配置:
defaultPort、defaultMcu、flashWaitSeconds、keilPath;端口不默认采用开发机 COM9。 - 运行时低于 Windows Medium 完整性时会报告
RUNTIME_LOW_INTEGRITY;请将完整包解压到普通用户应用目录再检查。 - 串口操作使用同用户跨进程 OS 锁;取消会等待子进程关闭,失败保留部分状态,不自动重试擦写。
适用场景与注意¶
适合:在 Windows x64 上使用 DSH 做 STC/8051 开发、希望在同一宿主内串联体检、试烧、烧录、读选项、串口与离线计算的开发者。
注意:
- 仅 Windows x64;alpha 版能力边界见工具表与
VALIDATION.md。 - 共享 IAP 与代码共用 Flash;恢复代码不等于恢复未备份数据;主机 ISP 独立 Flash/EEPROM 读回等仍未支持。
- 社区目录 SkillHub 插件页 为独立站点,与 DeepSeek / 幻方无官方从属关系;生态理念是「一切皆插件」,本文不将其描述为官方应用商店条目。
结尾¶
dsh-mcu51 把 8051 开发里常用的 ISP、串口、选项、镜像与辅助工具收进 DSH 的 12 个聊天工具,Release 自带运行时,减少在宿主与外部 ISP 之间来回切换。使用前用 mcu_doctor 与 dryRun 烧录核对环境与镜像,再按 README 流程实机操作。
- 目录页:https://www.skillhub.cn/plugins/XSXLL22/dsh-mcu51-plugin
- 仓库与文档:https://github.com/XSXLL22/dsh-mcu51-plugin