mcpField
F
flash-keil

flash-keil

github.com/leokemp223開発1.0k568 回インストール10 週間前に更新
リポジトリ

flash-keil について

Keil MDKプロジェクトのファームウェアをターゲットボードに書き込むスキルです。プロジェクトで設定されたデバッガーとFlashアルゴリズムを使い、OpenOCDの追加インストールは不要です。

主な機能

  1. 01Keil UV4.exeの検出
  2. 02設定済みデバッガーの識別
  3. 03プロジェクトのFlash設定で書き込み
  4. 04状態とログ証拠を含む結果レポート

活用シーン

  1. 01Keilプロジェクトのファームウェアをボードに書き込み
  2. 02書き込みや接続の失敗を調査
  3. 03書き込み後にシリアル監視やデバッグへ引き継ぎ

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/leokemp223/embed-ai-tool --skill flash-keil

インストール後、Claude Code で/flash-keilを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
references/
usage.md
scripts/
keil_flasher.py

詳細

プロジェクトの README より

Keil MDK 烧录

适用场景

  • Project Profile 中标明 build_system: keil 或工作区中存在 .uvprojx / .uvproj 文件。
  • 用户希望将编译产物烧录到目标板,且工程已在 Keil 中配置好调试器(ST-Link、J-Link、CMSIS-DAP 等)。
  • 不需要额外安装 OpenOCD,直接使用 Keil MDK 内置的 Flash Download 功能。

必要输入

  • .uvprojx / .uvproj 工程文件路径(或从 Project Profile 获取)。
  • 可选的构建目标名称和 UV4.exe 路径。

自动探测

  • 脚本启动即自动复用工程根目录 .em_skill.json 中上次成功的 profile 作为默认参数(显式参数优先,无需先手动传 --resume);--resume 仅用于断言缓存必须存在,无缓存则非零退出。无缓存或用户明确要求重新探测时,脚本自动回退到正常扫描。
  • 复用 build-keil 的 UV4.exe 探测逻辑(配置文件 → 环境变量 → 常见路径 → PATH)。
  • 解析工程 XML 中的 <DriverSelection> 识别调试器类型(ST-Link、J-Link、CMSIS-DAP、ULINK)。
  • 若未指定目标,默认使用工程中的第一个 Target。

执行步骤

  1. 先阅读 references/usage.md,确认本次操作。
  2. 对于常见场景,直接一次调用完成探测+烧录:
    python scripts/keil_flasher.py --detect --flash --project <工程文件> --target <目标名>
    
  3. 读取脚本输出的烧录结果报告,关注成功/失败状态、调试器类型和日志证据。
  4. 将烧录结果写回 Project Profile,推荐下一步 skill。

失败分流

  • environment-missing:Keil MDK 未安装或 UV4.exe 不可用。
  • connection-failure:调试器连接失败(USB 未连接、驱动问题、目标板未上电)。
  • project-config-error:工程文件中的 Flash 配置无效或目标名不存在。

平台说明

  • Keil MDK 烧录仅在 Windows 上支持。
  • 烧录使用工程中已配置的调试器和 Flash 算法,无需额外配置。
  • 烧录日志可能包含 GBK 编码字符,脚本自动处理多种编码。

输出约定

脚本执行完成后,必须将以下关键信息提取并呈现给用户:

  • 烧录状态(成功/失败)
  • 工程文件和目标名
  • 芯片型号(如 STM32F103RC)
  • 调试器类型(如 ST-Link、J-Link)
  • 烧录固件路径和大小(如 Demo02.axf, 519.6 KB)
  • 烧录完成时间
  • 若失败:失败分类和日志证据

示例输出格式:

烧录成功 ✅
  工程: Demo02.uvprojx → 目标: Demo02
  芯片: STM32F103RC | 调试器: ST-Link
  固件: Demo02.axf (519.6 KB)
  状态: Erase Done → Programming Done → Verify OK → Application running
  • 成功后推荐 serial-monitor(查看串口输出)或 debug-gdb-openocd(在线调试)。
  • 失败时输出失败分类和日志证据,帮助用户定位问题。

交接关系

  • 从 build-keil 接收编译成功的工程信息。
  • 烧录成功后交给 serial-monitor(查看串口输出)或 debug-gdb-openocd(在线调试)。

コメント