📶 برد ESP32 (ESP32 DevKit) (ESP32 DevKit)
| اسم انگلیسی | ESP32 DevKit |
|---|---|
| در ووکوی (Wokwi) | board-esp32-devkit-c-v4 |
| دسته | 🧠 بردهای میکروکنترلر |
| در شبیهساز فارسی | مود آردوینو · جزو اشتراک Plus |
برد ESP32 DevKit (ESP32 Development Board) یک میکروکنترلر دوهستهای ۲۴۰ مگاهرتزی با وایفای و بلوتوث داخلی است که با USB و رگولاتور روی یک برد آماده نشسته. همان کد آردوینو را میفهمد، ولی با منطق ۳٫۳ ولت، مبدل آنالوگ دوازدهبیتی و PWM روی تقریباً هر پایه. برای اینترنت اشیا، صفحهی وب کنترل LED، ایستگاه هواشناسی و هر پروژهای که باید به شبکه وصل شود، انتخاب اول است.
ESP32 در ووکوی (Wokwi)
برد رایج ESP32 در ووکوی شناسهی board-esp32-devkit-c-v4 را دارد. چیدمان و برچسب پایهها روی این برد ممکن است با برد سیپایهای که خریدهای فرق کند، پس ملاک همیشه شمارهی GPIO است، نه جای پایه روی برد. یک شروع ساده در diagram.json: برد، یک LED با مقاومت و یک پتانسیومتر، بدون سیم.
{
"version": 1,
"parts": [
{ "type": "board-esp32-devkit-c-v4", "id": "esp", "top": 0, "left": 0, "attrs": {} },
{ "type": "wokwi-resistor", "id": "r1", "top": 40, "left": 160, "attrs": { "value": "220" } },
{ "type": "wokwi-led", "id": "led1", "top": -30, "left": 230, "attrs": { "color": "red" } },
{ "type": "wokwi-potentiometer", "id": "pot1", "top": -40, "left": -140, "attrs": {} }
],
"connections": []
}
سیمها را در ویرایشگر با کلیک روی پایهها بکش؛ ووکوی هر سیم را خودش به بخش connections اضافه میکند:
| پایهی قطعه | پایهی ESP32 |
|---|---|
| LED، آند (از راه مقاومت ۲۲۰ اهم) | GPIO18 |
| LED، کاتد | GND |
| پتانسیومتر، پایهی وسط (SIG) | GPIO34 |
| پتانسیومتر، دو سر (VCC و GND) | 3V3 و GND |
برای قدمبهقدم کامل، اولین پروژهی ESP32 در شبیهساز را ببین.
خلاصهی پین اوت ESP32
| دسته | GPIO | قانون |
|---|---|---|
| امن برای هر کاری | 4، 13، 16 تا 19، 21 تا 23، 25 تا 27، 32، 33 | انتخاب اول برای LED، دکمه و ماژول |
| فقط ورودی | 34، 35، 36 (VP)، 39 (VN) | خروجی و پولآپ داخلی ندارند؛ عالی برای سنسور آنالوگ |
| Strapping | 0، 2، 5، 12، 15 | هنگام روشن شدن مهماند؛ دکمه و ماژول را به 12 نزن |
| حافظهی فلش | 6 تا 11 | هرگز استفاده نکن |
| ADC1 | 32 تا 39 | با وایفای روشن هم آنالوگ میخواند |
| ADC2 | 0، 2، 4، 12 تا 15، 25 تا 27 | با وایفای روشن آنالوگ نمیخواند |
| I2C پیشفرض | 21 (SDA)، 22 (SCL) | OLED، LCD I2C و ساعت RTC |
| SPI پیشفرض | 23، 19، 18، 5 | MOSI، MISO، SCK، SS |
| DAC | 25، 26 | خروجی آنالوگ واقعی |
دلیل هر ردیف و جدول پایهبهپایهی برد سیپایه را در پین اوت ESP32 به زبان ساده نوشتهایم. یک قانون را همیشه یادت باشد: هیچ پایهای ۵ ولت را تحمل نمیکند.
کد نمونه
// ESP32: blink speed set by a potentiometer on GPIO34 (ADC1)
const int LED_PIN = 18;
const int POT_PIN = 34; // input-only pin, fine for analog
void setup() {
Serial.begin(115200);
pinMode(LED_PIN, OUTPUT);
}
void loop() {
int raw = analogRead(POT_PIN); // 0..4095 on the ESP32
int wait = map(raw, 0, 4095, 50, 1000);
Serial.print("pot: ");
Serial.print(raw);
Serial.print(" wait ms: ");
Serial.println(wait);
digitalWrite(LED_PIN, HIGH);
delay(wait);
digitalWrite(LED_PIN, LOW);
delay(wait);
}
ESP32 در تینکرکد فارسی جزو اشتراک پلاس است؛ مثالهای آمادهاش، مثل سلام ESP32: چشمک دو LED، برای خواندن رایگان باز میشوند و برای اجرا پلاس لازم داری. آنجا اینترنت واقعی، NTP، خواب عمیق، BLE و FreeRTOS شبیهسازی نمیشوند.
اشتباههای رایج
- حساب با ۱۰۲۳: کد اونو را بیتغییر آوردن یعنی پتانسیومتر فقط در یکچهارم اول چرخش اثر دارد؛ در ESP32 عدد آنالوگ تا ۴۰۹۵ میرود.
- سنسور آنالوگ روی ADC2: تا وایفای روشن شود، analogRead روی پایههایی مثل 4 و 27 از کار میافتد. در پروژهی وایفای سنسور را به 32 تا 39 بزن.
- LED روی 34 تا 39: این پایهها خروجی ندارند و LED هرگز روشن نمیشود.
- ماژول ۵ ولتی: خروجی ۵ ولت یک ماژول، پایهی ESP32 را به خطر میاندازد؛ ماژول را از 3V3 تغذیه کن یا از مقسم ولتاژ استفاده کن.
آموزشهای مرتبط
- شبیه ساز ESP32 آنلاین
- analogRead در ESP32
- ESP32 یا آردوینو اونو؟
- فهرست مدارهای ESP32
- وایفای و اینترنت اشیا در شبیهساز
سؤالهای رایج
شناسهی ESP32 در ووکوی چیست؟
برد رایج ESP32 در ووکوی board-esp32-devkit-c-v4 است. چیدمان پایههایش ممکن است با برد سیپایهای که در دست داری فرق کند، ولی شمارهی GPIOها یکی است و در کد فقط همان شماره را مینویسی.
چرا analogRead در ESP32 تا ۴۰۹۵ میرود؟
مبدل آنالوگ ESP32 دوازدهبیتی است، پس عدد بین ۰ تا ۴۰۹۵ است، نه ۰ تا ۱۰۲۳ مثل اونو. در map و محاسبهی ولتاژ همین عدد را بگذار.
ESP32 در شبیهساز فارسی وایفای دارد؟
پروژههای آمادهی وبسرور و MQTT در آن اجرا میشوند، ولی اینترنت واقعی، NTP، خواب عمیق، BLE و FreeRTOS شبیهسازی نمیشوند. ESP32 جزو اشتراک پلاس است؛ مثالها برای خواندن رایگاناند و برای اجرا پلاس لازم است.