ESP32-C3 Pinout (Super Mini) — ขาไหนใช้ได้/ควรเลี่ยง + Safe GPIO + I2C SPI UART

ESP32-C3 Pinout (Super Mini)

หน้านี้สรุป ESP32-C3 Pinout แบบ “หยิบไปใช้ได้ทันที” สำหรับนักศึกษา / Maker มือใหม่ / ช่างไฟ ที่อยากเริ่มทำระบบอัตโนมัติหรือชุดคิดส์ด้วยบอร์ด ESP32-C3 Super Mini (USB-C).

หมายเหตุ: บอร์ด “Super Mini” มีหลายโรงงานผลิต ตำแหน่งชื่อขาอาจต่างกันเล็กน้อย แต่ หมายเลข GPIO และพฤติกรรมการทำงานของชิป ESP32-C3 เหมือนกัน

1) แผนผังพิน (Pinout) ของ ESP32-C3

บอร์ดไมโครคอนโทรลเลอร์ ESP32-C3 ขนาดจิ๋วพร้อมพอร์ต USB-C และสายจัมเปอร์บนโต๊ะทำงานสไตล์ Maker Space

ทิป: ก่อนเริ่มต่อสายจริง แนะนำเปิดหน้า Pinout ไว้ข้าง ๆ

2) Quick Answer: ถ้าจะเริ่มต่อวงจรวันนี้ ใช้ขาไหน?

✅ Safe GPIO (แนะนำสำหรับมือใหม่)

ใช้เป็น Digital I/O, PWM, Interrupt ได้สบาย และมักไม่ชนโหมดบูต (แต่ยังควรเช็คว่า “บอร์ดคุณเอาไปใช้กับ USB/LED ภายในไหม”)

เหมาะกับงานทั่วไป: คุมรีเลย์ (ผ่านไดรเวอร์), อ่านสวิตช์, ทำ PWM, ทำ I2C/SPI แบบกำหนดขาเอง

⚠️ GPIO ที่ควร “ระวัง” (เกี่ยวกับ BOOT/Strapping หรือวงจรบนบอร์ด)

ถ้าคุณต่อวงจรไป “ดึงระดับไฟผิด” ตอนเปิดเครื่อง อาจทำให้บูตโหมดแปลก ๆ หรืออัปโหลดโปรแกรมไม่ได้ โดยเฉพาะ GPIO0 (ปุ่ม BOOT) ให้หลีกเลี่ยงต่อโหลดหนัก ๆ

✅ I2C / SPI / UART ใช้ขาไหน (พร้อมก็อปไปใช้)

  • I2C (แนะนำสำหรับมือใหม่): เลือกขาที่ว่างและเดินสายง่าย เช่น SDA=GPIO6SCL=GPIO7 (หรือขาคู่อื่นที่คุณสะดวก)
  • SPI (แนะนำเริ่มต้น)SCK=GPIO4MISO=GPIO5MOSI=GPIO6CS=GPIO7 (กำหนดเองได้)
  • UART (Serial)UART0 โดยทั่วไป TX=GPIO21RX=GPIO20 (ใช้คุยโมดูลภายนอกได้)

ใช้เป็น Digital I/O, PWM, Interrupt ได้สบาย และมักไม่ชนโหมดบูต (แต่ยังควรเช็คว่า “บอร์ดคุณเอาไปใช้กับ USB/LED ภายในไหม”)

3) สรุป “กลุ่มขา” ที่เจอบ่อยในงานจริง (ชุดคิดส์ / IoT)

ขา Digital I/O ทั่วไป

  • GPIO ส่วนใหญ่ของ ESP32-C3 ทำเป็น INPUT/OUTPUT ได้
  • เหมาะกับ LED, ปุ่มกด, รีเลย์ (ผ่านไดรเวอร์), buzzer, สัญญาณควบคุม

