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.接线

相关推荐
qq_3384323711 小时前
VS Code 远程 WSL 中 Claude Code 导致 Java 文件修改被自动撤回的一次排查
vscode·vibe coding·claude code
Ycocol13 小时前
AS同一个目录下的类导入导入其他类爆红无法跳转但是可以编译
android·ide·android studio
睡一觉就好了。15 小时前
vim基础操作
linux·编辑器·vim
elirlove117 小时前
打造属于自己的网页工匠台:HTML在线编辑器技术深度解析
前端·编辑器·html
Mars-xq17 小时前
vscode 开发Android
android·ide·vscode
Tairitsu_H17 小时前
告别默认Vim:Linux下轻松配置Vim开发环境
linux·编辑器·vim·配置
赛博三把手18 小时前
实操篇一:Claude Code + Token173 国内直连 Anthropic Fable 5 完整接入教程
linux·编辑器·vim
嵌入式小站18 小时前
STM32 可移植教程 01:VSCode 环境搭建 + 点亮 LED(实战篇)
vscode·stm32·嵌入式硬件
ywl47081208718 小时前
IDEA 集成 Claude Code (Beta)
java·ide·intellij-idea
Mars-xq18 小时前
VSCode 开发 Android 时,类、方法无法跳转
android·ide·vscode