สอนใช้งาน NodeMCU ESP8266 เชื่อมต่อส่งข้อมูลกับ Arduino แบบ I2C
์NodeMCU ESP8266 มีขา Analog เพียงแค่ 1 ขา ถ้าต้องการรับค่าแบบ Analog มากกว่า 1 ช่องทำได้หลายวิธี เช่นต่อ IC ขยายขา Analog หรือถ้าใครมีบอร์ด Arduino อยู่แล้ว เราสามารถใช้ NodeMCU ต่อทำงานร่วมกับ Arduino ได้ โดยใช้ Arduino เป็นตัวอ่านค่า หรือทำงานตามที่บอร์ด NodeMCU ESP8266 สั่งงาน
ในตัวอย่างนี้เราจะใช้การสื่อสารแบบ I2C เพื่อคุยกันระหว่าง NodeMCU กับ Arduino Uno โดย NodeMCU จะเป็นตัวสั่งบอร์ด Arduino Uno ให้เปิด/ปิดไฟ แบบหลายตัวพร้อมกัน
ขาแบบ I2C ของ Arduino Uno คือขา A4 - SDA ,A5-SCL
ขาแบบ I2C ของ NodeMCU ESP8266 ปกติอยู่ที่ขา D2-SDA , D1-SCL
Tip : ขา I2C ของ NodeMCU ESP8266 สามารถใช้ได้ทุกขา ยกเว้นขา D0โดยกำหนดขาที่คำสั่งนี้ Wire.begin(SDA,SCL);
อุปกรณ์ที่ต้องใช้ใน บทความ สอนใช้งาน NodeMCU ESP8266 เชื่อมต่อ ส่งข้อมูลกับ Arduino แบบ I2C
วิธีการต่ออุปกรณ์ สอนใช้งาน NodeMCU ESP8266 เชื่อมต่อ ส่งข้อมูลกับ Arduino แบบ I2C
NodeMCU ESP8266 -> Arduino UNO R3 ตัวที่ 1
- GND -> GND
- Vcc -> 5V
- ขาD2 -> ขาA4
- ขาD1 -> ขาA5
NodeMCU ESP8266 -> Arduino UNO R3 ตัวที่ 2
- GND -> GND
- Vcc -> 5V
- ขาD2 -> ขาA4
- ขาD1 -> ขาA5
อัพโหลดโคดตัวอย่าง Arduino NodeMCU ลงบอร์ด ดังนี้โคดสำหรับ NodeMCU ESP8266
---
โคดสำหรับ Arduino Uno ตัวที่ 1
---
โคดสำหรับ Arduino Uno ตัวที่ 2
---*
เมื่ออัพโหลดโคดจะเห็นไฟเปิด/ปิด ซึ่งมาจาก NodeMCU ส่งข้อมูล 0 หรือ 1 ไปให้กับบอร์ด Arduino Unoเมื่อบอร์ด Arduino Uno ได้รับข้อมูลก็จะนำมาประมวลผล เปิด/ปิดไฟ ตามที่เราเขียนโปรแกรมไว้
