ESP 32 คือ คือไมโครคอนโทรลเลอร์ที่รวมเอา Wi-Fi และ Bluetooth ไว้ในชิปตัวเดียว ทำให้มันเหมาะสำหรับการพัฒนาอุปกรณ์ IoT (Internet of Things) ที่เชื่อมต่อกับอินเทอร์เน็ตได้
คุณสมบัติเด่นของ ESP32
หน่วยประมวลผล: มีหน่วยประมวลผล dual-core 32-bit ทำให้สามารถทำงานได้รวดเร็วและมีประสิทธิภาพ
การเชื่อมต่อ: รองรับ Wi-Fi และ Bluetooth ทำให้เชื่อมต่อกับอุปกรณ์อื่นๆ และอินเทอร์เน็ตได้ง่าย
GPIO: มีขา GPIO (General Purpose Input/Output) จำนวนมาก ทำให้เชื่อมต่อกับเซ็นเซอร์และอุปกรณ์ภายนอกได้หลากหลาย
พลังงาน: ใช้พลังงานต่ำ ทำให้เหมาะสำหรับอุปกรณ์ที่ต้องทำงานต่อเนื่องนานๆ
ราคา: ราคาไม่แพง ทำให้เข้าถึงได้ง่าย
ตัวอย่างการใช้งาน ESP32
อุปกรณ์ Smart Home: เช่น ควบคุมไฟ, เครื่องใช้ไฟฟ้า, หรือเซ็นเซอร์ต่างๆ ในบ้าน
อุปกรณ์สวมใส่: เช่น Smart Watch หรือ Fitness Tracker
อุปกรณ์ IoT: เช่น เซ็นเซอร์ตรวจจับสภาพอากาศ, อุปกรณ์ติดตาม GPS
หุ่นยนต์: ใช้ในการควบคุมการเคลื่อนที่และเซ็นเซอร์ต่างๆ ของหุ่นยนต์
ประเภทของ Pins
GPIO (General Purpose Input/Output): ขาอเนกประสงค์ที่สามารถกำหนดให้เป็นอินพุต หรือเอาต์พุตได้
Power Pins: ขาสำหรับจ่ายไฟเลี้ยงให้กับ ESP32 (เช่น 3.3V, GND)
Analog Pins: ขาที่สามารถอ่านค่าสัญญาณแอนะล็อกได้ (เช่น ADC)
Special Function Pins: ขาที่มีฟังก์ชันเฉพาะ เช่น UART, SPI, I2C
Power Pins
3.3V: ขาสำหรับจ่ายไฟ 3.3 โวลต์
GND: ขาสำหรับกราวด์
VIN: ขาสำหรับรับไฟเลี้ยงภายนอก (ส่วนใหญ่ใช้กับบอร์ด DevKit)
GPIO Pins
มีหมายเลขกำกับ (เช่น GPIO0, GPIO1, GPIO2, ...)
แต่ละขาอาจมีฟังก์ชันที่แตกต่างกันไป (เช่น อินพุต, เอาต์พุต, ADC, PWM, UART, SPI, I2C)
EN: ขา Enable สำหรับเปิด/ปิด ESP32
RST: ขา Reset สำหรับรีเซ็ต ESP32
INPUT: ใช้สำหรับรับสัญญาณจากเซ็นเซอร์หรือสวิตช์ต่างๆ
OUTPUT: ใช้สำหรับควบคุมอุปกรณ์ต่างๆ เช่น LED, มอเตอร์, รีเลย์
ADC (Analog to Digital Converter): ใช้สำหรับอ่านค่าสัญญาณแอนะล็อก เช่น จากเซ็นเซอร์วัดแสง, อุณหภูมิ
PWM (Pulse Width Modulation): ใช้สำหรับควบคุมความสว่างของ LED หรือความเร็วของมอเตอร์
UART (Universal Asynchronous Receiver/Transmitter): ใช้สำหรับการสื่อสารแบบอนุกรม
SPI (Serial Peripheral Interface): ใช้สำหรับการสื่อสารแบบอนุกรมความเร็วสูง
I2C (Inter-Integrated Circuit): ใช้สำหรับการสื่อสารแบบอนุกรมกับอุปกรณ์หลายตัว