atopile: 用代码设计电路板,像写软件一样做硬件!

1. 什么是 atopile?
atopile 是一个专为电子硬件设计打造的编程语言(.ato 文件)、编译器和完整工具链。它彻底颠覆传统“画原理图 → 手动选器件 → 布局”的流程,让硬件设计像软件开发一样:模块化复用、版本控制、自动化验证、团队协作。
传统硬件设计痛点(重复造轮子、手动选型、难以协作)在 atopile 这里被一键解决:
- 用声明式代码直接描述“需求意图”(电压、电流、容差、约束),而不是画线连器件。
- 编译器自动参数化选型(从零件库里挑最合适的电阻、电容、IC)。
- 原生集成 KiCad,一键生成/更新 PCB 布局、BOM、Gerber 文件。
- 完美支持 Git + CI/CD,像写 Python 一样迭代硬件。
一句话总结:atopile = 硬件界的 Python + 自动 BOM 选型 + KiCad 自动布局。
2. 核心功能亮点
- 可复用模块(Modules):像 npm 包一样发布/安装硬件模块,一键导入别人写好的电源、MCU、传感器模块。
- 意图捕获(Intent Capture):直接在代码里写方程、容差、断言(assertions),编译器实时检查。
- 自动零件选型:写
power: 3.3V @ 500mA 就能自动挑 LDO/电容。 - 深度验证:每次 build 都跑约束求解、电气规则检查、DRC。
- KiCad 原生集成:无需手动更新原理图,编译器直接修改
.kicad_pcb 文件。 - VS Code / Cursor 扩展:一键 build、菜单栏控制、语言服务器(自动补全、悬停提示)。
3. ato 语言快速一览(代码示例)
ato 语言语法简洁,像 Python。以下是 GitHub 示例中的真实代码片段(logic-card 项目):
module LogicCard: # 电源管理 aaa = new CoinCells3S1P aaa.power.vcc ~ ldo.power_in.vcc aaa.power.gnd ~ ldo.power_in.gnd # LDO ldo = new LDO # 自动选型 ldo.power_out.vcc = 3.3V @ 1A # MCU micro = new RP2040Kit micro.power.vcc ~ ldo.power_out.vcc
实际 VS Code 编辑界面截图(左侧文件树、右侧 .ato 代码 + 终端 build):

4. 工作原理与流程
- 写 .ato 文件
- 运行
ato build → 编译器求解约束 → 自动选零件 → 生成网表。 - KiCad 布局 → atopile 自动更新 PCB 文件(你只管走线或手动调整)。
- 输出
- CI/CD → GitHub Actions 一键验证多版本硬件。
真实硬件成品示例(ADBMS6830 电池管理板,由 atopile 生成):

物理原型照片(CellSim 多通道电池模拟器,由 atopile设计完成):

5. 安装与上手(超简单)
最推荐方式(3 分钟上手):
- 安装 VS Code + atopile 官方扩展(插件市场搜索 “atopile”)。
- 按
Ctrl+Shift+P → “atopile: Open Example”。 - 点击左下角 ato 菜单栏 的 ▶ 按钮,一键 build。
- 打开 KiCad 查看自动生成的 PCB(无需 KiCad 也能 build)。
详细文档:https://docs.atopile.io在线 Playground(浏览器零安装试用,30 分钟有效期):https://atopile.io/ 点击 “Launch playground”。

6. 实际开源项目案例
- NONOS
- DSP
- AI-Pin
- Hyperion
- CellSim
- ESPaper
总结
如果你是硬件工程师、嵌入式开发者或想把硬件设计“代码化”,atopile 绝对是 2024-2026 年最值得关注的 EDA 革新项目之一。它不是在画电路,而是在写硬件。
项目官网:https://atopile.io/GitHub仓库:https://github.com/atopile/atopile