用 AI 工具 Skill 搞定 STM32 寄存器开发,开发效率直接翻倍
微信:zhenglf5805
关注了解共同分享。问题或建议,请公众号留言;
[如果文章对您有帮助,欢迎点赞留言]
大家好,我是在深圳做嵌入式开发的工程师奶爸。
日常开发 STM32 总免不了写寄存器代码,最近用 TRAE 的 Skill 功能定制了一套专属开发规范今天把完整可复用的实战方法全部分享给大家。
一、Skill核心信息概览
| 项目 | 规范内容 |
|---|---|
| 技能唯一ID | stm32-register-dev-standard |
| 适配芯片 | STM32F1/F4/F7/H7/L0/L4全系列,默认优先适配STM32F103(工业主流款) |
| 核心功能 | 纯寄存器级C代码生成、外设驱动编写、编码规范强制约束、代码安全风险排查、寄存器操作合规性检查 |
| 触发规则 | 用户请求STM32寄存器开发、驱动编写、代码生成、规范检查时自动触发,无冗余加载 |
| 红线约束 | 强制禁止使用HAL库、LL库、标准外设库,仅允许纯寄存器操作 |
本文先介绍纯寄存器操作的Skill,以STM32为例,可以自行修改扩展至各种MCU。后续会介绍STM32官方开源库的Skill开发,欢迎关注留言。
二、核心文件:SKILL.md(必须全大写文件名)
以下是部分文件内容示例,内容较长不做全部展示,用markdown编写。下文中下载stm32-register-dev-standard.zip查看完整内容:
---
name: stm32-register-dev-standard
description: 用于STM32单片机纯寄存器级C代码开发、驱动编写、规范检查与风险排查,严格遵循STM32参考手册寄存器操作规范,禁止使用HAL/LL/标准库,适配STM32全系列芯片,当用户请求STM32寄存器开发、驱动编写、代码生成、规范检查时触发
---
# STM32寄存器开发规范技能
## 描述
本技能面向STM32单片机嵌入式开发场景,严格遵循ARM Cortex-M内核架构与ST官方参考手册(RM)、数据手册(DS)规范,约束AI生成纯寄存器级操作的标准C语言代码,强制统一编码规范、寄存器操作规则、注释标准、安全规范,彻底杜绝HAL/LL/标准库的使用,生成可直接编译、高可靠性、高可读性的工业级寄存器开发代码,同时支持对现有寄存器代码进行规范检查、风险排查与优化。
## 使用场景
【适用场景】
1. 用户请求生成STM32单片机的寄存器级C代码、外设驱动程序
2. 用户需要对现有STM32寄存器代码进行规范检查、bug排查、安全风险评估
3. 用户要求基于STM32寄存器实现特定功能,如GPIO、UART、SPI、I2C、TIM、ADC、EXTI等外设开发
4. 用户需要STM32寄存器开发的代码优化、移植适配、调试问题排查
5. 用户明确要求不使用HAL/LL/标准库,仅用寄存器操作开发STM32程序
【不适用场景】
1. 非STM32系列单片机的开发需求(如51、MSP430、STM8等)
2. 明确要求使用HAL/LL/标准库的开发需求
3. 硬件原理图、PCB设计、结构设计相关需求
4. 纯上位机软件、应用层软件开发需求
三、标准可导入目录结构(完整技能包)
如果需要完整的可共享、可团队复用的技能包,可下载完整技能包下载:stm32-register-dev-standard.zip
按以下目录结构创建文件夹,打包为ZIP即可直接导入TRAE:
stm32-register-dev-standard/ # 技能根文件夹
├── SKILL.md # 【必须】核心文件,上面的完整内容
├── templates/ # 【可选】常用驱动模板
│ ├── gpio_template.h
│ ├── gpio_template.c
│ ├── uart_template.h
│ ├── uart_template.c
│ ├── tim_template.h
│ └── tim_template.c
├── examples/ # 【可选】标准示例代码
│ ├── led_blink.md # LED闪烁寄存器示例
│ └── uart_send_receive.md # 串口收发寄存器示例
└── resources/ # 【可选】参考资料
└── stm32f103_reference_manual.md # 参考手册关键章节摘要
四、两种导入TRAE的详细步骤
方式一:手动创建比较繁琐
-
1. 打开TRAE,点击右上角设置 → 进入规则和技能 → 选择技能标签
-
2. 点击**+创建按钮,选择手动创建**
-
3. 名称填写
stm32-register-dev-standard,描述复制上面YAML里的description完整内容 -
4. 指令框里,复制上面SKILL.md中
---分隔线以下的所有正文内容 -
5. 选择生效范围(全局/当前项目),点击确认,技能自动生效
方式二:技能打包导入(方便快捷)
stm32-register-dev-standard.zip
-
1. 按上面的目录结构创建文件夹,核心文件SKILL.md必须放在根目录。
-
2. 将整个文件夹压缩为ZIP格式(注意:打开ZIP必须直接看到SKILL.md,不能嵌套多层文件夹)
-
3. 打开TRAE,点击右上角设置 → 进入规则和技能 → 选择技能标签
-
4. 点击**+创建按钮,选择导入技能**,上传准备好的ZIP压缩包
-
5. TRAE会自动解析技能信息,确认生效范围后点击确认,导入完成,技能自动启用
五、调用示例(直接复制就能用)
导入成功后,在TRAE聊天框输入以下指令,即可触发技能:
-
1. 基础调用:
用STM32寄存器开发规范Skill,帮我写一个STM32F103C8T6的LED闪烁代码,用PA0引脚 -
-
2. 外设驱动调用:
用STM32寄存器开发规范Skill,帮我写一个STM32F103的串口1驱动,波特率115200,带中断接收功能 -
-
3. 代码检查调用:
用STM32寄存器开发规范Skill,帮我检查下面这段STM32寄存器代码的规范问题和安全风险 -
-
4. 高级功能调用:
用STM32寄存器开发规范Skill,帮我写一个STM32F407的定时器3PWM输出代码,频率1KHz,占空比可调
人物介绍
微信号:zhenglf5850
深圳程序员一枚


往期回顾
01
02
03
夜雨聆风