mcpField
C
chip-specs

chip-specs

github.com/chipctx开发044 次安装34 周前更新
代码仓库

关于 chip-specs

chip-specs 是面向嵌入式开发的 MCU 规格查询技能,通过 ChipCtx MCP 服务获取芯片参数、引脚定义、TRM 寄存器和编程指南。它先识别芯片并取得 chipId,再按当前任务查询相关信息。

主要功能

  1. 01识别芯片型号并取得 chipId
  2. 02查询芯片参数与电气规格
  3. 03检索引脚、封装与复用功能
  4. 04查询 TRM 寄存器和字段
  5. 05获取编程指南与代码示例

适用场景

  1. 01查找目标 MCU 的频率、Flash 或 RAM 参数
  2. 02为外设设计核对引脚和复用功能
  3. 03编写底层代码时查询寄存器定义或初始化步骤

MCP 相关

此技能要求连接 ChipCtx MCP 服务,端点为 https://mcp.chipctx.com。它调用芯片识别、规格、硬件、TRM 和编程指南工具,先通过 chip_identify 获取 chipId。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/chipctx/skills --skill chip-specs

安装后在 Claude Code 中输入/chip-specs确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

AGENTS.md
CLAUDE.md
metadata.json
README.md
rules/
_sections.md
api-chip-hardware.md
api-chip-identify.md
api-chip-programming.md
api-chip-specs.md
api-chip-trm.md
flow-chip-identify.md
flow-context-inject.md

详细介绍

ChipCtx MCU 规格

面向嵌入式开发的权威 MCU 芯片规格查询。 通过 ChipCtx MCP Server 实时获取芯片参数、引脚定义、TRM 寄存器和编程指南。

MCP Server 设置(首次查询前必须检查)

此 Skill 需要 ChipCtx MCP Server。在查询任何芯片之前,必须验证 MCP 工具是否可用。

步骤 1:检查工具是否可用

检查当前会话中是否有 chip_identify MCP 工具。如果有,请跳至下方的标准查询流程。

步骤 2:自动安装(如果工具不可用)

如果 chip_identify 不可用,请使用以下方法之一安装 MCP 服务:

选项 A — Claude Code 插件(推荐,可自动配置 MCP): 告知用户运行以下命令并重启:

/plugin marketplace add chipctx/skills
/plugin install chipctx@chipctx-marketplace

选项 B — 手动设置 MCP:

claude mcp add --transport http chipctx --scope user https://mcp.chipctx.com
步骤 3:告知用户重启

运行安装命令后,告知用户:

ChipCtx MCP server 已配置。请重启 Claude Code(输入 /quit 后重新启动),以便 MCP 工具可用。然后重试查询。

重要: 安装后不要尝试调用 chip_identify 或任何其他 ChipCtx MCP 工具——在重启会话之前,这些工具都不可用。不要改用 WebFetch 或其他变通方法。用户必须先重启。

其他 Agent

请参阅 README,了解在 Cursor 和其他平台上配置 MCP 的方法。

适用情形

检测到以下任一情形时,启用此 Skill:

1. 明确提及——用户提到芯片型号

  • 具体型号:STM32F407VGT6、ESP32-S3-WROOM-1、nRF52840
  • 系列名称: “STM32F4 系列”“ESP32”“nRF52”
  • 芯片搜索或比较:“哪款芯片支持 BLE 和 1MB 闪存?”

2. 代码上下文——芯片专用头文件或 API

  • 头文件:stm32f4xx.h、esp_system.h、nrf.h、nrf52840.h
  • HAL/SDK 调用:HAL_GPIO_Init()、esp_wifi_init()、nrf_gpio_cfg_output()
  • 芯片专用寄存器或内存地址引用

3. 项目配置——构建系统文件

  • STM32CubeMX .ioc 文件
  • 带有 board = ... 的 platformio.ini
  • 带有 MCU 定义(-DSTM32F407xx)的 Makefile/CMakeLists.txt
  • ESP-IDF sdkconfig、Zephyr prj.conf

4. 主题相关——硬件讨论

  • 引脚分配、外设配置、寄存器操作
  • GPIO、UART、SPI、I2C、ADC、DMA、Timer 相关主题
  • 数据手册、TRM 或硬件设计参考

MCP 接口速查

MCP Server 端点: https://mcp.chipctx.com(Streamable HTTP)

用户意图MCP 工具输入输出
查找/识别芯片型号chip_identifyquery (string)包含 id、model、vendor、series、matchScore 的芯片列表
芯片参数与规格chip_specschipId, category?核心参数、电气规格、外设列表
引脚定义与封装chip_hardwarechipId, query?带 AF 映射的引脚表、封装信息
TRM 寄存器与模块chip_trmchipId, section?TRM 章节、寄存器/字段定义
编程指南与代码chip_programming_guidechipId, topic初始化步骤、代码示例、注意事项

