Sublime配置Arduino单片机开发_Sublime编写硬件代码详细教程

落杰姑娘_4173

落杰姑娘_4173

2026-04-16

210人浏览

原创

sublime text需通过手动配置arduino-cli实现arduino开发:必须独立安装arduino-cli并写死绝对路径,配置fqbn与串口,补充include路径解决跳转失效,弃用已停更的stino,推荐platformio替代。

sublime配置arduino单片机开发_sublime编写硬件代码详细教程

Sublime Text 不能直接编译或上传 Arduino 代码,它连 Arduino.h 都不认识——所有“编译成功”提示,都是靠调用外部 arduino-cli 实现的。想让它真正干活,你得亲手配好命令路径、板型标识、串口设备,漏一个环节,Build failed 就立刻报给你看。

arduino-cli 必须独立安装,别碰 Arduino IDE 自带的 CLI

Arduino IDE 安装包里确实有 arduino-cli,但它藏在深层目录(如 Contents/Java/bin/arduino-cli),PATH 不自动加,版本难更新,Sublime 启动时根本找不到。官方推荐方式是单独下载二进制:

  • 去 GitHub releases 下最新版(Windows 选 .exe,macOS 选 arm64 或 amd64,Linux 选对应架构)
  • 解压后放固定位置:macOS/Linux 推荐 /usr/local/bin/arduino-cli,Windows 推荐 C:\arduino-cli\arduino-cli.exe
  • 终端运行 arduino-cli version 确认能输出版本号;再跑 arduino-cli core update-index && arduino-cli core install arduino:avr 装好 Uno/Nano 所需核心

Build System 配置里必须写死 arduino-cli 路径

Sublime 启动时不会加载你的 ~/.zshrc 或 PATH,哪怕终端里 which arduino-cli 有结果,Build 仍会报 command not found。解决方法只有一条:不依赖 PATH,直接填绝对路径。

新建 Build System(Tools → Build System → New Build System),内容如下:

{
  "cmd": ["/usr/local/bin/arduino-cli", "compile", "--fqbn", "arduino:avr:uno", "$file_path"],
  "working_dir": "$file_path",
  "selector": "source.arduino",
  "variants": [
    {
      "name": "Upload",
      "cmd": ["/usr/local/bin/arduino-cli", "upload", "-p", "/dev/cu.usbmodem14201", "--fqbn", "arduino:avr:uno", "$file_path"]
    }
  ]
}

注意三点:

  • /dev/cu.usbmodem14201 要换成你真实的串口名(macOS 用 ls /dev/cu.* 查,Windows 是 COM3 类)
  • arduino:avr:uno 是完整 FQBN,不能简写为 uno;查可用板型用 arduino-cli board listall
  • selector 设为 source.arduino,确保只对 .ino 文件生效,避免误触发

头文件跳转失效?因为 Sublime 根本没索引 Arduino 核心库

Ctrl+Click Wire.h 提示 “No definition found”,不是插件问题,是 Sublime 默认不扫描 arduino-cli 安装的硬件包路径。它不会自动把 ~/.arduino15/packages/arduino/hardware/avr/1.8.6/cores/arduino 加进 include 路径。

蜜蜂剪辑
蜜蜂剪辑

蜜蜂剪辑是一款AI视频创作工具,AI 去水印工具,支持图片及 30+ 主流短视频平台。

下载

两个可行方案:

  • 轻量做法:在 Build System 配置里加 "include_dirs": ["~/.arduino15/packages/arduino/hardware/avr/1.8.6/cores/arduino", "~/.arduino15/packages/arduino/hardware/avr/1.8.6/variants/standard"](路径需按实际版本号调整)
  • 补全增强:装 EasyClangComplete 插件,再执行 arduino-cli compile --export-binaries --verbose,从日志里找所有 -I 开头的路径,填进 ecc_config.json

别用 Stino,PlatformIO 才是 Sublime 下唯一持续维护的替代方案

Stino 已停更多年,硬编码依赖 Arduino IDE 1.x 的 Java 架构和 boards.txt 文件格式,而 arduino-cli 2.x+ 彻底改用 JSON 和扁平化平台目录,Stino 连板型列表都解析不了,常见报错:AttributeError: 'NoneType' object has no attribute 'get'、Failed to parse boards list。

