嵌入式AI编程提示词:为什么AI写的SPI跑不通

21ic电子网 2026-09-11 10:52

把环境接好了,AI能读工程,也能自己敲编译命令。来说一说AI编程提示词。

同一句“帮我写个SPI”,有人拿到的代码烧进去就跑,有人拿到一堆寄存器乱炖,编译先报三个错。

差别常常不在模型。在你给它的硬件信息够不够。

下面拆四件事:硬件上下文写什么、任务怎么拆、约束怎么写、怎么验收。末尾留了一份能直接抄的模板。

数字都来自公开论文,出处我都标在下面,方便你自己去核。自己那点经验放在判断里,不往数字里掺。

01 同一句话,两种代码

嵌入式代码天生绑定硬件。同一颗芯片,换个封装、换个晶振、换个库版本,初始化代码就变了。纯软件里那种“写个排序,拿来就能用”的通用件,在嵌入式里几乎不存在。

AI不是不会写SPI。它是不知道你的SPI。

你没告诉它芯片型号,它就按训练数据里见得多的那颗写。没说晶振频率,默认给你72MHz外部晶振。你说了SPI1,它不知道片选接在哪个脚,也不知道从机最高能跑多少时钟。

出来的代码看着挺整齐,寄存器名字也全对。

上板不响。

代码本身挑不出错。它只是替你猜了那颗芯片,猜的是市场上最常见的一颗。你的板子要是25MHz晶振,或者干脆用内部时钟,编译照样能过,板子一声不吭。

02 先看两个公开测试

不讲感觉,摆数据。

EmbedBench是ICSE 2026的一篇论文(arXiv:2506.11003),专考大模型干嵌入式。126道题,9类元器件,3块开发平台,10个主流模型。

同一个模型DeepSeek-R1,干的活一样,给的信息从少到多,结果是这样。

嵌入式AI编程提示词:为什么AI写的SPI跑不通图1

▲ 同一个模型,信息从少给到多,通过率跟着涨(EmbedBench,arXiv:2506.11003)

自己设计电路自己写,只有50.0%,给一张正确的原理图是55.6%。检索增强和编译器反馈都接上,才到65.1%。

从50到65,涨了15个百分点,这中间模型一行没换。

另一组数据更说明问题。同一套电路设计,往树莓派Pico(MicroPython)搬,通过率能到73.8%。往ESP-IDF搬,工业上真在用的那套框架,只有29.4%。

嵌入式AI编程提示词:为什么AI写的SPI跑不通图2

▲ 同一套设计,换个平台差出44.4个百分点(EmbedBench跨平台迁移任务)

44个百分点。换个更强的模型,提升通常没这么大。而“帮我写个SPI”这句话里,芯片、时钟、引脚、从机,一个都没提。

再补一个结论。SkillsBench(arXiv:2602.12670)测了86个任务、11个领域、7308条轨迹,注入精选过的结构化技能之后,平均通过率涨16.2个百分点。

这份基准还有个结果:让模型自己生成技能,基本没有增益。它造不出自己缺的那部分程序性知识,那部分只能人来补。

关键约束挑出来就够了。手册不用整个贴进去,贴多了反而把重点稀释掉。

03 硬件上下文六件套

我一般填六项。

芯片和封装先写清,型号、内核、Flash和RAM大小,有没有硬件浮点单元。FPU这件事影响不小,决定后面能不能放心用float,也决定它给你的算法要不要配一份定点版本。接着是时钟,外部晶振频率、PLL怎么倍频、系统主频、各条总线的分频。这项最少被写,也最容易出事。

然后是引脚。哪个外设接哪几个脚,复用功能选哪个,片选由谁控制。

总线参数也别漏。模式、速率、位序、地址宽度。SPI屏写模式0还是模式3,差别是点亮和花屏。

软件栈。HAL还是LL还是直接写寄存器,库版本多少,编译器和IDE是哪个版本。同叫“HAL库”,隔几个版本函数签名就能变。

剩下的这一项是禁区。

哪些文件不能动,哪些时序不能改,哪些中断优先级早就有约定。这几条AI判断不了,它看不到你的原理图,也看不到你们团队以前为这事吵过什么。

前五项猜错了,代价通常是一堆编译错误,改回来也快。禁区这条猜错,多半要上板才发现。

这六项建议单独存成一个文件放进工程。Claude Code认CLAUDE.md,Codex认AGENTS.md,Cursor也有自己的规则文件。上一篇写过这四个模块怎么压到最短。缺哪项你自己补,我不敢说这六条对每颗片子都够用。

04 拆小任务:一次只让它干一件事

上下文给全了,任务还是可能写砸。

“帮我把SPI屏点亮”,这一句里塞了配SPI、配GPIO、写屏的初始化序列、跑通刷屏逻辑四件事。一把梭写出来,你还是得从头查起。

我一般拆成四步,一步一验收。

一上来只配SPI1,给出初始化函数,同时说明读哪个寄存器能确认配置生效。

然后往从机写一个字节,用逻辑分析仪该看到什么波形,让它写清楚。

再往后加DMA或者中断,缓冲区和数据长度怎么约,一并讲。

到这一步,才接业务层的刷屏代码。

每一步都要它说清怎么验证。

CodePromptEval这个数据集(IEEE TSE 2025,arXiv:2412.20545)收了7072条提示词,是221个任务和32种技巧的全因子组合。给函数签名、给few-shot示例,能稳定提升功能正确性。

但五种技巧全堆上去,不一定更好,还可能带进代码坏味道。

嵌入式AI编程提示词:为什么AI写的SPI跑不通图3

▲ 四步走,缺哪一步返工就从哪一步开始(自绘)

05 反直觉约束:把它默认会犯的错写成禁止项

还有些事,AI默认的写法就是错的,它自己不觉得。

