Page 34 - The Journal of the Royal Society of Thailand
P. 34

วารสารราชบััณฑิิตยสภา
                                          ปีที� ๔๙ ฉบับที� ๑ มกราคม-เมษายน ๒๕๖๗

             24                การต่่อประสานแผงวงจรไมโครคอนโทรลเลอร์เพื่่�อการเรียนร้�กับหน่วยความจำอีอีพื่ร็อมแบบอนุกรมต่ามเกณฑ์์วิธีี I2C



             วิจารณ์

                    อัต่ราการส่ง-รับบิต่ขี�อม้ล (bit rate) ขีองระบบ I2C ในบทความนี�ยังค่อนขี�างช�า ค่อ ยังต่�ำกว่าอัต่รา

             การส่ง-รับบิต่ขีั�นต่�ำ (๑๐๐ กิโลบิต่ต่่อวินาที) ที�ระบบ I2C ควรทำได� สาเหตุ่ขีองเร่�องนี�ก็ค่อความถี�ขีองสัญญาณ
             นาฬิิกาที�ใช�ควบคุมการทำงานขีองหน่วยป็ระมวลผลกลางหร่อซึ่ีพื่ีย้ (วงจรรวม 8088) ในแผงวงจรไมโคร
             คอนโทรลเลอร์แม่ขี่ายมีค่าต่�ำ ค่อ มีค่าเพื่ียง ๕ เมกะเฮิรต่ซึ่์ (เวลา ๑ คาบซึ่ีพื่ีย้เท่ากับ ๐.๒ ไมโครวินาที) ทำให�

             รอบการเขีียนขี�อม้ลลงในอีอีพื่ร็อม (ต่ามที�ป็รากฏในกระบวนคำสั�ง i2c_wr) และรอบการอ่านขี�อม้ลจากอีอีพื่ร็อม

             (ต่ามที�ป็รากฏในกระบวนคำสั�ง i2c_rd) ใช�เวลาค่อนขี�างนาน จากการนับรวมจำนวนคาบเวลาที�ซึ่ีพื่ีย้ใช�
             สำหรับดำเนินคำสั�งภาษัาแอสเซึ่มบลีแต่่ละคำสั�ง (ต่ามขี�อม้ลใน Haskell, 1993: 348-359 และต่ามต่ัวอย่างที�
             แสดงไว�ในกระบวนคำสั�ง delay0 ต่อนท�ายขีองภาพื่ที� ๑๐) พื่บว่า การเขีียนขี�อม้ล ๑ บิต่ในกระบวนคำสั�ง

             i2c_wr ใช�เวลาอย่างน�อย ๑๕๖ คาบซึ่ีพื่ีย้ (เม่�อไม่ใช�คำสั�ง delay0) หร่อ ๓๑.๒ ไมโครวินาที ซึ่่�งให�อัต่ราการ

             ส่งบิต่ขี�อม้ลเท่ากับป็ระมาณ ๓๒ กิโลบิต่ต่่อวินาที ส่วนการเขีียนขี�อม้ล ๑ บิต่ในกระบวนคำสั�ง i2c_rd ใช�เวลา
             อย่างน�อย ๒๘๓ คาบซึ่ีพื่ีย้ (เม่�อไม่ใช�คำสั�ง delay0) หร่อ ๕๖.๖ ไมโครวินาที ซึ่่�งให�อัต่ราการรับบิต่ขี�อม้ลเท่ากับ
             ป็ระมาณ ๑๘ กิโลบิต่ต่่อวินาที ดังนั�น ในการใช�งานที�ต่�องการอัต่ราการส่ง-รับบิต่ขี�อม้ลส้งใกล�เคียง ๑๐๐ กิโล

             บิต่ต่่อวินาที เราต่�องใช�ต่ัวควบคุมหร่อไมโครคอนโทรลเลอร์แม่ขี่ายที�ทำงานได�เร็วกว่าซึ่ีพื่ีย้ 8088 หลายเท่า

                    บทความนี�อาจนำไป็ขียายผลในทางป็ฏิบัต่ิได�อย่างน�อย ๒ อย่าง อย่างแรกค่อการที�แผงวงจรไมโคร
             คอนโทรลเลอร์เพื่่�อการเรียนร้�ในที�นี�อาจดัดแป็รเป็็นวงจรแป็ลงขี�อม้ลแบบอนุกรมในระบบ USART หร่อระบบ
             RS-232 ไป็เป็็นขี�อม้ลแบบอนุกรมในระบบ I2C ทั�งนี�ก็เพื่ราะว่าแผงวงจรไมโครคอนโทรลเลอร์ดังกล่าว

             สามารถแลกเป็ลี�ยนขี�อม้ลแบบอนุกรมในระบบ USART หร่อระบบ RS-232 กับคอมพื่ิวเต่อร์ส่วนบุคคล (พื่ีซึ่ี)

             หร่อไมโครคอนโทรลเลอร์ต่ัวอ่�นได�อย้่ก่อนแล�ว ส่วนการขียายผลอย่างที� ๒ ก็ค่อว่า เราอาจนำไมโครคอนโทรลเลอร์
             ต่ัวอ่�นเขี�ามาต่่อกับขี่ายวงจร I2C ต่ามภาพื่ที� ๔ ร่วมกับแผงวงจรไมโครคอนโทรลเลอร์เพื่่�อการเรียนร้�และอีอีพื่ร็อม
             แบบอนุกรม AT24C256 โดยให�แผงวงจรไมโครคอนโทรลเลอร์เดิมกับไมโครคอนโทรลเลอร์ต่ัวใหม่ผลัดกันทำ

             หน�าที�เป็็นแม่ขี่าย ในขีณะที�อีอีพื่ร็อมเป็็นล้กขี่ายร่วมระหว่างต่ัวควบคุมทั�งสอง ด�วยวิธีีนี� เราจะสามารถแลก

             เป็ลี�ยนขี�อม้ลแบบอนุกรมระหว่างต่ัวควบคุมทั�งสองได�โดยอ�อม ค่อ อาศััยอีอีพื่ร็อมเป็็นต่ัวกลางสำหรับฝากขี�อม้ล


             บทสรุป

                    บทความนี�ได�นำเสนอการทดลองทางฮาร์ดแวร์และซึ่อฟต่์แวร์สำหรับการส่ง-รับขี�อม้ลแบบอนุกรมใน

             ระบบ I2C ระหว่างแผงวงจรไมโครคอนโทรลเลอร์เพื่่�อการเรียนร้�กับอีอีพื่ร็อมแบบอนุกรม AT24C256 โดย
             ฮาร์ดแวร์ที�ต่่อเพื่ิ�มเป็็นขี่ายวงจร และซึ่อฟต่์แวร์ภาษัาแอสเซึ่มบลีที�ใช�ไม่ซึ่ับซึ่�อนมากนัก การทดลองทางฮาร์ดแวร์
             และซึ่อฟต่์แวร์เพื่่�อการส่ง-รับขี�อม้ลแบบอนุกรมในบทความนี�ให�ผลเป็็นที�น่าพื่อใจ
   29   30   31   32   33   34   35   36   37   38   39