หน้าที่ของesp8266

  

 ESP8266 เป็นไมโครคอนโทรลเลอร์ที่ผลิตโดยบริษัท Espressif (เชี่ยงไฮ้ประเทศจีน) มีคุณสมบัติเด่นคือการเชื่อมต่อ WiFi ที่มาพร้อมกับ Full TCP/IP Stack ตัวชิปมีราคาถูก อีกทั้งการเป็นไมโครคอนโทรลเลอร์หมายถึงสามารถเขียนโปรแกรมลงไปในตัวมันได้เลย ด้วยข้อดีต่างๆทั้งราคาถูก เขียนโปรแกรมได้ มีฟังก์ชั่น WiFi ติดมาพร้อม ทำให้ ESP8266 เป็นสิ่งที่ตอบสนองต่อการมาของยุค Internet of Things จึงทำให้ได้รับความนิยมอย่างแพร่หลาย มีโปรเจคออกมามากมาย

ไมโครคอนโทรลเลอร์ ESP8266
          คุณสมบัติ

Hardware

CPU

Tensilica L106 32-bit processor 80MHz

RAM

64kB Instruction RAM & 96kB Data RAM

Memory

External QSPI Flash up to 16MB supported

Interface

UART/SDIO/SPI/I2C/I2S/GPIO/ADC/PWM

GPIO

16

Operating Voltage

2.5 ~ 3.6V

Operating Current

80mA

Operating Temperature

-40 ~ 125 C

Software

Wi-Fi Mode

Station/SoftAP/SoftAP+Station

Security

WPA/WPA2

Encryption

WEP/TKIP/AES

Firmware Upgrade

UART Download / OTA

Software Development

Supports Cloud Server Development / Firmware and SDK

Network Protocols

IPv4, TCP/UDP/HTTP

User Configuration

AT Instruction Set, Cloud Server, Android/iOS App

WiFi

Certification

Wi-Fi Alliance

Protocols

802.11 b/g/n (HT20)

Frequency Range

2.4G ~ 2.5G (2400M ~ 2483.5M)

TX Power

802.11 b: +20 dBm
802.11 g: +17 dBm
802.11 n: +14 dBm

RX Sensitivity

802.11 b: –91 dbm (11 Mbps)
802.11 g: –75 dbm (54 Mbps)
802.11 n: –72 dbm (MCS7)



          แต่เนื่องจาก ESP8266 ที่บริษัท Espressif ผลิตออกมาเป็นชิปเล็กๆแบบ SMD ตัวถัง QFN32 มีขนาดเพียง 5x5 mm. ทำให้นำไปใช้งานจริงได้ยาก ต่อมาบริษัท Ai-Thinker (เซินเจิ้นประเทศจีน) ได้นำ ESP8266 มาสร้างเป็นโมดูลสำหรับใช้งาน ให้ชื่อว่า ESP-01
ESP-01
          จากนั้นจึงมีการพัฒนาสร้างเป็นโมดูลอีกมากมายตามมา แต่โมดูลที่ได้รับความนิยมยังคงเป็น ESP-01 เนื่องจากมีขนาดเล็กใช้งานสะดวก ESP-07 เป็นโมดูลเพื่อนำไปพัฒนาเป็นอุปกรณ์ต่างๆด้วยจุดเด่นที่สามารถต่อสายอากาศภายนอกได้ และโมดูล ESP-12 ที่มีการนำไปพัฒนาเป็น Development Board ต่างๆ เช่น NodeMCU, WeMos D1, Wemos D1 mini เป็นต้น

          การใช้งานและวิธีการเขียนโปรแกรม
          จากที่ ESP8266 นั้นถูกนำมาทำเป็นโมดูลหลายตัวมาก ที่นี้จึงขออธิบายเฉพาะตัวโมดูลที่ใช้งานได้ง่าย เป็นที่นิยม คือ ESP-01 และ NodeMCU เท่านั้น ส่วนการใช้งานโมดูลตัวอื่นๆ จะมีวิธีการใช้งานที่เหมือนกัน ต่างกันตรงการจัดวางและจำนวนขาที่มีใช้งาน ซึ่งสามารถหาเอกสารต่างๆนำมาอ้างอิงได้โดยทั่วไป โดยขา I/O ที่ใช้งานได้นี้จะเรียกว่า GPIO อาจฟังดูแปลกแต่มันก็ทำหน้าที่เหมือนขาของ Arduino นั่นเอง ใน Arduino เราเรียกขา ว่า " 2 " ใน ESP8266 จะเรียกว่า " GPIO2 " ชื่อเรียกต่างกันแต่ทำหน้าที่และเขียนโปรแกรมเหมือนกัน  
           ในการเขียนโปรแกรมนั้นสามารถเขียนโปรแกรมได้ด้วยวิธีต่างๆ แม้ว่าตัว ESP8266 จะถูกออกแบบมาให้ใช้ AT Command ในการเขียนโปรแกรม แต่ก็สามารถใช้วิธีที่ง่ายกว่านั้นคือการเขียนโปรแกรมโดยใช้ ArduinoIDE โดยต้องทำการเพิ่มบอร์ดตระกูล ESP8266 ลงไปใน ArduinoIDE ก่อน (คลิกดูวิธีได้ที่นี่ส่วนการเบิร์นโปรแกรมนั้นสามารถทำได้หลายวิธี ทั้งการใช้บอร์ด Arduino เป็นตัวเบิร์น การใช้อุปกรณ์เบิร์นโปรแกรม USB-UART, USB-TTL ต่างๆ รวมถึงบอร์ดอย่าง NodeMCU และ WeMos D1 นั้นก็สามารถต่อสายกับคอมพิวเตอร์ได้โดยตรง การเชื่อมต่อนั้นใช้การเชื่อมต่อขา RX TX GND VCC ตามปกติ สิ่งที่เพิ่มเติมคือ ขา CH_PD ต้องมีสถานะ HIGH (ต่อกับ VCC) เพื่อทำการ Chip enable ON และ GPIO0 ต้องมีสถานะ LOW (ต่อกับ GND) เพื่อปรับชิปเข้าสู่ Programming Mode 

** ระวัง !! ESP8266 ทุกแบบทุกรุ่นใช้ไฟฟ้า VCC 3.3V ต้องใช้เครื่องมือที่มีแรงดันไฟ 3.3V เท่านั้น ห้ามใช้ 5V เด็ดขาด **



** ข้อสังเกต **
          การใช้อุปกรณ์ USB to UART หรืออื่นๆนั้น จะต่อสายแบบปกติ ของการต่อ Serial คือการต่อไขว้ RX ไปต่อกับ TX และ TX ไปต่อกับ RX แต่หากใช้บอร์ด Arduino มาทำการเบิร์น บอร์ด Arduino จะไม่มีการต่อไขว้ โดยจะต่อ RX กับ RX และ TX กับ TX ไปเลย 


          สำหรับบทความนี้ ได้อธิบายข้อมูลรายละเอียดต่างๆเกี่ยวกับ ESP8266 มาพอสมควรแล้ว ทุกท่านคงทำความรู้จักกับ ESP8266 กันแล้ว ครั้งต่อไปจะอธิบายถึงการเขียนโปรแกรมเพื่อใช้งาน ESP8266

 

ความคิดเห็น