ENGINNERS ESP8266 บอร์ดพัฒนา NodeMCU

Internet of Things (IoT) เป็นสาขาที่ได้รับความนิยมในโลกของเทคโนโลยี ได้เปลี่ยนวิธีการทำงานของเรา วัตถุทางกายภาพและโลกดิจิทัลเชื่อมต่อกันมากขึ้นกว่าเดิม เมื่อคำนึงถึงสิ่งนี้ Espressif Systems (บริษัท เซมิคอนดักเตอร์ในเซี่ยงไฮ้) ได้เปิดตัวไมโครคอนโทรลเลอร์ที่ใช้งาน WiFi ขนาดกัดน่ารัก - ESP8266 ในราคาที่ไม่น่าเชื่อ! ด้วยราคาไม่ถึง $3 มันสามารถตรวจสอบและควบคุมสิ่งต่าง ๆ จากทุกที่ในโลก สมบูรณ์แบบสำหรับโครงการ IoT เกือบทุกโครงการ
บอร์ดพัฒนาได้ติดตั้งโมดูล ESP-12E ที่มีชิป ESP8266 ที่มีไมโครโปรเซสเซอร์ Tensilica Xtensa® 32 บิต LX106 RISC ที่ทำงานที่ความถี่สัญญาณนาฬิกาที่ปรับได้ 80 ถึง 160 MHz และรองรับ RTOS
ชิป ESP-12E
- Tensilica Xtensa® 32 บิต LX106
- ความถี่นาฬิกา 80 ถึง 160 MHz
- RAM ภายใน 128kB
- แฟลชเสริมภายนอก 4MB
- ตัวรับส่งสัญญาณ Wi-Fi 802.11b/g/n

นอกจากนี้ยังมี RAM 128 KB และหน่วยความจำแฟลช 4MB (สำหรับโปรแกรมและที่เก็บข้อมูล) เพียงพอที่จะรองรับสตริงขนาดใหญ่ที่ประกอบกัน web หน้า ข้อมูล JSON/XML และทุกสิ่งที่เราส่งไปยังอุปกรณ์ IoT ในปัจจุบัน ESP8266 ผสานรวมตัวรับส่งสัญญาณ Wi-Fi 802.11b/g/n HT40 เข้าด้วยกัน จึงไม่เพียงแค่เชื่อมต่อกับเครือข่าย WiFi และโต้ตอบกับอินเทอร์เน็ตเท่านั้น แต่ยังสามารถตั้งค่าเครือข่ายของตนเองได้ ทำให้อุปกรณ์อื่นๆ เชื่อมต่อโดยตรงได้ มัน. สิ่งนี้ทำให้ ESP8266 NodeMCU ใช้งานได้หลากหลายยิ่งขึ้น
ความต้องการพลังงาน
ในฐานะที่เป็น vol . ปฏิบัติการtage range ของ ESP8266 คือ 3V ถึง 3.6V บอร์ดมาพร้อมกับ LDO voltage regulator เพื่อให้ปริมาตรtagคงที่ที่ 3.3V สามารถจ่ายกระแสไฟสูงถึง 600mA ได้อย่างน่าเชื่อถือ ซึ่งน่าจะเพียงพอเมื่อ ESP8266 ดึงมากถึง 80mA ในระหว่างการส่งสัญญาณ RF เอาต์พุตของตัวควบคุมยังถูกแยกออกไปที่ด้านใดด้านหนึ่งของบอร์ดและติดป้ายว่า 3V3 พินนี้สามารถใช้จ่ายไฟให้กับส่วนประกอบภายนอกได้
ความต้องการพลังงาน
- ปฏิบัติการฉบับที่tagอี: 2.5V ถึง 3.6V
- ตัวควบคุมออนบอร์ด 3.3V 600mA
- 80mA กระแสไฟในการทำงาน
- 20 μA ระหว่างโหมดสลีป

