3.3V กับ 5V Logic Level ต่างกันอย่างไร? ต่อ ESP32 กับ Sensor ให้ปลอดภัยต้องดูอะไร.
อธิบาย 3.3V vs 5V สำหรับ ESP32, Arduino และ Sensor แบบไม่สับสนระหว่าง Power Supply กับ Logic Level พร้อมแนวทางดู Input Threshold, 5V Tolerance และ Level Shifter ก่อนต่อวงจร
คำว่า 3.3V และ 5V ในงาน Embedded สับสนได้ง่าย เพราะเลขเดียวกันอาจพูดถึงคนละเรื่อง
ต้องแยกอย่างน้อย 3 อย่าง:
Power input ของ Board
MCU supply voltage
GPIO logic level
บอร์ด ESP32 บางรุ่นรับไฟ 5V จาก USB/VIN แต่ไม่ได้แปลว่า GPIO รับสัญญาณ 5V ได้
Logic Level คืออะไร
Digital signal ใช้ช่วงแรงดันแทนสถานะ เช่น:
LOW
HIGH
แต่ MCU ไม่ได้ตัดสินจากคำว่า “3.3V system” แบบง่าย ๆ เพียงค่าเดียว ต้องดู datasheet ว่า:
- Input LOW threshold เท่าไร;
- Input HIGH threshold เท่าไร;
- Maximum input voltage เท่าไร;
- Output HIGH/LOW ทำได้แค่ไหนภายใต้ load
3.3V Output ต่อเข้า 5V Input ได้ไหม
อาจได้หรือไม่ได้
ต้องดู minimum HIGH threshold ของอุปกรณ์ 5V
ถ้าอุปกรณ์ 5V ต้องการ HIGH สูงกว่าที่ 3.3V output ทำได้ ระบบอาจทำงานไม่เสถียรแม้บางครั้งจะดูเหมือนใช้ได้
อย่าตัดสินจากการทดลองหนึ่งครั้งบนโต๊ะ
5V Output ต่อเข้า 3.3V GPIO ได้ไหม
อย่าต่อโดยสมมติว่าได้
ถ้า MCU input ไม่ได้ 5V tolerant อาจเกิด:
- overvoltage;
- current ผ่าน protection diode;
- instability;
- permanent damage
ทางเลือกอาจเป็น:
- resistor divider;
- level shifter;
- transistor/MOSFET interface;
- optocoupler/digital isolator;
- เลือก Sensor ที่รองรับ 3.3V logic
วิธีที่เหมาะขึ้นกับ speed, direction และ electrical topology
Power Supply 5V กับ Logic 3.3V อยู่ร่วมกันได้ไหม
ได้และพบได้บ่อย
ตัวอย่าง development board:
USB 5V
↓
On-board regulator
↓
3.3V MCU
↓
3.3V GPIO logic
ดังนั้นเห็นขา 5V บน board ไม่ได้แปลว่า signal pin ใช้ 5V
Level Shifter คืออะไร
Level shifter เป็นวงจรแปลง logic voltage ระหว่าง domain เช่น:
3.3V logic ↔ 5V logic
แต่ level shifter ไม่ใช่ชนิดเดียวใช้ได้กับทุก protocol
ต้องดู:
- unidirectional/bidirectional;
- push-pull/open-drain;
- frequency;
- output drive;
- pull-up topology
I2C มี behavior ต่างจาก UART/SPI เพราะใช้ open-drain และ pull-up
Resistor Divider ใช้ลด 5V เป็น 3.3V ได้ไหม
สำหรับ input signal แบบทิศทางเดียวและ speed ไม่สูงมาก divider อาจใช้ได้ในบางกรณี
แต่ต้องดู:
- input impedance;
- edge speed;
- leakage;
- resistor tolerance;
- frequency;
- source output type
Divider ไม่ใช่ level shifter universal และไม่ใช้กับ bidirectional bus แบบ I2C โดยตรง
I2C ต้องระวังอะไร
I2C line ถูก pull-up ไปยัง supply domain
ถ้า Sensor board มี pull-up ไป 5V แล้วต่อกับ ESP32 3.3V โดยตรง อาจดึง SDA/SCL ไปสูงกว่าที่ MCU รับได้
ดังนั้นต้องตรวจ schematic/module ไม่ใช่ดูแค่คำว่า “รองรับ I2C”
อ่านต่อ: UART, I2C และ SPI ต่างกันอย่างไร
5V Relay Module ใช้กับ ESP32 ได้ไหม
คำว่า “5V Relay Module” อาจหมายถึง coil/power supply 5V แต่ input logic อาจรองรับ 3.3V หรือไม่ก็ได้
ต้องตรวจ:
- input stage;
- optocoupler topology;
- trigger threshold;
- common ground requirement;
- jumper configuration;
- coil supply
อ่านต่อ: MOSFET vs Relay สำหรับ Microcontroller
Sensor 5V แต่ Analog Output สูงสุด 5V ทำยังไง
ถ้า ADC ของ MCU รับต่ำกว่า 5V ต้องมี analog front-end ที่เหมาะสม
เช่น divider/buffer/protection พร้อมตรวจ input range จริง
อ่านต่อ: ADC กับ PWM ต่างกันอย่างไร
ESP32 ใช้ 3.3V เสมอไหม
ESP32 family มีหลาย series และ board/module หลายแบบ ต้องดู datasheet รุ่นจริง
สำหรับ ESP32 classic เอกสาร Espressif ระบุ chip/module supply ใกล้ 3.3V และไม่ได้หมายความว่า GPIO เป็น 5V tolerant
ดังนั้น rule ที่ปลอดภัยคือ:
อย่าเอา 5V signal เข้า ESP32 GPIO จนกว่าจะตรวจเอกสารของ exact chip/board แล้ว
Common Ground จำเป็นไหม
logic signal แบบ single-ended มักต้องอ้างอิง ground เดียวกัน
แต่ถ้าสองระบบอยู่ต่างตู้, สายยาว, มี motor หรือ ground potential ต่างกัน การต่อ ground ตรง ๆ อาจสร้างปัญหา
กรณีนั้นควรพิจารณา isolation หรือ interface ที่เหมาะกับ field environment
ข้อผิดพลาดที่พบบ่อย
- เห็น USB 5V แล้วคิดว่า GPIO รับ 5V;
- ดู voltage supply ของ Sensor แต่ไม่ดู logic output;
- ใช้ divider กับ bidirectional bus;
- ใช้ level shifter board ที่ออกแบบผิดประเภทกับ high-speed push-pull;
- ต่อ 5V pull-up เข้าบัส 3.3V;
- เชื่อคำว่า “3.3V compatible” จากหน้าร้านโดยไม่ดู schematic/datasheet
สรุป
3.3V และ 5V ต้องแยก Power domain ออกจาก Logic domain
ก่อนต่อ MCU กับ Sensor/Module ให้ตรวจ input/output threshold, absolute maximum, pull-up และ direction ของสัญญาณเสมอ การมีแรงดัน supply ที่เปิดเครื่องได้ไม่ได้ยืนยันว่า signal interface ปลอดภัย

