用途
Board Support 是某个开发板资料库中面向 AI 的权威“确切开发板”参考与查询入口。它把用户指定的目标解析为唯一的开发板档案,抽取能力与风险,并把结果交给下游技能使用。它不替代 board-selection——后者负责根据项目需求选择或更换开发板。
主要能力
- 具名开发板查询、能力问题、档案检索、确切引脚风险检查、来源置信度问题、框架兼容性检查都从这里开始。
- 解析用户提供的板名,与索引中的 id、name、aliases 进行规范化匹配,要求唯一命中。营销系列、克隆板、载板,或带有不同后缀的模块都不算精确匹配。
- 读取匹配档案的 identity_contract,识别其 profile_type(exact-board 或 bounded-variant-family),并在给出依赖边界的建议前确认所需变体与字段。
- 输出紧凑身份信息、逻辑电平、内存、总线、ADC/PWM/定时器能力、保留或高风险引脚、框架/工具链边界、来源置信度与未决缺口。
- 将 MCU 电气限制与开发板稳压器、连接器、总 GPIO、射频峰值或外部负载限制区分开来。
- 对框架请求记录确切的开发板包/内核、版本或提交、FQBN/PlatformIO 环境、库版本与上传工具。
- 对引脚请求,向 pin-assignment 技能传递结构化交接信息(board_id、profile、解析状态、确切身份、框架内核、逻辑电平、保留或高风险引脚、可用能力、未决缺口)。
使用方式
需先阅读共享的 Arduino 技能契约、开发板清单索引与 AI 参考 schema,再读取匹配的 Markdown 档案及其事实到来源的映射。只有在用户同时需要 GPIO 分配或声明时才加载 pin-assignment;当请求包含接线、烧录、供电、测量、恢复或多会话工作时,先加载 embedded-project-loop。
在仓库检出环境下,可在解读档案前使用确定性解析器:
python3 ../../scripts/resolve_board_profile.py \
--query "<board name>" --purpose lookup
引脚或电气建议路径可使用 --purpose pin 或 --purpose electrical,并通过重复的 --identity FIELD=VALUE 传入已确认值。解析器返回非零状态是停止条件,不是猜测的许可。
响应以一个紧凑的解析信封(resolution envelope)开始,使用 YAML 记录 resolution_status、board_id、profile、matched_alias、identity、framework_core、evidence 等字段,便于其他技能无需解析散文即可消费该查询结果。当匹配到有界系列但缺少必需变体、版本、模块或框架字段时使用 needs-disambiguation;当身份充分但所请求事实在档案中没有来源支撑时使用 profile-gap。
适用场景
- 用户询问开发板参考、引脚定义、GPIO 限制或开发板能力。
- 在引脚分配前需要安全交接。
- 需要检查来源置信度或框架兼容性。
限制与边界
- 不用于从需求中选择开发板,该决策属于 board-selection。
- 引脚分配与原始声明格式属于 pin-assignment。
- 索引是紧凑检索面,Markdown 档案才是事实、注意事项与缺口的详细事实来源;不得编造档案或其引用主来源中不存在的字段。
- 若多个档案匹配,须停止并询问修订号、模块后缀、开发板照片、产品标识或框架目标以消歧。
- 若无档案匹配,应声明“未被索引开发板集支持”,并提供建立新档案所需的最少主来源,不得从相似开发板映射引脚。
- 来源查询与 schema 校验只是文档证据,不证明接线、供电、烧录、运行时行为、系统行为或现场部署;在下游需要物理操作时,physical_status 保持 unverified。
关于是否支持从需求选板、克隆板与载板处理、输出契约的具体分节内容,资料仅提供了如上规则与提示,未提供更细的操作步骤细节。