1 零基础Arduino入门

1.1 认识Arduino

什么是Arduino?

Arduino是一个便捷灵活、方便上手的开源软硬件平台,包含硬件(各种型号的Arduino板)和软件(Arduino IDE开发环境)。

开源,Arduino的硬件原理图、电路图、IDE软件、核心库文件都是开源的,你可以任意修改原始设计及相应代码。

简单容易,不需要太多的单片机基础、编程基础,简单学习后,就可以快速的进行开发。

关于Arduino与STM32、ESP32有什么关系?Arduino编程与传统单片机、嵌入式编程有区别吗?

esp32wroom32E电路图_python

Arduino 官网

Arduino - 首页

1.2 板卡介绍

什么是Arduino开发板?

Arduino是开源的软管硬件平台,所以加入Arduino生态的芯片公司、开发板公司也非常多,所以我们在学习过程中可以选择的开发板种类也非常多。

esp32wroom32E电路图_单片机_02

课程推荐板卡

推荐选用乐鑫的ESP32

ESP32支持基于ESP-IDF的C、C++编程,也支持Arduino编程

博主也是在淘宝上选择了ESP32 CP-2102的开发板来进行学习

esp32wroom32E电路图_esp32wroom32E电路图_03

esp32wroom32E电路图_单片机_04

官网&文档

ESP32 Wi-Fi & 蓝牙 SoC | 乐鑫科技 (espressif.com.cn)

esp32-wroom-32e_esp32-wroom-32ue_datasheet_cn.pdf (espressif.com.cn)

不同Arduino开发板的外观对比

esp32wroom32E电路图_嵌入式硬件_05

Arduino开发板的性能对比

esp32wroom32E电路图_嵌入式硬件_06

课程需要准备的硬件

1、一款ESP32开发板

2、一根USB数据线(TypeC接口)

3、一台电脑(Windows、Linux 或 macOS)

4、一个套件包(电阻、LED、按键、舵机、电位器、跳线、步进电机)

仿真平台(最好还是买个板卡来学习)

推荐:Wokwi - 在线 ESP32、STM32、Arduino 模拟器

一般:Tinkercad - 使用在线 CAD 创建三维数字设计

1.3 开发环境搭建

在哪里写代码?环境搭建-IDE

ArduinoIDE

Software | Arduino

esp32wroom32E电路图_python_07

推荐:VSCode+PlatformIO

esp32wroom32E电路图_python_08

Arduino环境搭建

搭建教程见文档

安装过程相关问题都可以参考文档末尾

1、Arduino软件环境搭建 - 飞书云文档 (feishu.cn)

博主这边已经搭建好vscode-python的环境了,主要是记录安装PlatformIO插件的过程

配置python环境教程可以看文档,也可以看这个

用VScode配置Python开发环境_vscode如何下载pygame-CSDN博客

PlatformIO插件安装

安装也可参考官方文档

适用于 VSCode 的 PlatformIO IDE — PlatformIO 最新文档

安装 - - — Arduino ESP32 最新文档 (espressif.com)

安装建议

在线安装建议使用代理或手机热点安装,当然,手机热点然后开vpn效果更好。

如果没有条件,建议使用离线安装的方式。

在线安装

点击左侧侧边栏最后一个拓展按钮,搜索框输入PlatformIO,如图第一个就是

esp32wroom32E电路图_嵌入式硬件_09

安装之后点一下侧边栏的小蚂蚁图标,就会显示正在安装,如右下角所示,挂机场差不多半分钟左右安装成功

安装成功之后如右图所示,点击reload now重启vscode即可

esp32wroom32E电路图_单片机_10

esp32wroom32E电路图_学习_11

安装完成之后如图所示

esp32wroom32E电路图_python_12

离线安装

博主这边是挂了机场很快安装完成了,如果没有掌握的方法的话可以看文档学习如何离线安装

软件配置

禁止扩展的自动更新,因为platformIO 等VScode的扩展库都在线存储在国外服务器上,如果自动更新的时候网络由于某种原因被强掉,会造成VScode内的插件临时更是失败。所以,一般开发的时候先自动跟新扩展给禁用,以免应更新而造成软件不能用而影响项目开发。

esp32wroom32E电路图_esp32wroom32E电路图_13

ESP32平台SDK在线安装

点击小蚂蚁图标或底部的小房子就可以打开PIO home主页,在PIO Home主页侧面的菜单栏点击Platforms选项

在Platforms在上方选项卡选择【Embedded】,搜索框输入Espressif

esp32wroom32E电路图_esp32wroom32E电路图_14

打开页面点击【Install】安装。稍等片刻,就可以看到右侧的安装成功提示,也可以在pio home顶部Installed 菜单中看到我们安装的库,如果长时间后提示安装失败,也可以试下离线安装。

注意这里的版本要选择和教程一样或接近的版本哦,否则后面可能会有一些API不兼容!!!!

博主这里使用5.2.0版本的,也可以使用5.0.0版本,这两个小版本是兼容的。

esp32wroom32E电路图_单片机_15

esp32wroom32E电路图_esp32wroom32E电路图_16

至此,环境已经配置好了,可以跳至工程创建章节。

ESP32平台SDK离线安装

见文档

工程创建

1、打开PIO Home主页,点击VSCode的左下角图标

esp32wroom32E电路图_嵌入式硬件_17

2、新建工程

Project->Create New Project->填写项目名称+选择芯片平台(可输入esp32 dev m补全)->点击Finish

esp32wroom32E电路图_esp32wroom32E电路图_18

等候一段时间后创建完成

创建完成后进行编译、下载及运行

打开src/main.cpp文件,如果文件如图中一样这不必修改,也可选择添加测试代码

#include <Arduino.h>

void setup() {
  // put your setup code here, to run once:
}

void loop() {
  // put your main code here, to run repeatedly:
}

点击左下角√ 编译源码,出现SUCCESS代表编译成功

esp32wroom32E电路图_python_19

到这里,环境就搭建好啦,下一步就是搭建工程,学习代码基础了。