จ่ายไฟให้กับ ESP8266 NodeMCU ผ่านขั้วต่อ MicroB USB ออนบอร์ด หรือถ้าคุณมี 5V vol . ที่ได้รับการควบคุมtagแหล่งที่มา พิน VIN สามารถใช้ในการจัดหา ESP8266 และอุปกรณ์ต่อพ่วงได้โดยตรง
คำเตือน: ESP8266 ต้องใช้แหล่งจ่ายไฟ 3.3V และระดับลอจิก 3.3V สำหรับการสื่อสาร หมุด GPIO ไม่ทนต่อ 5V! หากคุณต้องการเชื่อมต่อบอร์ดกับส่วนประกอบ 5V (หรือสูงกว่า) คุณจะต้องทำการขยับระดับ
อุปกรณ์ต่อพ่วงและ I/O
ESP8266 NodeMCU มีพิน GPIO ทั้งหมด 17 พินที่แยกออกเป็นส่วนหัวของพินที่ทั้งสองด้านของบอร์ดพัฒนา หมุดเหล่านี้สามารถกำหนดให้กับงานอุปกรณ์ต่อพ่วงได้ทุกประเภท รวมไปถึง:
- ช่อง ADC - ช่อง ADC 10 บิต
- อินเทอร์เฟซ UART - อินเทอร์เฟซ UART ใช้เพื่อโหลดโค้ดแบบอนุกรม
- เอาต์พุต PWM - พิน PWM สำหรับ LED หรี่แสงหรือควบคุมมอเตอร์
- อินเทอร์เฟซ SPI, I2C และ I2S - อินเทอร์เฟซ SPI และ I2C เพื่อเชื่อมต่อเซ็นเซอร์และอุปกรณ์ต่อพ่วงทุกประเภท
- อินเทอร์เฟซ I2S – อินเทอร์เฟซ I2S หากคุณต้องการเพิ่มเสียงให้กับโครงการของคุณ
I/O แบบมัลติเพล็กซ์
- 1 ช่อง ADC
- 2 UART อินเทอร์เฟซ
- 4 เอาต์พุต PWM
- อินเทอร์เฟซ SPI, I2C และ I2S

ด้วยคุณสมบัติพินมัลติเพล็กซ์ของ ESP8266 (อุปกรณ์ต่อพ่วงหลายตัวมัลติเพล็กซ์บนพิน GPIO เดียว) หมายถึงพิน GPIO เดียวสามารถทำหน้าที่เป็น PWM/UART/SPI
สวิตช์ออนบอร์ดและไฟ LED
ESP8266 NodeMCU มีสองปุ่ม ปุ่มหนึ่งที่มีเครื่องหมาย RST อยู่ที่มุมบนซ้ายคือปุ่มรีเซ็ต ซึ่งแน่นอนว่าใช้เพื่อรีเซ็ตชิป ESP8266 ปุ่ม FLASH อีกปุ่มหนึ่งที่มุมล่างซ้ายคือปุ่มดาวน์โหลดที่ใช้ขณะอัปเกรดเฟิร์มแวร์
สวิตช์และตัวชี้วัด
- RST – รีเซ็ตชิป ESP8266
- FLASH – ดาวน์โหลดโปรแกรมใหม่
- ไฟ LED สีฟ้า – ผู้ใช้สามารถตั้งโปรแกรมได้

บอร์ดยังมีไฟ LED ซึ่งผู้ใช้สามารถตั้งโปรแกรมได้และเชื่อมต่อกับพิน D0 ของบอร์ด
การสื่อสารแบบอนุกรม
บอร์ดนี้ประกอบด้วย CP2102 USB-to-UART Bridge Controller จาก Silicon Labs ซึ่งแปลงสัญญาณ USB เป็นซีเรียล และช่วยให้คอมพิวเตอร์ของคุณสามารถตั้งโปรแกรมและสื่อสารกับชิป ESP8266 ได้
การสื่อสารแบบอนุกรม
- CP2102 ตัวแปลง USB เป็น UART
- ความเร็วในการสื่อสาร 4.5 Mbps
- รองรับการควบคุมการไหล