arXiv:2604.07192这篇做了6轮实验,11个模型,16个任务,830多次调用。测出来的东西跟直觉不太一样。约束能不能被遵守,跟它怎么写、怎么排版关系不大,跟约束本身说什么关系最大。

常规约束,模型基本照做,满足率在99%以上。反直觉的那类掉9个百分点。更麻烦的是它还会高估自己,你问它守没守约束,它说守了。

所以这栏只能我自己填,没有现成的一套能抄。我把它拆成两类写。

一类是硬件事实,用陈述句摆在最前面。这颗片子本来就没有硬件FIFO,片选也得自己拉,硬件NSS是指望不上的。时钟树已经定死了,外设时钟要手动使能。

另一类是行为约束,用祈使句写死:中断里不放带延时的函数;初始化里不加打印,那时候串口还没配好;驱动里不动态申请内存。

还有一条我总忘,所以放在末尾。进低功耗之前,先把没跑完的外设传输处理掉。约束还要写得更具体,“注意时序”这种说法等于没写,等于什么都没约束。

这套只对裸机、或者跑在RTOS应用层的时候成立。Bootloader那类场景另说。

06 一份可以直接抄的提示词模板

这就是合起来的样子,括号里换成你自己的。

# 项目
- 芯片:STM32F103C8T6,Cortex-M3,无硬件FPU
- 时钟:外部晶振8MHz,PLL×9,SYSCLK 72MHz

# 本次任务(只做这一步)
- 只写SPI1初始化,不写屏幕逻辑

# 接线
- SPI1:PA5 SCK,PA6 MISO,PA7 MOSI
- 片选:PA4,软件控制

# 从机
- ST7789,SPI最大时钟15MHz,模式0,MSB先行

# 约束(逐条遵守)
- 时钟树按现有配置,不要改
- 片选必须软件拉低,禁止用硬件NSS
- 中断里不加延时函数
- 只改 Core/Src/spi.c 与 Core/Inc/spi.h

# 输出要求
- 给出完整函数,标注关键寄存器位的作用
- 说明怎么验证:读回哪个寄存器、预期值是多少

模板不长,麻烦的是把括号里填对,那几个参数只能你自己从手册和原理图上抄,抄错一个它就顺着错的往下写。

07 验收:AI给的代码怎么算过关

还有一个坑,是把“编译通过”当成“能用”。

有研究分析过265条真实交互记录(arXiv:2606.19644)。里面有一条可以直接用,我照着改成了自己的写法。提示词的具体性和上下文,跟能不能生成可落地的代码关系最强。

“验证线索”则是代码最终被采纳的首要预测因子。翻译成人话,让它把验证方法写出来,比你多要它一百行代码值钱。

我自己是这么过一遍的。先逐行核对寄存器,配置类的代码,值对不对,翻一遍手册就行,五分钟的事。然后盯时序敏感的那几段,上电顺序、片选时序、复位时序,这几段我不过夜,当天看,上板出问题的多半就在这几段,这类毛病在台架上还复现不了,只能盯着真板子。都过完了,才上板跑一遍。

前两步都过了也可能不响。编译通过不等于能上板,这句上篇说过,这里再说一次。

数据来源:EmbedBench(ICSE 2026,arXiv:2506.11003)、SkillsBench(arXiv:2602.12670)、CodePromptEval(IEEE TSE 2025,arXiv:2412.20545)、约束编码实验(arXiv:2604.07192)、提示词与PR产出的关联研究(arXiv:2606.19644)。这些都是公开第三方素材,不是本号实测。六件套、约束的两类写法、验收顺序和模板,是我自己的经验。封面配图由AI技术生成。


END


嵌入式AI编程提示词:为什么AI写的SPI跑不通图4


最后提一句,21ic论坛(bbs.21ic.com)正在招募原创作者,单篇文章奖励最高500元,欢迎广大网友踊跃投稿!嵌入式AI编程提示词:为什么AI写的SPI跑不通图5 

往期精选:


嵌入式AI编程提示词:为什么AI写的SPI跑不通图6
扫描二维码,关注视频号

请点下【♡】给小编加鸡腿



嵌入式AI编程提示词:为什么AI写的SPI跑不通图7

关于科技区角:国内科技展会垂直内容策划服务商,提供从论坛内容全案策划、会展市场化IP打造到精准专业观众一站式邀约服务,以产业内容吸引高质量B端人群,打通展会从议题设计、演讲嘉宾邀约、宣传预热、精准邀观到供需对接全链路。
声明:内容取材于网络,仅代表作者观点,如有内容违规问题,请联系处理。
AI 嵌入式
more
RSI传闻搅动AI圈:巨头呼吁减速背后是安全焦虑还是护城河?
不缺钱,缺人!四位CEO通过36氪发出亲笔招贤信:把AI与机器人,送进真实世界|人才留言板
刚刚,A社创始人呼吁AI圈踩刹车,奥特曼马斯克罕见力挺
倒计时9天!看Demo、上手实操,英特尔这场大会让你一站式啃完智能体、端侧AI与算力干货
微信偷偷改版!这是在为AI铺路?
央视探访无堂食外卖后厨看到店员徒手抓烤鸡;全国多所高校买商品房当学生宿舍;DeepSeek灰度测试AI语音对话;“支付宝假App”上热搜...
114美元买的平板,他花266美元让4个AI接力,重启500次才夺回控制权
OpenAI年内不上市了!奥特曼支持对手Dario呼吁:AI该踩刹车了
聊一聊:你平时拿AI都在做什么?
OpenAI最快模型GPT-5.3-Codex-Spark退役:速度让位于智能,算力格局生变
Copyright © 2025-成都区角科技有限公司
蜀ICP备2025143415号-1
  
川公网安备51015602001305号