Ubuntu中ESP32使用记录

发布于:2025-06-19 ⋅ 阅读:(14) ⋅ 点赞:(0)

1、给位于拓展坞上的esp32板子改串口名。

移除拓展坞上其余设备,使用ls /dev/ttyUSB*命令可以查看到此串口名为ttyUSB0。

1)插入 ESP32 开发板,运行以下命令获取设备属性:

udevadm info --name=/dev/ttyUSB0 --attribute-walk

找到 USB 转串口芯片 的标识信息(关键字段):

ATTRS{idVendor}=="1a86"    # CH340 的 Vendor ID
ATTRS{idProduct}=="7523"   # CH340 的 Product ID

2)创建 udev 规则文件

路径:/etc/udev/rules.d下创建文件99-esp32.rules

touch 99-esp32.rules//创建文件
sudo gedit 99-esp32.rules //sudo gedit打开只读文件编辑

文件内容:

SUBSYSTEM=="tty", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", SYMLINK+="esp32"

保存退出后执行命令:

sudo udevadm control --reload-rules
sudo udevadm trigger
sudo chmod 666 /dev/esp32 

拔出拓展坞,重新插上,使用ls /dev/esp32命令查看是否有串口设备。

3)更新 PlatformIO 配置

[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino
upload_port = /dev/esp32  # 使用自定义名称
monitor_speed = 115200

2、安装记录

1、安装VScode

2、在VScode插件中安装Platformio,点击插件,选择其中的Platforms,然后选择Project,创建新项目,板子如图选,架构默认Arduino,取消勾,自定义路径。

3、修改platformio.ini文件

[env:esp32dev]
platform = espressif32
board = esp32dev 
framework = arduino
upload_port = /dev/esp32   //ESP32板子串口
monitor_speed = 115200     //设置波特率

4、编写测试main.cpp文件:

#include <Arduino.h>

// 定义 LED 引脚(ESP32 内置 LED 通常接 GPIO2)
#define LED_PIN 2

void setup() {
  // 初始化 LED 引脚为输出模式
  pinMode(LED_PIN, OUTPUT);
  // 初始化串口通信(用于调试)
  Serial.begin(115200);
  Serial.println("ESP32 LED Blink Started!");
}

void loop() {
  digitalWrite(LED_PIN, HIGH);  // 点亮 LED
  Serial.println("LED ON");
  delay(1000);                  // 延时 1 秒

  digitalWrite(LED_PIN, LOW);   // 熄灭 LED
  Serial.println("LED OFF");
  delay(1000);                  // 延时 1 秒
}

5、运行文件,下载文件,此时先点击下图右下角C++旁,选择PlatformiO,然后点击左下角的勾进行编译,向右箭头是下载。切勿点击run code,报错:

empCodeRunnerFile.cpp:1:10: fatal error: Arduino.h: 没有那个文件或目录

1 | #include <Arduino.h>

| ^~~~~~~~~~~

compilation terminated.


网站公告

今日签到

点亮在社区的每一天
去签到