在 Visual Studio Code 中创建和调试 Arduino 程序 - 第一部分






4.88/5 (10投票s)
如何在 Visual Studio Code 中创建和调试 Arduino 程序
引言
在本文中,我将介绍如何在 Visual Studio Code 中编写 Arduino 程序,以及如何通过单步调试、断点、查看变量等方式来调试你的程序,适用于 Arduino Uno 或 Mega。
这是关于在 Visual Studio Code 中创建和调试程序的系列文章的第一部分,共三部分。第二部分请 参见此处。
背景
Arduino 是一个非常流行的平台,可以轻松创建由微控制器控制的有趣小工具。该平台附带了一个集成开发环境 (IDE) 来编写程序 – Arduino IDE。但是,如果你有一些编程经验,你可能会发现这个 IDE 太简单且功能有限,并开始寻找替代品 – 寻找一个更像真正的 IDE 的东西。
有一些知名的替代方案,如 Eclipse 或 Atmel Studio。我个人使用 Eclipse 并且它工作良好,但我承认 Eclipse (以及 Atmel Studio) 对新用户来说学习起来相当困难。有很多窗口、选项、按钮……总之,这些 IDE 加载了许多可能令人困惑的功能。
因此,我一直在寻找一个提供真正 IDE 高级功能且易于使用的替代 IDE。我认为 Visual Studio Code (简称 VS Code) 就是这样的。
准备你的环境
我们将需要 2 个软件
下载 Arduino IDE 并安装它,或者如果你喜欢无需安装的版本,只需解压即可。
下载并安装 VS Code。
启动 VS Code,然后单击左侧活动栏中的 **Extensions** 按钮 (带按钮的条形)。
在 Search extensions 框中输入 Arduino。选择 Microsoft 的 Arduino for Visual Studio Code 扩展 (目前版本为 0.2.26)。
安装扩展。它还会安装 Microsoft 的 C/C++ 扩展 (目前版本为 0.23.1),这是必需的。
你应该在左侧的 Extensions 视图中看到这两个扩展 – 见图。
为扩展设置 Arduino 安装路径。打开 **Settings** – 单击左下角操作栏中的齿轮图标,然后从菜单中选择 **Settings**。
在 **settings** 窗口中,输入 **Arduino**。
找到 Arduino: Path 项目,然后输入你放置 Arduino IDE 的文件夹路径。例如,c:\Program Files (x86)\Arduino。
现在我们可以创建我们的第一个 Arduino 程序了。
创建你的第一个 Arduino 程序
开始之前有两点说明
注意 1:使用 VS Code 的方式与标准 IDE 有所不同。你主要通过键入并从所谓的命令面板中选择命令来执行任务。这是一个小文本框,当你按下 Ctrl+Shift+P 组合键或仅按下 F1 键时会打开。
此外,许多选项是通过编辑文本文件 (.json 文件) 来设置的,而不是通过单击图形用户界面 (GUI) 中的按钮来设置。
而且,没有“项目”可供处理,而是你处理文件夹。但你可以将一个文件夹视为一个项目。
这种不同的理念起初可能令人恼火,但请尝试一下。也许你会像我一样喜欢上它。与不断变化的 GUI 相比,这种方法有一些优势。
注意 2:我将描述从头开始创建 Arduino 程序的步骤。如果你想使用示例程序,Arduino 示例在 VS Code 中可用,只需打开命令面板 (Ctrl+Shift+P 或 F1 键) 然后键入/选择 Arduino: Examples。
创建你的 Arduino 程序
为你的程序创建一个文件夹。使用你最喜欢的文件夹管理器 (如 Windows Explorer 或 Total Commander)。
在本教程中,我将假设你在 Documents/Arduino/vscode 文件夹下创建你的文件夹 (项目)。
因此,创建一个名为 test 的文件夹 – 你现在应该有 Documents/Arduino/vscode/test。
启动 VS Code 并打开 test 文件夹。你可以使用主窗口中的链接,或者转到 **File > Open Folder**…
接下来,打开命令面板 (Ctrl+Shift+P 或 F1,这是我最后一次重复了) 并键入 Arduino。
选择 Arduino: Initialize 命令。
VS Code 会告诉你你的文件夹中没有 .ino 文件,并会提供为你创建 app.ino 文件。只需按 Enter 确认。
现在你会看到一个 Arduino 板列表。
如果你有 Arduino Uno,请 **选择 Arduino/Genuino Uno**。
如果你使用 Arduino Mega 或 Nano,它也应该可以工作,但你可能需要调整一些步骤。
你也可以在之后选择/更改板子,只需单击 VS Code 右下角蓝色状态栏中的板子类型。
现在检查位于 VS Code 左侧的 Explorer 视图 (在侧边栏中)。应该会有一个 test 文件夹,其中包含一个 .vscode 子文件夹和一个 app.ino 文件。
在编辑器中,你会看到 app.ino 文件已打开。void setup()
行被下划线,并显示“Include errors detected...”。
要解决此问题,请展开 Explorer 视图中的 .vscode 文件夹。单击 c_cpp_properties.json – 这将在编辑器中打开该文件。
将以下两行添加到 includePath
部分 (但要替换你的 Arduino 路径)
"c:\\\\Program Files (x86)\\\\Arduino\\\\hardware\\\\tools\\\\avr\\\\avr\\\\include\\\\**",
"c:\\\\Program Files (x86)\\\\Arduino\\\\hardware\\\\tools\\\\avr\\\\lib\\\\gcc\\\\avr\\\\5.4.0\\\\include\\\\**"
你需要为上一行末尾添加逗号 (,
) – 见图。
打开 arduino.json 文件并添加此行
"output": ".\\build",
这将通过重用先前编译的文件来加快构建速度,并让我们找到调试所需的输出二进制文件。
打开 app.ino 并粘贴以下代码 – 这就是那个经典的闪烁程序。
void setup()
{
pinMode(13, OUTPUT);
}
void loop()
{
digitalWrite(13, HIGH);
delay(100);
digitalWrite(13, LOW);
delay(500);
}
提示:尝试键入 digitalW
…,看看 VS Code 如何建议完成名称。你还可以右键单击函数名 (例如,尝试 delay
),然后选择 **Go to definition** 来查看函数是如何编写的。
构建程序 – 或者,如果你使用 Arduino 的术语,则“验证”它。为此,你可以按 Ctrl + Alt + R,或者单击顶部操作栏中的 **Verify** 按钮,或者打开命令面板并选择 Arduino: Verify。
你应该在 VS Code 底部的 Output 视图中看到结果 – 见下图。
现在将你的 Arduino 板连接到你的电脑。
在 VS Code 中,单击底部的蓝色栏中的 <select serial port>。
选择你的板子连接的端口 – 例如,Windows 上的 COM5。
上传程序 – 使用 **Upload** 按钮或 **Command Palette > Arduino: Upload**。
如果一切顺利,你的 Arduino 现在正在闪烁,我们可以继续进行有趣的部分 – 调试你的程序。这将在 第二部分 中介绍。
历史
- 2019-06-26: 初始版本