ขาที่เกี่ยวกับ BOOT/Strapping

  • กลุ่มนี้มือใหม่พลาดบ่อย เพราะต่อวงจรแล้วบอร์ด บูตไม่ขึ้น/อัปโหลดไม่ได้
  • ให้ดูหัวข้อ Strapping pins ก่อนเสมอ

ขาที่อาจถูกใช้กับ USB (เฉพาะบางบอร์ด/บางโหมด)

  • บอร์ด ESP32-C3 บางรุ่นใช้ USB ในตัวชิป (USB-Serial/JTAG) และอาจผูกกับ GPIO18/19 เป็น USB D-/D+
  • ถ้าคุณใช้ USB อัปโหลด/เปิด Serial Monitor แล้วเจออาการแปลก ๆ ให้ลอง “เลี่ยงใช้ GPIO18/19”

4) ADC (Analog) บน ESP32-C3

ESP32-C3 มี ADC เพียงพอสำหรับงานชุดคิดส์ เช่น LDR, Soil Moisture (Analog), Potentiometer แต่ข้อสำคัญคือ สัญญาณต้องไม่เกิน 3.3V

ADC อยู่ขาไหน?

โดยทั่วไป ADC ของ ESP32-C3 มักอยู่ในกลุ่ม GPIO0–GPIO4 (จำนวนช่องไม่มาก) *และบางบอร์ดอาจไม่ได้นำออกมาทุกช่อง

มือใหม่ควรรู้:

  • อย่าเอา 5V เข้าขา ADC ตรง ๆ
  • ถ้าสายยาว สัญญาณจะแกว่งง่าย (ต้องจัดกราวด์ดี ๆ / อาจต้องกรองสัญญาณ)

5) PWM (LEDC) บน ESP32-C3

ESP32-C3 ทำ PWM ผ่าน LEDC ได้ยืดหยุ่นมาก (กำหนดความถี่/ความละเอียดได้) เหมาะกับงานหรี่ไฟ LED และคุมความเร็วพัดลม DC

  • PWM ใช้ได้กับ GPIO ส่วนใหญ่
  • งานยอดฮิต: dim LED, คุมพัดลม/ปั๊ม DC (ผ่าน MOSFET), ทำเสียง buzzer

ถ้าคุม “ของจริง” เช่น พัดลม/ปั๊ม/โซลินอยด์ อย่าขับจาก GPIO ตรง ๆ ใช้ โมดูลรีเลย์ หรือ MOSFET driver เพื่อความปลอดภัยและยืดอายุบอร์ด

6) I2C บน ESP32-C3

I2C ของ ESP32-C3 สามารถ “ย้ายขาได้” (กำหนดเอง) มือใหม่แนะนำเลือก 2 ขาที่ว่างและอยู่ใกล้กันเพื่อเดินสายง่าย

ค่าที่แนะนำ (เริ่มต้นง่าย)

  • SDA = GPIO6
  • SCL = GPIO7

โค้ดตัวอย่างแนวนี้: Wire.begin(SDA, SCL); (ถ้าคุณเปลี่ยนขา ก็เปลี่ยนค่าใน begin ให้ตรง)

7) SPI บน ESP32-C3

SPI ก็ย้ายขาได้เหมือนกัน แต่สำหรับมือใหม่ให้ยึดชุดขาที่ “เดินสายสั้น” และไม่ชน BOOT/USB

ชุดเริ่มต้นที่ทำงานง่าย (แนะนำ)

  • SCK = GPIO4
  • MISO = GPIO5
  • MOSI = GPIO6
  • CS = GPIO7

ถ้าคุณใช้โมดูล SPI แล้วอ่านค่าเพี้ยน 80% มาจาก “สายยาว/กราวด์ไม่ดี/ต่อขาผิด” แนะนำเริ่มจากสายสั้น ๆ แล้วค่อยขยาย

8) Interrupts

