ภาพรวม (Overview)

แนะนำ (Introduction)
ESP32 คือไมโครคอนโทรลเลอร์แบบ System on a Chip (SoC) ที่มีราคาถูกและประหยัดพลังงาน พัฒนาโดยบริษัท Espressif ซึ่งรวมฟังก์ชันการเชื่อมต่อไร้สายทั้ง Wi-Fi และ Bluetooth พร้อมกับหน่วยประมวลผลแบบดูอัลคอร์ (สองแกนประมวลผล)
ถ้าคุณเคยใช้ ESP8266 มาก่อน บอกเลยว่า ESP32 คือรุ่นใหม่ที่อัปเกรดขึ้นมา พร้อมคุณสมบัติใหม่ ๆ มากมาย
ESP32 คือชุดของชิปไมโครคอนโทรลเลอร์ที่ถูกพัฒนาโดยบริษัท Espressif
เพราะว่ามันมีคุณสมบัติเด่น ๆ ดังนี้:
ราคาถูก: เริ่มต้นแค่ประมาณ $6 (ราว 200 บาท) เท่านั้น ใคร ๆ ก็เข้าถึงได้
ประหยัดพลังงาน: ใช้พลังงานน้อยมากเมื่อเทียบกับไมโครคอนโทรลเลอร์รุ่นอื่น ๆ และยังมีโหมดประหยัดพลังงานอย่าง deep sleep ด้วย
รองรับ Wi-Fi: สามารถเชื่อมต่อกับ Wi-Fi ได้ (โหมด station) หรือจะสร้างเครือข่าย Wi-Fi เองก็ได้ (โหมด access point) – เหมาะกับโปรเจกต์ IoT และสมาร์ทโฮมที่อุปกรณ์หลายตัวต้องเชื่อมต่อกันผ่าน Wi-Fi
รองรับ Bluetooth: ทั้งแบบคลาสสิกและแบบประหยัดพลังงาน (BLE) – ใช้ได้หลากหลายงานในโลกของ IoT
หน่วยประมวลผลแบบสองคอร์ (Dual-core): มี 2 แกนประมวลผล Xtensa 32-bit LX6 คือ core 0 และ core 1
พอร์ตเชื่อมต่ออุปกรณ์หลากหลาย: รองรับการรับส่งข้อมูลทั้งแบบ input และ output เช่น:
touch แบบสัมผัส
ADC (แปลงสัญญาณอนาล็อกเป็นดิจิทัล)
DAC (แปลงสัญญาณดิจิทัลเป็นอนาล็อก)
UART, SPI, I2C, PWM ฯลฯ
เขียนโปรแกรมได้แบบ Arduino: ถ้าเคยเขียน Arduino มาก่อน ก็สามารถใช้สไตล์การเขียนแบบเดียวกันบน ESP32 ได้เลย
รองรับ MicroPython: สามารถเขียนโปรแกรมด้วยภาษา Python ได้ โดยใช้เฟิร์มแวร์ MicroPython ซึ่งเป็นเวอร์ชันย่อของ Python 3 สำหรับอุปกรณ์ฝังตัว
คุณสมบัติ (Features)
- Wireless connectivity WiFi: 150.0 Mbps data rate with HT40
- Bluetooth: BLE (Bluetooth Low Energy) and Bluetooth Classic
- Processor: Tensilica Xtensa Dual-Core 32-bit LX6 microprocessor, running at 160 or 240 MHz
- Memory:
- ROM: 448 KB (for booting and core functions)
- SRAM: 520 KB (for data and instructions)
- RTC fast SRAM: 8 KB (for data storage and main CPU during RTC Boot from the deep-sleep mode)
- RTC slow SRAM: 8KB (for co-processor accessing during deep-sleep mode)
- eFuse: 1 Kbit (of which 256 bits are used for the system (MAC address and chip configuration) and the remaining 768 bits are reserved for customer applications, including Flash-Encryption and Chip-ID)
- Embedded flash: flash connected internally via IO16, IO17, SD_CMD, SD_CLK, SD_DATA_0 and SD_DATA_1 on ESP32-D2WD and ESP32-PICO-D4.
- 0 MiB (ESP32-D0WDQ6, ESP32-D0WD, and ESP32-S0WD chips)
- 2 MiB (ESP32-D2WD chip)
- 4 MiB (ESP32-PICO-D4 SiP module)
- Low Power: ensures that you can still use ADC conversions, for example, during deep sleep.
- Peripheral Input/Output:
- peripheral interface with DMA that includes capacitive touch
- ADCs (Analog-to-Digital Converter)
- DACs (Digital-to-Analog Converter)
- I²C (Inter-Integrated Circuit)
- UART (Universal Asynchronous Receiver/Transmitter)
- SPI (Serial Peripheral Interface)
- I²S (Integrated Interchip Sound)
- RMII (Reduced Media-Independent Interface)
- PWM (Pulse-Width Modulation)
- Security: hardware accelerators for AES and SSL/TLS
ข้อมูลสินค้า (Spec Data)
MCU แบบ Dual Core (แกนประมวลผลคู่)
เป็นไมโครคอนโทรลเลอร์แบบ 32 บิต
ทำงานด้วยความเร็วตั้งแต่ 160 ถึง 240 เมกะเฮิรตซ์
มีหน่วยความจำ SRAM ขนาด 512 กิโลไบต์
มีหน่วยความจำแฟลชขนาด 4 เมกะไบต์ สำหรับเก็บโปรแกรมที่อัปโหลดเข้าไปมีขาเชื่อมต่อ GPIO ทั้งหมด 38 ขา รองรับการเชื่อมต่อกับอุปกรณ์ต่างๆ ได้อย่างหลากหลาย
ความสามารถด้านสัญญาณและการเชื่อมต่อ
ช่องอ่านค่าสัญญาณแอนะล็อกแบบ ADC จำนวน 18 ช่อง ความละเอียด 12 บิต
ช่องเชื่อมต่อแบบ SPI จำนวน 3 ช่อง
ช่องสื่อสารแบบ UART จำนวน 3 ช่อง
ช่องเชื่อมต่อแบบ I2C จำนวน 2 ช่อง
ช่องส่งสัญญาณ PWM จำนวน 16 ช่อง
ตัวแปลงสัญญาณจากดิจิทัลเป็นแอนะล็อก (DAC) จำนวน 2 ตัว
ช่องสื่อสารเสียงแบบ I2S จำนวน 2 ช่อง
รองรับการสัมผัสแบบ capacitive จำนวน 10 ขา
คุณสมบัติเด่นเพิ่มเติม
ใช้ชิป ESP32 ที่มี Wi-Fi และ Bluetooth ในตัว
มีขา I/O จำนวนมากถึง 38 ขา รองรับการใช้งานที่หลากหลาย
ใช้พอร์ต USB Type-C สำหรับการเชื่อมต่อที่สะดวกและทันสมัย
รองรับการเขียนโปรแกรมผ่าน Arduino IDE, PlatformIO หรือ ESP-IDF
มีหน่วยความจำแฟลชขนาด 4 เมกะไบต์ สำหรับเก็บข้อมูลและโปรแกรม
ข้อมูลบอร์ด (Onboard Resources)

