ข้ามไปยังทูลบาร์

ESP8266

ESP8266 คือโมดูล WiFi จากจีน ที่มีความพิเศษตรงที่ตัวมันสามารถโปรแกรมลงไปได้ ทำให้สามารถนำไปใช้งานแทนไมโครคอนโทรลเลอร์ได้เลย และมีพื้นที่โปรแกรมที่มากถึง 4MB ทำให้มีพื้นที่เหลือมากในการเขียนโปรแกรมลงไป

ESP8266 เป็นชื่อของชิปไอซีบนบอร์ดของโมดูล ซึ่งไอซี ESP8266 ไม่มีพื้นที่โปรแกรม (flash memory) ในตัว ทำให้ต้องใช้ไอซีภายนอก (external flash memory) ในการเก็บโปรแกรม ที่ใช้การเชื่อมต่อผ่านโปรโตคอล SPI ซึ่งสาเหตุนี้เองทำให้โมดูล ESP8266 มีพื้นที่โปรแกรมมากกว่าไอซีไมโครคอนโทรลเลอร์เบอร์อื่นๆ

ESP8266 ทำงานที่แรงดันไฟฟ้า 3.3V – 3.6V การนำไปใช้งานร่วมกับเซ็นเซอร์อื่นๆที่ใช้แรงดัน 5V ต้องใช้วงจรแบ่งแรงดันมาช่วย เพื่อไม่ให้โมดูลพังเสียหาย กระแสที่โมดูลใช้งานสูงสุดคือ 200mA ความถี่คริสตอล 40MHz ทำให้เมื่อนำไปใช้งานอุปกรณ์ที่ทำงานรวดเร็วตามความถี่ เช่น LCD ทำให้การแสดงผลข้อมูลรวดเร็วกว่าไมโครคอนโทรลเลอร์ยอดนิยม Arduino มาก

ขาของโมดูล ESP8266 แบ่งได้ดังนี้

  • VCC เป็นขาสำหรับจ่ายไปเข้าเพื่อให้โมดูลทำงานได้ ซึ่งแรงดันที่ใช้งานได้คือ 3.3 – 3.6V
  • GND
  • Reset และ CH_PD (หรือ EN) เป็นขาที่ต้องต่อเข้าไฟ + เพื่อให้โมดูลสามารถทำงานได้ ทั้ง 2 ขานี้สามารถนำมาใช้รีเซ็ตโมดูลได้เหมือนกัน แตกต่างตรงที่ขา Reset สามารถลอยไว้ได้ แต่ขา CH_PD (หรือ EN) จำเป็นต้องต่อเข้าไป + เท่านั้น เมื่อขานี้ไม่ต่อเข้าไฟ + โมดูลจะไม่ทำงานทันที
  • GPIO เป็นขาดิจิตอลอินพุต / เอาต์พุต ทำงานที่แรงดัน 3.3V
  • GPIO15 เป็นขาที่ต้องต่อลง GND เท่านั้น เพื่อให้โมดูลทำงานได้
  • GPIO0 เป็นขาทำหรับการเลือกโหมดทำงาน หากนำขานี้ลง GND จะเข้าโหมดโปรแกรม หากลอยไว้ หรือนำเข้าไฟ + จะเข้าโหมดการทำงานปกติ
  • ADC เป็นขาอนาล็อกอินพุต รับแรงดันได้สูงสุดที่ 1V ขนาด 10 บิต การนำไปใช้งานกับแรงดันที่สูงกว่าต้องใช้วงจรแบ่งแรงดันเข้าช่วย

เมื่อนำชิฟ ESP8266 มาผลิตเป็นโมดูลหลายรุ่น ก็จะขึ้นต้นด้วย ESP866 แล้วตามด้วยรุ่น เช่น ESP-01 , ESP-03 , ESP-07 , ESP-12E โดยโครงสร้างและขาที่ใช้งานก็จะมีลักษณะคล้ายกันคือ

  • GPIO0 เป็นขาสำหรับเลือกโหมด โดยเมื่อต่อกับ GND จะเข้าโหมดโปรแกรม เมื่อต้องการให้ทำงานปกติก็ไม่ต้องต่อ
  • GPIO15 เป็นขาที่ต้องต่อลง GND เพื่อให้โมดูลทำงาน
  • CH_PD หรือ EN เป็นขาที่ต้องต่อไฟ VCC เพื่อ pull up สัญญาณ ให้โมดูลทำงาน โมดูลบางร่นไม่มีขา Reset มาให้ เมื่อต้องการรีเซต ให้ต่อขา CH_PD กับ GND
  • Reset  ต่อกับไฟ VCC เพื่อ pull up สัญญาณ โดยเมื่อต้องการรีเซต ให้ต่อกับไฟ GND
  • VCC เป็นขาสำหรับจ่ายไฟเลี้ยง ใช้ไฟเลี้ยง 3.0-3.6V
  • GND ต่อกับไฟ 0V
  • GPIO เป็นขาดิจิตอล INPUT/OUTPUT ทำงานที่ไฟ 3.3V
  • ADC เป็นขา Analog INPUT รับแรงดันสูงสุด 1V ความละเอียด 10bit หรือ 1024 ค่า

เวลาโปรแกรมเพียงมองหาขาเหล่านี้ แล้วต่อให้ครบเท่าที่มีขาให้ต่อ ก็สามารถโปรแกรม ESP8266 ได้ทุกรุ่น