Interrupt ใช้จับเหตุการณ์ทันที เช่น ปุ่มกด, encoder, pulse sensor (ตอบสนองไวกว่า polling)

  • GPIO ส่วนใหญ่รองรับ interrupt
  • มือใหม่เริ่มจากปุ่มกด + ใส่ debounce จะเห็นภาพชัดสุด

9) UART Pins — ขา RX/TX ที่ต่อกับคอม “ขาไหน?”

บอร์ด ESP32-C3 Super Mini ส่วนใหญ่ “เสียบ USB-C แล้วคอมเห็นเป็นพอร์ต” ได้เลย เพราะใช้ USB ในตัวชิป (USB-Serial/JTAG / CDC) ดังนั้น ไม่ได้จำเป็นต้องใช้ RX/TX pin เพื่อคุยกับคอม เหมือนบอร์ดรุ่นเก่า

แต่ถ้าคุณต้องต่อ UART ไปหาอุปกรณ์ภายนอก (GPS/RS485/โมดูล Serial)

โดยทั่วไป UART0 ของ ESP32-C3 จะใช้ชุดนี้:

  • TX0 = GPIO21
  • RX0 = GPIO20

ข้อควรระวัง:

  • ถ้าคุณใช้ Serial Monitor ผ่าน USB แล้ว UART0 ถูกใช้งานร่วมกันในโปรเจกต์ อาจทำให้ข้อมูลมั่วได้
  • ทางปลอดภัยคือใช้ UART เพิ่ม (Serial1) แล้ว “กำหนดขาเอง” ไปที่ GPIO ว่าง ๆ

10) Strapping / BOOT pins (ขาที่ควรเลี่ยง)

Strapping pins คือขาที่ชิปใช้ “อ่านสถานะตอนเปิดเครื่อง” เพื่อกำหนดโหมดบูต ถ้าคุณต่อวงจรไปดึง HIGH/LOW ผิดตอนเปิดเครื่อง บอร์ดอาจ ไม่บูต หรือ เข้าโหมดอัปโหลดไม่ได้

แนวทางสำหรับมือใหม่:

  • เลี่ยงต่อโหลดหนัก ๆ กับ GPIO0 (ปุ่ม BOOT)
  • ถ้าจะใช้ GPIO0/2/8/9 ให้ทดสอบก่อน และอย่าให้ถูกดึง LOW/HIGH แปลก ๆ ตอนเริ่มบูต
  • ถ้าบอร์ด “อัปโหลดไม่เข้า” ให้ถอดวงจรออกก่อน แล้วลองใหม่

11) ตาราง GPIO แบบใช้งานจริง (ESP32-C3)

ตารางนี้ตั้งใจทำให้ “มือใหม่เลือกขาได้เร็ว” โดยสรุปความสามารถหลัก: Digital / PWM / ADC / I2C / SPI / UART / Interrupt *การย้ายขา I2C/SPI/UART ทำได้ผ่าน GPIO Matrix

GPIO

Digital I/O

PWM

ADC

I2C / SPI (ย้ายขาได้)

UART

Interrupt

หมายเหตุ (สำหรับมือใหม่)