如果你需要板型管理、库自动安装、串口监视器一体化支持,直接上 PlatformIO:

  • 通过 Package Control 安装 PlatformIO IDE
  • 首次启动会自动下载 platformio-core 和 atmelavr 平台,耗时但只需一次
  • 新建项目时选 Arduino 框架 + Arduino Uno,自动生成 platformio.ini,后续编译(Ctrl+B)、上传(Ctrl+Alt+U)、串口监视(Ctrl+Alt+I)全部就绪

真正容易被忽略的是:Sublime 的 Build System 不会帮你管串口权限、驱动兼容性或复位时机——上传失败时,先手动用终端跑 arduino-cli upload -p /dev/cu.xxx --fqbn arduino:avr:uno ./Blink 看原始错误,比盯着 Sublime 底部面板猜要快得多。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

sublime

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
单片机编程软件有哪些
单片机编程软件有哪些

单片机常用的编程软件有:1、Keil编程开发环境;2、IAR;3、STC-ISP;4、STM32CubeIDE;5、Altium Designer。更多关于单片机编程软件的内容,大家可以访问本专题下面的文章。

2023.10.12

5922

6

单片机编程软件推荐
单片机编程软件推荐

常见的单片机编程软件可分为三类:1、专有软件,如keil uvision和iar embedded workbench;2、开源软件,如arduino ide和eclipse with cdt;3、跨平台软件,如visual studio code和atom。想了解更多单片机的相关内容,可以阅读本专题下面的文章。

2024.05.20

2687

7

plc和单片机的区别
plc和单片机的区别

plc和单片机的区别:1、体积和结构不同:PLC体型通常较大,带有模块化结构,由多个组件组成,而单片机体型更小,通常由一个单芯片组成;2、存储容量不同:PLC通常具有较大的存储容量,用于存储程序和数据,单片机存储容量通常较小,但足以满足其应用需求;3、可编程性不同等等。想了解更多plc的相关内容,可以阅读本专题下面的文章。

2024.05.30

7723

16

树莓派和单片机的区别
树莓派和单片机的区别

树莓派和单片机的主要区别在于功能和应用。树莓派基于linux操作系统,拥有强大的计算能力和丰富的软件生态系统,适用于物联网、小型服务器、教育和爱好者项目等场景。单片机基于简单的微控制器,计算能力有限,主要用于嵌入式系统和控制特定设备,如工业控制、家用电器和医疗设备。想了解更多树莓派和单片机的相关内容,可以阅读本专题下面的文章。

2024.06.03

6957

13

dsp和单片机的区别
dsp和单片机的区别

dsp专注于数字信号处理,具有更高的处理能力、专门架构、指令集和存储器结构,但功耗也更高。单片机更适合一般任务,具有较低的处理能力、更通用的架构和指令集,以及较小的存储器结构和功耗。想了解更多dsp和单片机的相关内容,可以阅读本专题下面的文章。

2024.06.04

5758

11

LLVM自定义Pass怎么写
LLVM自定义Pass怎么写

本专题聚焦LLVM自定义Pass开发,整理Pass类结构、run()方法、PreservedAnalyses、CMake构建、插件注册、-load-pass-plugin加载和测试用例编写流程。

2026.09.30

0

10

LLVM RISC-V参数配置教程
LLVM RISC-V参数配置教程

本专题介绍LLVM对RISC-V基础ISA和扩展的支持方式,涵盖RV32、RV64、标准扩展、实验性扩展、厂商扩展、-menable-experimental-extensions和版本差异。

2026.09.30

0

14

LLVM IR中间表示入门指南
LLVM IR中间表示入门指南

本专题整理LLVM IR的核心概念,包括中间表示作用、模块结构、函数、基本块、SSA形式、类型系统和常见语法,帮助新手理解LLVM编译流程中的关键层。

2026.09.30

0

12

PDF转图片方法
PDF转图片方法

需要把 PDF 页面用于上传、预览、分享或图片归档时,PDF 转图片方法专题整理 JPG/PNG 格式选择、逐页导出、清晰度设置、批量下载和结果检查等流程,帮助用户稳定完成 PDF 图片化处理。

2026.09.30

0

26

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程