Arduino舒适的开发环境搭建:vscode+PlatformIO

一、前言

Arduino自带的IDE用在小的工程时还可以应付,但是面对大型工程时,就比较鸡肋了。本着想愉快的编写Arduinio的代码,让我们开始“折腾”吧~

开发环境:

  • win10
  • vscode + PlatformIO插件
  • Arduino 官方的IDE 1.8.16
  • 手头有一个Arduino UNO板卡

二、开始

首先下载、安装vscode。然后安装platformio插件,如下图:

image-20211007173650230

这个插件在使用IDE新建工程时,有些bug,就是特别慢,网上说是需要从github上下载一些东西,所以就很慢,而国内在使用github时有时候就是挺慢的。不过还是想用这么香的东西,肿么办呢?且听我慢慢道来。

使用IDE方式新建helloworld工程:

image-20211007174311073

首先点击如图所示的,更新一下pio core,下面是官方的介绍(官方文档链接),小伙伴记得仔细看官方文档呦。

image-20211007174451940

然后点击下面的New Project。

image-20211007174714097

image-20211007174912757

这里在选择工程路径时,有时加载会有些慢。然后点击底部的Finish,之后会加载一段时间,这个时间真是很奇怪,快时只需要几秒钟,慢时一个小时也搞不定。慢时我后面会讲如何应对。

image-20211007175216973

之后窗口中会出现两个相同的文件夹,需要右击任意删除一个(点击Remove folder from workspace)。之后save as一个workspace。

image-20211007175724408

处理之后一定要确保左侧的工作空间窗口中像上图这样,即一个workspace下面只有一个helloworld4的工作目录。如果是像下面这样嵌套的路径结构或者其他的结构,后面在编写源文件时,可能会出现头文件引用找不到的问题,即例如右侧B处的Serial下面有个红色波浪线,提示找不到该玩意儿在哪里。。。

image-20211007180030141

而这点是vscode中c/c++插件的一个bug(详情参见此链接),只要想办法绕过此bug即可。

image-20211007180741703

当然若实在是头文件引用错误的话,可以暴力点,关闭所有的错误提示,从此再无红色波浪线(设置看此链接)。

编写源代码:

下面是让LED灯闪烁,并发送数据到串口。

main.cpp:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <Arduino.h>
#define onboard 13

void setup()
{
// put your setup code here, to run once:
pinMode(onboard, OUTPUT);
Serial.begin(9600);
}

void loop()
{
// put your main code here, to run repeatedly:
digitalWrite(onboard, LOW);
delay(1000);
digitalWrite(onboard, HIGH);
delay(1000);
Serial.println("Hello World!");
}

对了,arduino的代码其实就是C++代码,当然可以分成很多个子.cpp,.h来编写代码,参考链接1链接2

编译,烧录:

image-20211007181612585

上图中A是编译,B是烧录,C是打开串口工具。

image-20211007181950115 image-20211007182127853

下面是串口中的数据:

image-20211007182330671

搞定!

若通过IDE方式来创建工程,很慢的话,请接着往下看

首先看下这个链接

可以通过CLI的方式来创建工程,用vscode打开一个空文件夹,然后在terminal中敲入 pio project init --board uno,然后会在vscode中释放一堆一样的文件夹结构(这个过程会快一些吧),然后打开这个platformio工程,此时看下platformio.ini文件中是否正确,如下所示。

image-20211007183715444

现在新建并编写自己的源文件即可。

最后:

点赞