GPIO0ได้ได้ได้*ได้ได้ได้มักเป็น BOOT/Strapping เลี่ยงต่อโหลดหนัก
GPIO1ได้ได้ได้ได้ได้ใช้เป็น I/O ทั่วไปได้ดี
GPIO2ได้ได้ได้ได้ได้ระวังบูต บางวงจรดึงผิดแล้วค้าง
GPIO3ได้ได้ได้*ได้ได้ได้เหมาะเป็นขาเซนเซอร์/สวิตช์
GPIO4ได้ได้ได้*ได้ได้ได้ขาเริ่มต้นยอดนิยม (SPI/I2C ก็ได้)
GPIO5ได้ได้ได้ได้ได้เหมาะคุมรีเลย์/MOSFET (ผ่านไดรเวอร์)
GPIO6ได้ได้ได้ (แนะนำเป็น SDA/MOSI)ได้ได้แนะนำเป็น I2C/SPI เพราะเดินสายง่าย
GPIO7ได้ได้ได้ (แนะนำเป็น SCL/SCK/CS)ได้ได้คู่กับ GPIO6 เหมาะทำ I2C
GPIO8ได้ได้ได้ได้ได้บางบอร์ดผูกวงจรภายใน เทสต์ก่อน
GPIO9ได้ได้ได้ได้ได้บางบอร์ดผูกวงจรภายใน เทสต์ก่อน
GPIO10ได้ได้ได้ได้ได้ปลอดภัยสำหรับงานทั่วไป
GPIO18ได้ได้ได้ได้ได้บางบอร์ดใช้เป็น USB D- เลี่ยงถ้าใช้ USB
GPIO19ได้ได้ได้ได้ได้บางบอร์ดใช้เป็น USB D+ เลี่ยงถ้าใช้ USB
GPIO20ได้ได้ได้RX0ได้ขา RX (UART0) นิยมใช้คุยโมดูลภายนอก
GPIO21ได้ได้ได้TX0ได้ขา TX (UART0) และใช้เป็น I/O ทั่วไปได้ดี

12) ทริคเลือกพินให้ไม่พัง (สรุปแบบพี่เตือนน้อง)

  • เริ่มจาก Safe GPIO ก่อน แล้วค่อยขยายไปขาอื่น
  • อย่าเอา GPIO0 ไปขับรีเลย์/มอเตอร์ (ถ้าจำเป็นต้องใช้ให้ผ่านไดรเวอร์และอย่าดึงระดับผิดตอนบูต)
  • ถ้าใช้ USB อัปโหลด/Serial แล้วงานรวน ให้ลอง เลี่ยง GPIO18/19 (บางบอร์ดผูกกับ USB)
  • งานเซนเซอร์ Analog ให้สงวน ADC ไว้กับงานจำเป็นจริง ๆ และคุมแรงดันไม่เกิน 3.3V
  • เดินสายสั้น + กราวด์ดี = ลดปัญหาไป 50%

ก่อนเริ่มต่อสาย อย่าลืมดู “Pinout”

อ่านต่อ (บทความที่เกี่ยวข้อง)

FAQ: คำถามยอดฮิต ESP32-C3 Pinout

บอร์ด ESP32-C3 Super Mini ต้องใช้ USB-to-TTL ไหม?

ส่วนใหญ่ไม่ต้อง เพราะบอร์ดมักใช้ USB ในตัวชิป (USB-Serial/JTAG/CDC) เสียบ USB-C แล้วใช้งานได้เลย ยกเว้นบางรุ่นที่ USB มีไว้จ่ายไฟอย่างเดียว.

โดยทั่วไป UART0 ของ ESP32-C3 คือ TX0=GPIO21 และ RX0=GPIO20 (ใช้คุยโมดูลภายนอกได้). แต่การคุยกับคอมผ่าน USB มักไม่จำเป็นต้องใช้ RX/TX pin.

โดยทั่วไป ADC จะอยู่ในกลุ่ม GPIO0–GPIO4 แต่บอร์ดบางรุ่นอาจไม่นำออกมาครบทุกช่อง และต้องระวังแรงดันไม่เกิน 3.3V.

เลี่ยง GPIO0 (BOOT) และขาที่เกี่ยวกับ Strapping/วงจรภายใน (เช่น GPIO2/8/9 ในบางบอร์ด) รวมถึง GPIO18/19 หากบอร์ดคุณใช้ USB D-/D+ อยู่.

ไม่จำเป็น ESP32-C3 ย้ายขาได้ผ่าน GPIO Matrix แต่เพื่อความง่าย มือใหม่ควรเลือกขาที่ว่าง เดินสายสั้น และไม่ชน BOOT/USB.

Shopping Cart
Scroll to Top