vscode+platformio+arduion && 串口,wifi

1.开发环境

vscode

platformio

arduion

esp32 - s3 - n16r8(小智的一套开发板)

2.编译

3.烧录

选择板子端口

烧录程序,可以看到蓝灯闪烁

4.串口代码

串口运行时可以看到绿灯闪烁

cpp 复制代码
// 简单的串口测试程序
#include "Arduino.h"

void setup() {
  // 延迟足够长时间确保串口稳定
  delay(2000);
  Serial.begin(115200);
  delay(100);
  
  Serial.println("\n\n==========================================");
  Serial.println("ESP32-S3 N16R8 基础测试程序");
  Serial.println("==========================================");
  Serial.print("芯片型号: ");
  Serial.println(ESP.getChipModel());
  Serial.print("CPU频率: ");
  Serial.print(ESP.getCpuFreqMHz());
  Serial.println(" MHz");
  
  Serial.print("闪存大小: ");
  Serial.print(ESP.getFlashChipSize() / (1024 * 1024));
  Serial.println(" MB");
  
  Serial.print("PSRAM大小: ");
  Serial.print(ESP.getPsramSize());
  if (ESP.getPsramSize() > 0) {
    Serial.print(" 字节 (");
    Serial.print(ESP.getPsramSize() / 1024);
    Serial.println(" KB)");
  } else {
    Serial.println(" (未检测到PSRAM)");
  }
  
  Serial.print("空闲堆内存: ");
  Serial.print(ESP.getFreeHeap());
  Serial.println(" 字节");
  
  Serial.println("==========================================");
  Serial.println("如果看到这些信息,说明ESP32-S3工作正常");
  Serial.println("==========================================");
}

void loop() {
  Serial.println("程序正常运行中... 时间: " + String(millis()) + "ms");
  delay(2000);
}

5.查看串口输出

在烧录的时候一定到关闭串口,否则烧录不会成功,一定要停止监视。

6.wifi连接

cpp 复制代码
// wifi连接成功

#include "Arduino.h"
#include "WiFi.h"

const char* ssid = "wifi名字";
const char* password = "wifi密码";

void setup() {
  delay(2000);
  Serial.begin(115200);
  delay(100);
  
  Serial.println("\n\nESP32-S3 WiFi测试");
  Serial.println("==================");
  
  // 检查PSRAM
  if (ESP.getPsramSize() > 0) {
    Serial.println("PSRAM已启用");
  } else {
    Serial.println("未检测到PSRAM,可能需要检查配置");
  }
  
  // WiFi连接
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);
  
  Serial.print("连接到WiFi: ");
  Serial.println(ssid);
  
  int attempts = 0;
  while (WiFi.status() != WL_CONNECTED && attempts < 30) {
    delay(500);
    Serial.print(".");
    attempts++;
  }
  
  Serial.println();
  
  if (WiFi.status() == WL_CONNECTED) {
    Serial.println("WiFi连接成功!");
    Serial.print("IP地址: ");
    Serial.println(WiFi.localIP());
  } else {
    Serial.println("WiFi连接失败");
  }
}

void loop() {
  delay(5000);
  if (WiFi.status() == WL_CONNECTED) {
    Serial.print("WiFi已连接 | 信号强度: ");
    Serial.print(WiFi.RSSI());
    Serial.println(" dBm");
  } else {
    Serial.println("WiFi断开");
  }
}

7.接线

相关推荐
VidDown17 天前
VidDown 工具站:免费、本地优先的开发者工具箱
javascript·编辑器·音视频·视频编解码·视频
摇滚侠17 天前
IDEA 创建 Java 项目 手动整合 SSM 框架
java·ide·intellij-idea
霸道流氓气质18 天前
Trae IDE 新手入门指南
ide
VidDown18 天前
显卡处理视频技术详解:从硬解码到 NVENC,GPU 如何让视频处理起飞?
javascript·编辑器·音视频·视频编解码·视频
夜猫逐梦18 天前
【UE基础】03.蓝图与编辑器工作流
编辑器·ue·蓝图·ue编辑器
VidDown18 天前
视频帧率技术详解:从 24fps 到 120fps,帧率如何影响你的观看体验?
网络·网络协议·编辑器·音视频·视频编解码·视频
爱就是恒久忍耐18 天前
VSCode里如何比较2个branch
ide·vscode·编辑器
意法半导体STM3218 天前
【官方原创】如何为STM32CubeMX2配置Visual Studio Code配置方案
vscode·stm32·单片机·嵌入式硬件·策略模式·stm32cubemx·嵌入式开发
bloglin9999918 天前
vscode中可视化的合并分支,在“合并编辑器中解析”中“与基线进行比较”是什么意思
ide·vscode·编辑器
终将老去的穷苦程序员18 天前
IntelliJ IDEA 的安装教程
java·ide·intellij-idea