ข้ามไปที่เนื้อหาหลัก

ประสบการณ์ การใช้ Node MCU ESP8266 WIFI กับ I2C ตอนที่ 1

ในบางครั้ง อุปกรณ์ Electronics หรือ Computer ต้องมีการสื่อสารกัน ด้วยคุณสมบัติของอุปกรณ์ที่ต่างกัน จึงต้องมีช่องสื่อสารสำหรับการติดต่อ.
ที่เรามักรู้จักกัน คือ Serial Communication หรือ Com Port 
แต่มีปัญหาคือ ช่องสื่อสาร Serial มีจำกัด ทำให้ไม่สามารถติดต่อกับอุปกรณ์ได้หลาย ๆ ตัว 
หรือ หากใช้ Ethernet ก็อาจยุ่งยากเกินไป 

ช่องสื่อสารที่น่าสนใจคือ I2C สามารถ สื่อสารกันได้ตาม รูปข้างล่างนี้
ทำความรู้จักกับ  I2C ว่ามันคืออะไร  หากสนใจลองหาอ่านได้ตาม link ข้างล่างนะครับ

1.https://en.wikipedia.org/wiki/I²C
2.เปรียบเทียบ I2C และ SPI อ่านได้ตาม Link นี้ครับ
3.I2C สำหรับ Arduino https://www.arduino.cc/en/Reference/Wire
4. Link นี้ของ คนไทย เขียนละเอียดดีครับ http://aimagin.com/blog/การใช้งานพอร์ตสื่อสาร-i2c/?lang=th



ในบางครั้ง อุปกรณ์ Electronics หรือ Computer ต้องมีการสื่อสารกัน ด้วยคุณสมบัติของอุปกรณ์ที่ต่างกัน จึงต้องมีช่องสื่อสารสำหรับการติดต่อ ที่เรามักรู้จักกัน คือ Serial Communication หรือ Com Port ปัญหาคือ ช่องสื่อสาร Serial มีจำกัด ไม่สามารติดต่อกับอุปกรณ์ได้หลาย ๆ ตัว หรือ หากใช้ Ethernet ก็อาจยุ่งยากเกินไป ช่องสื่อสารที่น่าสนใจคือ I2C สามารถ สื่อสารกันได้ตาม รูปข้างล่างนี้




เราสามารถใช้ช่องทาง I2C ติดต่อกับ CPU หลาย ๆ ตัวได้ โดยแต่ละตัว จะทำหน้าที่แตกต่างกัน เช่น Raspberry Pi กับ Arduino  เปรียบเทียบกันง่าย ๆ คือ Arduino เหมาะสมเรื่อง การควบคุมอุปกรณ์ ส่วน Raspberry Pi อาจจะ ทำงานทางด้านการประมวลผล และ ฐานข้อมูล ได้ดีกว่า หรือ มีการพัฒนางานร่วมกัน หลาย ๆ คน ก็ได้

ปัญหาของผู้เขียน ตั้งโจทย์การทำงานดังนี้


1.ต้องการใช้ Node MCU 



2.ต้องการใช้ SD Card สำหรับเก็บข้อมูลบน Node Mcu



3.ต้องการใช้ จอแสดงผล LCD แบบ I2C 



โปรแกรมสำหรับการพัฒนาใช้ Arduino IDE

ในแต่ละรุ่นจะ มีการกำหนด I/O ตามข้างล่างนี้

Board               I2C / TWI pins
Uno, Ethernet     A4 (SDA), A5 (SCL)
Mega2560 20        (SDA), 21 (SCL)
Leonardo            2 (SDA), 3 (SCL)
Due                    20 (SDA), 21 (SCL), SDA1, SCL1

ESP 8266 I2C I/O อยู่ที่ใหน ?



สำหรับ ESP8266 กำหนดได้ตามนี้ครับ สามารถ กำหนดขา I/O เปลี่ยนไปมาได้ครับ ลองตามไปอ่านกันดูนะครับ




บทความนี้ยังมีต่อนะครับ คราวต่อไปจะมาพูดถึงการเขียนโปรแกรมใช้งานกันครับ

เรียนท่านผู้เยี่ยมชม

 ต้องขออภัย เกี่ยวกับบทความบางหัวข้อใน blog นี้ ที่ไม่มีความต่อเนื่องในบางบทความ. เนื่องจากเป็นการแชร์ประสบการณ์ การทำงาน ในงานพัฒนาด้าน Mini CNC . ที่เราคิดว่าอาจเป็นประโยชน์ต่อผู้ศึกษา หรือทำงานเกี่ยวกับด้านนี้.จึงนำมาเล่าสู่กันฟัง .
ส่วนงานหลักที่เราต้องรับผิดชอบคือการให้ความรู้เกี่ยวกับการใช้งาน Mini CNC ซึ่งเป็นสินค้าที่เราจำหน่าย และเราต้องรับผิดชอบดูแลลูกค้า.
ดังนั้นบทความหลัก จะเป็นเรื่องที่เกี่ยวกับ Mini CNC. อีกทั้งบทความเหล่านี้เขียนด้วยคนเพียงคนเดียว . ที่มีงานรับผิดชอบด้านอื่นด้วย . จึงมีเวลาไม่มากที่จะทำได้ทุกเรื่อง.
ขออธิบายให้เข้าใจนะครับ. หากท่านใดสนใจ ติดตาม หรือ มีคำถามสามารถสอบถามในส่วนแสดงความคิดเห็นมาได้ครับ ยินดีตอบ หากเราทราบ และมีความรู้ในด้านนั้น
ยกตัวอย่าง ตาม link นี้ครับ http://panmaneecnc.blogspot.com/2015/12/esp8266-wifi-app-inventor.html