หากคุณมีไดรเวอร์ CP2102 เวอร์ชันเก่าติดตั้งอยู่บนพีซีของคุณ เราขอแนะนำให้อัปเกรดทันที
ลิงค์สำหรับอัพเกรดไดร์เวอร์ CP2102 – https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
ESP8266 Pinout NodeMCU
ESP8266 NodeMCU มีทั้งหมด 30 พินที่เชื่อมต่อกับโลกภายนอก การเชื่อมต่อมีดังนี้:
เพื่อความง่าย เราจะสร้างกลุ่มของหมุดที่มีฟังก์ชันการทำงานที่คล้ายคลึงกัน
พินไฟฟ้า มีสี่พินพลังงาน ได้แก่. หนึ่งพิน VIN และพิน 3.3V สามอัน สามารถใช้พิน VIN เพื่อจ่ายไฟให้กับ ESP8266 และอุปกรณ์ต่อพ่วงได้โดยตรง หากคุณมีแรงดันไฟฟ้า 5V ที่ได้รับการควบคุมtagแหล่งที่มาของอี พิน 3.3V เป็นเอาต์พุตของโวลุ่มออนบอร์ดtagอี เรกูเลเตอร์ พินเหล่านี้สามารถใช้จ่ายไฟให้กับส่วนประกอบภายนอกได้
GND เป็นพินกราวด์ของบอร์ดพัฒนา NodeMCU ของ ESP8266 I2C Pins ใช้สำหรับเชื่อมต่อเซ็นเซอร์ I2C และอุปกรณ์ต่อพ่วงทุกประเภทในโครงการของคุณ รองรับทั้ง I2C Master และ I2C Slave ฟังก์ชันอินเทอร์เฟซ I2C สามารถรับรู้ได้โดยทางโปรแกรม และความถี่สัญญาณนาฬิกาสูงสุด 100 kHz ควรสังเกตว่าความถี่สัญญาณนาฬิกา I2C ควรสูงกว่าความถี่สัญญาณนาฬิกาที่ช้าที่สุดของอุปกรณ์สเลฟ
หมุด GPIO ESP8266 NodeMCU มีพิน GPIO 17 พิน ซึ่งสามารถกำหนดให้กับฟังก์ชั่นต่างๆ เช่น I2C, I2S, UART, PWM, IR Remote Control, ไฟ LED และปุ่มโดยทางโปรแกรม GPIO ที่เปิดใช้งานดิจิทัลแต่ละรายการสามารถกำหนดค่าให้ดึงขึ้นหรือเลื่อนลงภายใน หรือตั้งค่าเป็นอิมพีแดนซ์สูง เมื่อกำหนดค่าเป็นอินพุต ยังสามารถตั้งค่าให้ทริกเกอร์ขอบหรือทริกเกอร์ระดับเพื่อสร้างการขัดจังหวะของ CPU
ช่องเอดีซี NodeMCU ถูกฝังด้วย SAR ADC ที่มีความแม่นยำ 10 บิต ทั้งสองฟังก์ชั่นสามารถใช้งานได้โดยใช้ ADC ได้แก่ ทดสอบแหล่งจ่ายไฟ voltage ของพิน VDD3P3 และการทดสอบอินพุต voltage ของพิน TOUT อย่างไรก็ตาม ไม่สามารถดำเนินการได้พร้อมกัน
พิน UART ESP8266 NodeMCU มีอินเทอร์เฟซ UART 2 แบบ ได้แก่ UART0 และ UART1 ซึ่งให้การสื่อสารแบบอะซิงโครนัส (RS232 และ RS485) และสามารถสื่อสารได้สูงสุด 4.5 Mbps UART0 (พิน TXD0, RXD0, RST0 & CTS0) ใช้สำหรับการสื่อสาร รองรับการควบคุมของเหลว อย่างไรก็ตาม UART1 (พิน TXD1) มีเฉพาะสัญญาณส่งข้อมูล ดังนั้นจึงมักใช้สำหรับการพิมพ์บันทึก
หมุด SPI ESP8266 มี SPI สองตัว (SPI และ HSPI) ในโหมดสเลฟและมาสเตอร์ SPI เหล่านี้ยังสนับสนุนคุณลักษณะ SPI วัตถุประสงค์ทั่วไปดังต่อไปนี้:
- 4 โหมดเวลาของการถ่ายโอนรูปแบบ SPI
- สูงสุด 80 MHz และนาฬิกาแบ่ง 80 MHz
- สูงถึง 64 ไบต์ FIFO
พิน SDIO ESP8266 มี Secure Digital Input/Output Interface (SDIO) ซึ่งใช้เพื่อเชื่อมต่อการ์ด SD โดยตรง รองรับ 4-bit 25 MHz SDIO v1.1 และ 4-bit 50 MHz SDIO v2.0
หมุด PWM บอร์ดมี 4 ช่องสัญญาณของการปรับความกว้างพัลส์ (PWM) เอาต์พุต PWM สามารถนำไปใช้โดยทางโปรแกรมและใช้สำหรับขับมอเตอร์ดิจิตอลและไฟ LED ช่วงความถี่ PWM ปรับได้ตั้งแต่ 1000 μs ถึง 10000 μs กล่าวคือ ระหว่าง 100 Hz ถึง 1 kHz
พินควบคุม ใช้สำหรับควบคุม ESP8266 พินเหล่านี้รวมถึงพินเปิดใช้งานชิป (EN), พินรีเซ็ต (RST) และพิน WAKE
- พิน EN – ชิป ESP8266 เปิดใช้งานเมื่อดึงพิน EN สูง เมื่อดึง LOW ชิปจะทำงานโดยใช้พลังงานต่ำสุด
- พิน RST – พิน RST ใช้เพื่อรีเซ็ตชิป ESP8266
- พิน WAKE - พินปลุกใช้เพื่อปลุกชิปจากการหลับลึก
แพลตฟอร์มการพัฒนา ESP8266
มาต่อกันที่สิ่งที่น่าสนใจกันเลย! มีแพลตฟอร์มการพัฒนาที่หลากหลายที่สามารถติดตั้งโปรแกรม ESP8266 ได้ คุณสามารถใช้ Espruino – JavaScript SDK และเฟิร์มแวร์จำลอง Node.js อย่างใกล้ชิด หรือใช้ Mongoose OS – ระบบปฏิบัติการสำหรับอุปกรณ์ IoT (แพลตฟอร์มที่แนะนำโดย Espressif Systems และ Google Cloud IoT) หรือใช้ชุดพัฒนาซอฟต์แวร์ (SDK) ที่จัดเตรียมโดย Espressif หรือหนึ่งในแพลตฟอร์มที่ระบุไว้ใน WiKiPedia โชคดีที่ชุมชน ESP8266 ที่น่าทึ่งได้เลือก IDE ไปอีกขั้นด้วยการสร้างโปรแกรมเสริม Arduino หากคุณเพิ่งเริ่มต้นการเขียนโปรแกรม ESP8266 นี่คือสภาพแวดล้อมที่เราแนะนำให้เริ่มต้น และสภาพแวดล้อมที่เราจะจัดทำเป็นเอกสารในบทช่วยสอนนี้
โปรแกรมเสริม ESP8266 สำหรับ Arduino นี้อิงจากผลงานที่น่าทึ่งของ Ivan Grokhotkov และชุมชน ESP8266 ที่เหลือ ตรวจสอบที่เก็บ ESP8266 Arduino GitHub สำหรับข้อมูลเพิ่มเติม
การติดตั้ง ESP8266 Core บน Windows OS
มาดำเนินการติดตั้งแกน Arduino ของ ESP8266 กันต่อ สิ่งแรกคือมี Arduino IDE ล่าสุด (Arduino 1.6.4 หรือสูงกว่า) ติดตั้งอยู่บนพีซีของคุณ หากยังไม่มี เราแนะนำให้อัปเกรดทันที
ลิงค์สำหรับ Arduino IDE – https://www.arduino.cc/en/software
ในการเริ่มต้น เราจะต้องอัปเดตผู้จัดการบอร์ดด้วยกำหนดเอง URL. เปิด Arduino IDE แล้วไปที่ File > การตั้งค่า จากนั้นคัดลอกด้านล่าง URL เป็นผู้จัดการคณะกรรมการเพิ่มเติม URLกล่องข้อความที่ด้านล่างของหน้าต่าง: http://arduino.esp8266.com/stable/package_esp8266com_index.json
กดตกลง จากนั้นไปที่ Board Manager โดยไปที่ Tools > Boards > Boards Manager ควรมีรายการใหม่สองสามรายการนอกเหนือจากบอร์ด Arduino มาตรฐาน กรองการค้นหาของคุณโดยพิมพ์ esp8266 คลิกที่รายการนั้นและเลือกติดตั้ง
คำจำกัดความและเครื่องมือของบอร์ดสำหรับ ESP8266 ประกอบด้วย gcc, g++ ชุดใหม่ทั้งหมด และไบนารีที่คอมไพล์ที่มีขนาดใหญ่พอสมควรอื่นๆ ดังนั้นอาจใช้เวลาสักครู่ในการดาวน์โหลดและติดตั้ง (ไฟล์เก็บถาวร file คือ ~110MB) เมื่อการติดตั้งเสร็จสิ้น จะมีข้อความ INTALLED ปรากฏขึ้นข้างรายการ ตอนนี้คุณสามารถปิด Board Manager
Arduino Example: กะพริบตา
เพื่อให้แน่ใจว่าแกน ESP8266 Arduino และ NodeMCU ได้รับการตั้งค่าอย่างเหมาะสม เราจะอัปโหลดแบบร่างที่ง่ายที่สุด - The Blink! เราจะใช้ LED ออนบอร์ดสำหรับการทดสอบนี้ ดังที่ได้กล่าวไว้ก่อนหน้านี้ในบทช่วยสอนนี้ พิน D0 ของบอร์ดเชื่อมต่อกับ LED สีน้ำเงินบนบอร์ด & ผู้ใช้สามารถตั้งโปรแกรมได้ สมบูรณ์แบบ! ก่อนที่เราจะอัปโหลดภาพสเก็ตช์และเล่นกับ LED เราต้องแน่ใจว่าได้เลือกบอร์ดใน Arduino IDE อย่างถูกต้อง เปิด Arduino IDE แล้วเลือกตัวเลือก NodeMCU 0.9 (โมดูล ESP-12) ใต้เมนู Arduino IDE > เครื่องมือ > บอร์ด
ตอนนี้ เสียบ ESP8266 NodeMCU เข้ากับคอมพิวเตอร์ของคุณผ่านสาย micro-B USB เมื่อเสียบปลั๊กบอร์ดแล้ว ควรกำหนดพอร์ต COM เฉพาะ สำหรับเครื่อง Windows คำสั่งนี้จะเหมือนกับ COM# และในเครื่อง Mac/Linux จะเป็นไฟล์ /dev/tty.usbserial-XXXXXX เลือกพอร์ตอนุกรมนี้ภายใต้เมนู Arduino IDE > เครื่องมือ > พอร์ต เลือกความเร็วในการอัพโหลดด้วย : 115200
คำเตือน: ต้องให้ความสนใจมากขึ้นในการเลือกบอร์ด เลือกพอร์ต COM และเลือกความเร็วในการอัพโหลด คุณอาจได้รับข้อผิดพลาด espcomm_upload_mem ขณะอัปโหลดภาพสเก็ตช์ใหม่ หากไม่สามารถทำได้
เมื่อเสร็จแล้วให้ลองอดีตampภาพร่างด้านล่าง
การตั้งค่าว่าง()
{pinMode(D0, OUTPUT);}วนเป็นโมฆะ ()
{digitalWrite(D0, สูง);
ล่าช้า(500);
digitalWrite(D0, ต่ำ);
ล่าช้า(500);
เมื่ออัปโหลดรหัสแล้ว ไฟ LED จะเริ่มกะพริบ คุณอาจต้องแตะปุ่ม RST เพื่อรับ ESP8266 เพื่อเริ่มร่างภาพ
เอกสาร / แหล่งข้อมูล
![]() |
ENGINNERS ESP8266 บอร์ดพัฒนา NodeMCU [พีดีเอฟ] คำแนะนำ ESP8266 บอร์ดพัฒนา NodeMCU, ESP8266, บอร์ดพัฒนา NodeMCU |