关键原则: chipId 是所有查询的桥梁。始终先调用 chip_identify 获取 chipId,然后在后续所有工具调用中使用它。

意图路由矩阵
用户查询中的关键词调用工具优先级
型号、系列、查找、比较、识别chip_identify始终首先调用
参数、规格、频率、闪存、RAM、特性chip_specs基本信息
引脚、GPIO、封装、引脚排列、AFchip_hardware硬件设计
寄存器、TRM、模块、地址、位字段chip_trm深入技术信息
代码、初始化、配置、编程、示例、HALchip_programming_guide编程

标准查询流程

每次与芯片相关的查询都遵循此流程:

Step 0: Verify chip_identify tool is available (see MCP Server Setup above)
        If NOT available -> auto-install and ask user to restart. STOP here.
Step 1: Extract chip model keywords from user input or project context
Step 2: chip_identify(query) -> validate model, get chipId
Step 3: Check matchScore -> confirm unique match or ask user to select
Step 4: Route to appropriate tool based on user intent
Step 5: Format and present results, generate code if requested

重要: 会话中的首次芯片查询必须执行步骤 0。如果缺少 MCP 工具,请勿继续操作——安装工具并请求重启。切勿跳过步骤 2。所有其他工具都需要 chip_identify 返回的 chipId。

硬件感知识别

芯片识别流程支持根据项目上下文自动检测:

自动检测来源:

  • C/C++ 头文件包含:#include "stm32f4xx.h" -> STM32F4 系列
  • Platform IO 配置:board = esp32-s3-devkitc-1 -> ESP32-S3
  • CMake 定义:-DNRF52840_XXAA -> nRF52840
  • STM32CubeMX .ioc 文件:项目芯片配置

matchScore 阈值:

  • = 0.9:高置信度,直接继续

  • 0.7-0.9:中等置信度,请用户确认
  • < 0.7:低置信度,向用户展示候选项供其选择

多候选项处理: 匹配到多个芯片时,以编号列表展示型号、厂商和描述,并请用户选择。切勿默默选择低置信度的匹配项。

详细流程和错误处理请参阅 rules/flow-chip-identify.md。

上下文注入策略

识别芯片后,逐步注入规格数据:

第 1 层:始终注入(识别后)
  • 芯片型号、厂商、系列
  • CPU 内核(例如 ARM Cortex-M4)、最高频率
  • Flash 和 RAM 容量、工作电压
第 2 层:按需注入(讨论外设时)
  • 外设规格(UART 数量、SPI 特性等)
  • 特定外设的引脚定义和复用功能
  • 封装信息(引脚数量、尺寸)
第 3 层:深度注入(编写底层代码时)
  • TRM 寄存器定义(名称、地址、位字段、访问类型)
  • 包含初始化序列和代码示例的编程指南
  • HAL 层和寄存器层实现
上下文管理
  • 避免溢出: 请勿一次性加载所有芯片数据。只加载当前任务所需的数据。
  • 优先考虑相关性: 讨论 UART 时,只加载 UART 数据,而不是所有外设的数据。
  • 切换芯片: 用户切换到其他芯片时,彻底清除旧上下文并加载新芯片数据。切勿混用不同芯片的数据。

详细注入流程请参阅 rules/flow-context-inject.md。

支持的芯片系列

厂商系列示例型号
STMicroelectronicsSTM32F0/F1/F2/F3/F4/F7/H7/L0/L1/L4/G0/G4/U5/WB/WLSTM32F407VGT6
EspressifESP32/ESP32-S2/S3/C3/C6/H2ESP32-S3-WROOM-1
Nordic SemiconductornRF52810/832/833/840nRF52840

规则类别

详细规则按渐进式加载方式组织在 rules/ 中:

文件影响描述
rules/flow-chip-identify.mdHIGH芯片识别触发条件、5 步流程、matchScore 处理、错误恢复
rules/flow-context-inject.mdHIGH3 层注入策略、上下文窗口管理、芯片切换协议
rules/api-chip-identify.mdHIGHchip_identify 接口:模糊匹配、别名识别、响应格式
rules/api-chip-trm.mdHIGHchip_trm 接口:分节筛选、Register/RegisterField 数据格式
rules/api-chip-specs.mdMEDIUMchip_specs 接口:4 类查询、带限值的电气规格
rules/api-chip-hardware.mdHIGHchip_hardware 接口:引脚/功能筛选、AF 映射、封装信息
rules/api-chip-programming.mdMEDIUMchip_programming_guide:SDK/HAL 代码、初始化序列、双重实现

章节索引: 加载顺序和策略请参阅 rules/_sections.md。

完整编译文档

对于偏好使用包含所有规则的单一文件的平台,请参阅 AGENTS.md——它是此 Skill 中所有规则文件的编译版本。

评论

支持 Markdown