把 EMK850+ 功耗分析仪改造成 AI 可调度的自动化测量节点

项目背景

低功耗调试离不开 µA 级电流测量。英加 EMK850+ 只有 Windows 上位机,没有对外接口,功耗数据进不了脚本,批量测试、回归测量、AI 辅助优化全部做不通。

本项目独立逆向其串口协议,用 Python 实现命令行工具与 MCP/REST 服务器,把测量与供电控制变成 HTTP 接口,脚本、CI、AI 客户端可直接调度,形成采集、控制、优化闭环。

「闭源仪器协议逆向 + MCP 服务化」这套做法,可复用到任何只有上位机的台式仪器。

核心工作

  1. 串口协议逆向:原厂上位机是 .NET 程序,用 ILSpy 反编译直接拿到完整通信协议,帧结构、命令表、换算公式整理成协议文档。
  2. AI 辅助实现:定义协议规范与验收标准,驱动、CLI 与服务器代码借助 AI 工具生成,帧行为逐项与真机实测比对校验。
  3. 流式帧同步:USB CDC 流式传输不保证按包交付,解析采用逐字节流式帧同步状态机,拆包、粘包、错位下稳定出帧。
  4. MCP/REST 服务化:单进程同时提供 REST 与 MCP(Streamable HTTP)接口,覆盖测量、采样、供电控制,Claude、Cursor 通过工具发现自动接入。
  5. 断电复位唤醒:可编程电源断电重启,唤醒深度休眠后调试器断连的 MCU。

设备效果

EMK850+ 低功耗分析仪

python emk850_analyzer.py power COM19
电压: 4.202 V   电流: 6.940 uA   功耗: 29.20 uW

项目边界

GitHub 仓库:Yingjia_EMK850_low-power_analyzer_MCP · 协议文档 EMK850_PROTOCOL.md