Sublime怎么配置Arduino开发环境?Sublime编写单片机程序教程

夏明吖_5963

夏明吖_5963

2026-05-07

856人浏览

原创

sublime text 不能直接编译或烧录 arduino 代码,因其仅为编辑器,需通过配置 build system 调用 arduino-cli 实现编译上传;stino 插件已停更、不兼容新版工具链,推荐使用 arduino-cli + 自定义 build system 方案。

sublime怎么配置arduino开发环境?sublime编写单片机程序教程

Sublime Text 本身不能编译或烧录 Arduino 代码,它只是编辑器;真正干活的是 arduino-cli,Sublime 只负责调用它——配置对了就能一键编译上传,配错了就卡在 command not found: arduino-cli 或 Serial was not declared in this scope。

为什么别碰 Stino 插件

Stino 已停更多年,依赖已废弃的 Arduino IDE 1.x API,遇到新版 arduino-cli 或 Arduino IDE 2.x 就直接报错:AttributeError: 'NoneType' object has no attribute 'get'、Failed to parse boards.txt。它还会偷偷覆盖你的 arduino-cli 配置,导致串口识别失败。你手动改好串口,它下次启动又给你清空。

  • 它要求你必须装完整版 Arduino IDE,并硬编码路径(如 "arduino_app_path": "/Applications/Arduino.app/Contents/Java"),但新版 IDE 结构已变,路径失效
  • 板型列表加载失败是常态,Board Manager 点开一片空白
  • 上传时经常报 No serial port found,因为它根本不会读取 arduino-cli board list 的真实结果

必须用 arduino-cli + 自定义 Build System

这是目前唯一稳定、可复现、不依赖 GUI 的方式:把 arduino-cli 当纯命令行工具,Sublime 只做触发器和输出展示器。

  • 先确认 arduino-cli 装对了:arduino-cli version 要能返回 0.39+(别用 pip install arduino-cli,那是旧版)
  • 运行 arduino-cli config init,再执行 arduino-cli core update-index && arduino-cli core install arduino:avr
  • 在 Sublime 中新建 Build System(Tools → Build System → New Build System),粘贴以下内容并保存为 ArduinoCLI.sublime-build:
{
  "cmd": ["arduino-cli", "compile", "--fqbn", "arduino:avr:uno", "$file_path"],
  "working_dir": "$file_path",
  "selector": "source.arduino",
  "variants": [
    {
      "name": "Upload",
      "cmd": ["arduino-cli", "upload", "-p", "/dev/cu.usbmodem14201", "--fqbn", "arduino:avr:uno", "$file_path"]
    }
  ]
}

注意:/dev/cu.usbmodem14201 要换成你当前真实的串口(macOS 运行 ls /dev/cu.* 查,Windows 是 COM3,Linux 是 /dev/ttyACM0);arduino:avr:uno 必须写全 FQBN,uno 单独写会失败。

Booltool
Booltool

Booltool是一款集合图片修复、抠图、增强和视频编辑能力的在线 AI 创作工具。

下载

头文件跳转和语法支持怎么补

Sublime 默认不认识 Arduino.h,Ctrl+Click 跳不到定义,也没自动补全。这不是插件问题,是路径没告诉编辑器。

  • 打开 Preferences → Settings – User,加一行:"index_files": true(启用索引)
  • 在项目根目录(即含 .ino 文件的文件夹)里,手动创建 .sublime-project,填入 include 路径(以 macOS 为例):
{
  "folders": [
    {
      "path": "."
    }
  ],
  "settings": {
    "additional_search_paths": {
      "cpp": [
        "/Users/yourname/Library/Arduino15/packages/arduino/hardware/avr/1.8.6/cores/arduino",
        "/Users/yourname/Library/Arduino15/packages/arduino/hardware/avr/1.8.6/variants/standard"
      ]
    }
  }
}

路径要按你本地 arduino-cli config get board_manager.additional_urls 和实际安装位置调整。不配这个,digitalWrite 永远标黄,跳转永远失败。

最常被忽略的一点:每次换 USB 线或插到不同电脑,串口名必变,-p 参数就得手动改一次;FQBN 写错一个字符(比如 arduino:avr:un0 少个 o),编译直接静默失败,连错误提示都不给——它只在终端里输出一行 Failed to compile,而 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

6242

6

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

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

2024.05.20

2807

7

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

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

2024.05.30

8123

16

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

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

2024.06.03

7337

13

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

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

2024.06.04

6018

11

FrankenPHP集成Laravel详细教程
FrankenPHP集成Laravel详细教程

本专题提供FrankenPHP集成Laravel的详细配置指南,全面解析运行原理、开发环境搭建、Caddyfile配置、Octane工作模式、数据库连接、队列任务、定时任务和生产环境优化,解决部署过程中常见的报错与兼容性问题。

2026.10.08

0

20

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

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

2026.09.30

120

10

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

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

2026.09.30

100

14

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

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

2026.09.30

80

12

热门下载

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

精品课程

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