ตารางขา (Pin Table) สำหรับ ESP32 (38 Pins)
ขา | ชื่อขา (Label) | ฟังก์ชันหลัก | ฟังก์ชันเพิ่มเติม |
---|---|---|---|
1 | 3V3 | Power | จ่ายไฟ 3.3V ให้บอร์ด |
2 | EN | Enable | รีเซ็ตหรือเปิดการทำงาน |
3 | IO36 (VP) | ADC1_CH0 | GPIO36, Input only |
4 | IO39 (VN) | ADC1_CH3 | GPIO39, Input only |
5 | IO34 | ADC1_CH6 | GPIO34, Input only |
6 | IO35 | ADC1_CH7 | GPIO35, Input only |
7 | IO32 | ADC1_CH4 | PWM, Touch9 |
8 | IO33 | ADC1_CH5 | PWM, Touch8 |
9 | IO25 | DAC1, ADC2_CH8 | PWM |
10 | IO26 | DAC2, ADC2_CH9 | PWM |
11 | IO27 | ADC2_CH7 | PWM, Touch7 |
12 | IO14 | ADC2_CH6 | PWM, Touch6, HSPI_CLK |
13 | IO12 | ADC2_CH5 | PWM, Touch5, HSPI_MISO |
14 | GND | Ground | ขาเชื่อมต่อกราวด์ |
15 | IO13 | ADC2_CH4 | PWM, Touch4, HSPI_MOSI |
16 | IO9 | HSPIHD | GPIO9 (ใช้ในบางบอร์ด) |
17 | IO10 | HSPICS0 | GPIO10 (ใช้ในบางบอร์ด) |
18 | IO11 | ไม่ใช้งานทั่วไป | ใช้สำหรับแฟลชภายใน |
19 | IO6 | ไม่ใช้งานทั่วไป | ใช้สำหรับแฟลชภายใน |
20 | IO7 | ไม่ใช้งานทั่วไป | ใช้สำหรับแฟลชภายใน |
21 | IO8 | ไม่ใช้งานทั่วไป | ใช้สำหรับแฟลชภายใน |
22 | IO15 | ADC2_CH3 | PWM, Touch3, HSPI_CS |
23 | IO2 | ADC2_CH2 | PWM, Touch2 |
24 | IO0 | ADC2_CH1 | PWM, Touch1, Boot |
25 | IO4 | ADC2_CH0 | PWM, Touch0, HS2_DATA1 |
26 | IO16 | RX2 | UART2 RX, PWM |
27 | IO17 | TX2 | UART2 TX, PWM |
28 | IO5 | VSPI_CS0 | PWM |
29 | IO18 | VSPI_CLK | PWM |
30 | IO19 | VSPI_MISO | PWM |
31 | GND | Ground | ขาเชื่อมต่อกราวด์ |
32 | IO21 | SDA (I2C) | PWM |
33 | RXD0 (IO3) | UART0 RX | UART, PWM |
34 | TXD0 (IO1) | UART0 TX | UART, PWM |
35 | IO22 | SCL (I2C) | PWM |
36 | IO23 | VSPI_MOSI | PWM |
37 | GND | Ground | ขาเชื่อมต่อกราวด์ |
38 | VIN | Power Input | จ่ายไฟเข้าบอร์ด (5V) |
ขนาดบอร์ด (Dimension)



Development Board - บอร์ดพัฒนา