และอยากขอเชิญชวนคนไทยให้มาสร้าง วัฒนธรรมการ การรับ และ การให้ ด้วยกันครับ เราอยากเห็นสังคมไทยมีความสามัคคี ไม่แบ่งแยก และ เห็น แก่ตัว หรือ เอาแต่พวกพ้องของตนเอง เพียงเท่านี้ประเทศไทยก็แข่งขันกับคนอื่นได้แล้วครับ

ขอขอบคุณในนาม panmaneecnc.com


ความคิดเห็น

  1. บทความอ่านง่ายดีครับ รอตอนต่อไปครับ

    ตอบลบ
  2. ยินดีแบ่งปันข้อมูลครับ อยากให้สังคมไทยมีความสร้างสรรค์ครับ

    ตอบลบ

แสดงความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

เครื่องกัดแม่พิมพ์เหล็กขนาดเล็กสำหรับงานกัดแม่พิมพ์พระ

สำหรับงานกัดแม่พิมพ์พระ ราคา 180,000.00 บาท พร้อม อบรม ดูแล 1 ปี

คีย์ลัดที่ใช้ในโปรแกรมเขียนแบบ Autocad

การใช้คีย์ลัด จะช่วยให้การเขียนแบบ มีความรวดเร็วขึ้น AR = ARRAY ในแบบกำหนดจำนวนและระยะห่าจากจุดอ้างอิง A = ARC เขียนเส้นโค้ง BR = BREAK ตัดเส้นที่ต่อเนื่องกัน ณ จุดที่เราทำการ break B = BLOCK ทำ block ใหม่ให้กับชิ้นงานที่เขียนขึ้นแล้ว CO,CP = COPY ทำชิ้นส่วนภาพที่เราเลือกไว้ให้สร้างขึ้นมาใหม่ ในลักษณะ เหมือนเดิมทุกประการ C = CIRCLE เขียนวงกลม CH = CHCOLOR เปลี่ยนสี CHA = CHAMFER ตัดมุมของรูปเหลี่ยมต่าง ๆ DT = DTEXT เขียนตัวหนังสือ DB = DIM VASELINE ให้ dimension แบบต่อเนื่องในแนวเส้นแรก DC = DIM CONTINUE ให้ dimension แบบต่อเนื่องในแนวและระดับเดียวกันหมด DV = DIM HORIZONTAL ให้ dimension แบบอยู่ในแนวเส้นราบ DD = DIM DIAMETER ให้ dimension แบบเส้นผ่านศูนย์กลางของวงกลม DS = DIM SCALE ตัวคูณ factor ของขนาดสเกลของ dimension DN = DIM NEWTEXT เปลี่ยน text DM = DIM MOVE การขยับ text ไปมา DAN = DIM ANGULAR วิธีการให้ dimension แบบเส้นโค้งเพื่อแสดงขนาดของมุม DL = DIM LEADER วิธีการให้dimension แบบชี่จุดตำแห่งที่เราต้องการ...

ความรู้เบื้องต้นสำหรับการสร้างงาน 3 มิติ ด้วย Artcam

โปรแกรม Artcam เป็นโปรแกรมออกแบบ งานนูนสูงต่ำ และ สร้าง Code สำหรับควบคุมการกัดงานของ CNC ผู้เขียนขอเล่าประสพการณ์ การเรียนรู้ เกี่ยวกับการทำงาน 3 มิติ นูนสูงต่ำเพื่อเป็นประโยชน์ต่อ สาธารณะชน และ ประกอบการตัดสินใจการจัดซื้อ จัดหา โปรแกรมดังกล่าวใว้ใช้งาน พอสังเขบดังนี้ 1.คุณสามารถ Download ตัวทดลองใช้งาน ได้ตาม Link นี้ 2.คุณสามารถซื้อหา โปรแกรม Artcam ได้ตาม Link นี้    หรือ ติดต่อซื้อได้ที่  http://www.delcam.com/th/ 3.Artcam manual Link การใช้โปรแกรม Artcam ผู้ใช้จะมีความคาดหวังสูงว่า โปรแกรมนี้จะช่วยทำงานออก แบบ3มิติ สำหรับงาน CNC ให้เป็นเรื่องง่าย โดยผู้ใช้ไม่ต้องทำอะไรมาก นั่นเป็นความเข้าใจที่ยังไม่ถูกต้องทั้งหมด  บทความนี้จะอธิบายหลักการการทำงาน ของโปรแกรม Artcam และ การนำไปใช้งาน รวมถึงการ นำข้อมูลจากโปรแกรมอื่น มาใช้งานใน Artcam ด้วยเช่นกัน เทคนิคเหล่านี้ทำได้หลายวิธี ดังนั้นผู้ใช้จำเป็นต้องมีการฝึกฝน ทักษะเบื้องต้นมาก่อน เทคนิคที่1 การเขียน 3D เบื้องต้น จากเส้น Vector ใน Artcam9 ผู้ใช้ จะต้องมีความเข้าใจเกี่ยวกับ พื้นฐานเบื้องต้น เรื่อง การสร้าง ...