
AI 写完以后你还敢重新生成工程吗用 AI 做 STM32你可能遇到过这种尴尬功能能编译了却发现 AI 改了 CubeMX 生成的初始化代码。想调整时钟配置按下“生成”怕覆盖修改不生成又难以维护。做 FPGA 也类似可以评估官方 IPAI 却从头编写复杂逻辑代码越多板级资源、时钟和复位关系反而越难理清。在遇到不少这些问题之后我做了一个开源项目embedded-project-workflow。这是一套包含了嵌入式与 FPGA 协作 Skill也就是 AI 按需读取的工作指南附带部分执行脚本和示例指导它理解工程、选择工具并交回可维护的成果 ——https://github.com/YuWYY/embedded-project-workflow。你可以先配置工程也可以让 AI 帮你设计AI 接着实现功能而你仍能用熟悉的工具继续维护。AI 帮忙之后我还能学到东西吗我身边有些初学者朋友用 AI 完成需求后不清楚改动落在初始化还是业务函数里。功能有了下一次从哪里改却不容易判断。我希望把图形配置保留为理解工程的入口。暂时看不懂复杂函数也可以打开 STM32CubeMX查看时钟、引脚和串口波特率再把配置与代码对应起来。工具生成的结构也为 AI 提供接入位置让学习和实现一起推进。这个 Skill能帮你做哪些事它让 AI 先读工程再判断该配置、复用或编写什么。你给出目标和边界它继续完成约定内的工作。你的需求AI 的工作你得到什么不知道从哪里配置给出建议与核对方法有依据的起步步骤已配好任务、页面或接口沿用结构接入业务功能能继续维护的工程基础模块反复出错比较官方 IP、成熟模块与自写方案更合适的实现选择自己改过图形配置读取最新设计调整相关用户代码人工修改有接续位置项目要分多轮完成保留成功版本和下一步换轮次也有据可查图 1、你表达设计AI 接续实现工程继续由原工具维护。STM32不会配置可以带着你做刚入门先说用途不用先填满参数表只知道“想采集传感器数据定期显示结果”时可以把开发板型号、已有工程和目标交给 AI让它结合资料确认需求梳理采样、通信和显示资源。具体到 CubeMX它应当说明配置项在哪里、建议设什么、为什么这样设、生成后怎么核对。你可以自己操作也可以在工具与入口可用时授权 AI 代配置与生成再接入采样处理等业务。初学者得到的不只是代码还有“在哪里改、为什么改、下一步怎么检查”的路径。入口和必要回调留在工具支持的保留区主体逻辑放进独立用户文件。先完成“采集、处理、串口观察”的小功能链再逐步加入显示或任务调度。已有工程保留你的配置继续完成新功能已有 FreeRTOS 任务、队列和职责时可以要求 AI“通过现有队列传递样本在已有任务里加入统计不增加任务。”它应沿用结构完成通信和同步。任务栈、队列容量及静态或动态分配也属于设计输入。AI 要结合实际内核和适配层核对不能仅凭变量加了 static就宣称用了静态内存分配。图 2、任务与队列留在 CubeMX保留直观的维护入口。参数也需要分工时钟源、引脚、DMA 映射等基础错误应修回配置源再生成PWM 频率、死区、控制与滤波参数等常调工作值可在用户层集中维护。调整时还要检查采样与控制时序生成后核对差异和接入关系。TouchGFX你设计页面AI 接通功能你继续在 Designer 中拖控件、调整布局和导航AI 读取设计在用户 View、Presenter、Model 层接入数值、按钮行为和业务状态。例如图中的 Reset 按钮通过 Interaction1 调用 function1。你的要求是只清空统计窗口保留暂停状态、计数进度和跨页状态。AI 将行为接入用户代码再检查按钮是否真正清空了统计生成的基类继续由工具维护。图 3、交互仍可在 Designer 查看方便调整页面和功能入口。移动控件、改名或增加交互后AI 先读新配置再调整引用。布局继续直观编辑业务持续迭代。Vivado该用 IP 的地方用 IP该写 RTL 的地方写 RTL面对时钟生成、异步 FIFO、跨时钟域和存储Skill 引导 AI 优先评估厂商 IP、XPM 或成熟模块简单计数器、状态机和胶合逻辑通常直接写 RTL。以学习或移植为目标时也可以自研。先选适合的实现来源再投入配置和编程。板级配置需核对开发板型号、硬件版本、原理图和参考工程。相同芯片不代表 DDR、时钟和底板连接相同参考设计也要比较差异。你可以预设接口、时钟域与资源约束也可以委托 AI 设计。在工具可用和授权范围内它通过 Vivado Tcl 等入口配置 IP、维护连接、生成产物并实现用户 RTL。对于 Zynq/MPSoC指南覆盖 PS/PL 分工、BD 地址与连接以及 XSA、SDT 和 Vitis 的交接关系。你保存了新地址AI 应据此更新相关产物。A53 平台、BSP 与 Arm 应用构建目前仍待验证具体边界见 SoC 交接说明。图 4、PS、互连、IP 与用户 RTL 同图呈现便于接手时核对连接。项目做得越久越需要保留人的接手位置长期项目里常会说不清哪个版本能用、配置刚改过哪里、上次验证对应哪份源码。Skill 要求 AI 记录配置入口、成功版本、验证范围和未完成事项。下一轮先核对磁盘工程与最新差异避免把旧聊天当成当前设计或拿旧构建结果证明新代码。出现回归先比较本次增量连续修改却没有新线索就重新考虑方案。你能更容易回答完成到哪一步、哪里可以继续改、出了问题从哪里回看。同时考量配置、实现和维护我最想保留三个位置你决定设计的位置、工具维护配置的位置、AI 实现业务的位置。约定清楚工程更容易接手。目标和边界明确后AI 继续配置、编程与验证需要改变约定时说明原因、最小改动和影响。小功能沿用可靠结构已委托设计时也可主动提出并实施新结构。你控制关键设计AI 自主完成约定内的工作。图 5原创示意三种工具保留各自的设计入口让配置、实现和后续维护接得上。从手上的一个小任务开始试用目前可下载 v0.5.0-beta.1 预览版。本机需有对应开发工具AI 需能读取工程代配置、生成或验证还需可用的执行入口。下载并解压完整仓库准备工程副本和已有资料。将下面的仓库绝对路径替换为解压后的实际路径让 AI 读取 Skill说明目标和边界。从一个任务、页面或模块开始检查接入与维护是否符合预期。请读取 仓库绝对路径/skills/embedded-project-workflow/SKILL.md。 目标在现有任务与队列中加入滚动统计。 保留任务职责和分配策略不新增任务不连接硬件。 允许在副本内配置、生成、编程和离线验证。 请自行判断分工范围内直接推进说明实际完成到哪一步。欢迎拿一个具体任务试试你希望保留什么AI 应该替你完成什么也欢迎带着工具版本和实际问题到 GitHub 反馈我会按真实需求改进并逐步扩展对类似配置工具的支持。