使用电子模拟器 Wokwi 运行 ESP32 示例(Arduino IDE、VSCode、ESP32C3)

文章目录

Wokwi 简介

Wokwi 是一款在线电子模拟器。您可以使用它来模拟 Arduino、ESP32、STM32 以及许多其他流行的主板、部件和传感器。

安装客户端(Mac/Linux)

bash 复制代码
curl -L https://wokwi.com/ci/install.sh | sh
  • 添加环境变量
bash 复制代码
export PATH="/usr/local/bin:$PATH"

创建 Token


Arduino IDE

  • 选择 ESP32 Dev Module
  • demo.ino
c 复制代码
#define LED 2

void setup() {
  pinMode(LED, OUTPUT);
}

void loop() {
  digitalWrite(LED, HIGH);
  delay(500);
  digitalWrite(LED, LOW);
  delay(500);
}
  • 编译后的文件所在目录
bash 复制代码
cd /private/var/folders/y3/m5gygl0x29qb6gqzwbzhnbl40000gn/T/arduino/sketches/7BF1D604324680D884686063EF3F4C75/
  • 创建模拟器


  • 生成 diagram.jsonwokwi.toml 文件
  • 修改 diagram.json 文件
json 复制代码
{
  "version": 1,
  "author": "Uri Shaked",
  "editor": "wokwi",
  "parts": [
    { "type": "wokwi-esp32-devkit-v1", "id": "esp", "top": 0, "left": 0, "attrs": {} },
    {
      "type": "wokwi-led",
      "id": "led1",
      "top": -3.33,
      "left": 153.33,
      "attrs": { "color": "red" }
    },
    { "type": "wokwi-resistor", "id": "r1", "top": 64, "left": 149.33, "rotate": 90, "attrs": {} }
  ],
  "connections": [
    [ "esp:TX0", "$serialMonitor:RX", "", [] ],
    [ "esp:RX0", "$serialMonitor:TX", "", [] ],
    [ "esp:GND.1", "led1:C", "black", [ "h0" ] ],
    [ "led1:A", "r1:1", "green", [ "v0" ] ],
    [ "r1:2", "esp:D2", "green", [ "h0", "v38" ] ]
  ]
}

VSCode 配置

安装 wokwi 插件

打开编译后目录

注: 选中 diagram.json 文件就会显示模拟器。

ESP32C3 示例

Arduino IDE

  • demo.ino
c 复制代码
#include <Arduino.h>

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600); // 初始化串口通信
}

void loop() {
  // put your main code here, to run repeatedly:
  Serial.println("Hello World!"); // 输出 "Hello World"
  delay(1000); // 等待 1 秒
}

注: 进入编译后的可执行文件目录

bash 复制代码
cd /private/var/folders/y3/m5gygl0x29qb6gqzwbzhnbl40000gn/T/arduino/sketches/7BF1D604324680D884686063EF3F4C75/

创建模拟器

bash 复制代码
wokwi-cli init

运行模拟器

bash 复制代码
wokwi-cli .
相关推荐
cmpxr_8 小时前
【C】局部变量和全局变量及同名情况
c语言·开发语言
网域小星球10 小时前
C 语言从 0 入门(十七)|结构体指针 + 动态内存 + 文件综合实战
c语言·开发语言·文件操作·结构体指针·动态内存·综合项目
ipod74110 小时前
电子电路的元器件
单片机·嵌入式硬件
清风66666610 小时前
基于单片机的脉搏与呼吸监测报警设备设计与实现
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
foundbug99911 小时前
STM32 内部温度传感器测量程序(标准库函数版)
stm32·单片机·嵌入式硬件·算法
天狼IoT11 小时前
STM32-keil+CubeMX快速开发:新建项目
stm32·单片机·嵌入式硬件
lcj251111 小时前
【C语言】数据在内存中的存储
c语言·数据结构
gihigo199812 小时前
量程自动切换数字电压表Proteus仿真+程序
单片机·嵌入式硬件·proteus
木燚垚12 小时前
基于STM32的智能衣柜系统设计与实现——温湿度调控+烟雾报警+远程监控
stm32·单片机·嵌入式硬件
特立独行的猫a12 小时前
OpenHarmony平台移植 gifsicle:C/C++ 三方库适配实践(Lycium / tpc_c_cplusplus)
c语言·c++·harmonyos·openharmony·三方库适配·lycium