当前位置: 首页 > news >正文

Ubuntu中ESP32使用记录

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 2void setup() {// 初始化 LED 引脚为输出模式pinMode(LED_PIN, OUTPUT);// 初始化串口通信(用于调试)Serial.begin(115200);Serial.println("ESP32 LED Blink Started!");
}void loop() {digitalWrite(LED_PIN, HIGH);  // 点亮 LEDSerial.println("LED ON");delay(1000);                  // 延时 1 秒digitalWrite(LED_PIN, LOW);   // 熄灭 LEDSerial.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.

相关文章:

  • 电阻篇---常见作用
  • LeetCode第 454 场周赛题解
  • STM32 开发 - STM32CubeMX 下载芯片支持包、创建 HAL 库工程
  • React学习001-创建 React 应用
  • React条件渲染之逻辑与和逻辑或详解
  • React 中除了react-router还有哪些路由方案
  • Zustand:小而美的React状态管理库详解
  • React 动态路由的使用和实现原理
  • 【Qt】Qt 基础
  • Kafka源码P2-生产者缓冲区
  • 软考 系统架构设计师系列知识点之杂项集萃(89)
  • [NLP]课程期末知识点总结
  • SAP-增删改查
  • 分布式数据库中间件-Sharding-JDBC
  • Some chunks are larger than 500 KiB after minification. Consider
  • 2025CVPR最佳论文系列
  • 机器学习实验报告4-Logistic 回归算法
  • Java + Spring Boot 后端防抖实现方案
  • Apache Iceberg与Hive集成:分区表篇
  • 鸿蒙智行5月全系交付新车破4.4万辆,销量再创新高
  • 网站的c4d动画是怎么做的/谷歌商店paypal官网下载
  • WordPress更改角色插件/网站推广和优化系统
  • 南海做网站公司/兰州seo
  • 上海做网站的公司多少钱/百度网盘人工客服电话多少
  • 做兽药网站用什么图片好/搜索优化
  • 集团网站建设方案书/市场营销公司排名