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

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

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



                    ๒.  กำหนดให�วงจรรวม 8255 (2) ซึ่่�งเป็็นช่องทางเขี�า-ออกขีองขี�อม้ลแบบขีนานขีนาด ๘ บิต่ ทำงาน

             ดังนี� ค่อ ช่องทาง A (Port 2A) และช่องทาง C คร่�งไบต่์บน (Port 2C upper nibble) เป็็นช่องทางสัญญาณเขี�า
             ส่วนช่องทาง B (Port 2B) และช่องทาง C คร่�งไบต่์ล่าง (Port 2C lower nibble) เป็็นช่องทางสัญญาณออก

                    ๓.  สร�างขี�อม้ลอย่างง่ายจาก 1 (=01h) ถ่ง 100 (=64h) รวม ๑๐๐ ไบต่์ ขี่�นในบัฟเฟอร์ด�านออก
             (obuf) โดยแสดงขี�อม้ลแต่่ละไบต่์ผ่านชุดแสดงผลแบบไดโอดเป็ล่งแสงต่ามวงจรในภาพื่ที� ๒

                    ๔.  เขีียนขี�อม้ลทั�งหมดจากบัฟเฟอร์ obuf ในขีั�นต่อน (๓) ลงในอีอีพื่ร็อมแบบอนุกรม AT24C256
             โดยแสดงขี�อม้ลทีละ ๑ ไบต่์ผ่านชุดแสดงผลแบบไดโอดเป็ล่งแสงต่ามภาพื่ที� ๒ ก่อนที�จะเขีียน ทั�งนี�โป็รแกรม

             ได�แบ่งขี�อม้ลออกเป็็น ๒ กลุ่ม กลุ่มแรกจำนวน ๖๔ ไบต่์ (จำนวนส้งสุดที�จะเขีียนได�ในแต่่ละรอบ) และกลุ่มที� ๒
             จำนวน ๓๖ ไบต่์

                    ๕.  อ่านขี�อม้ลทั�งหมด ๑๐๐ ไบต่์จากอีอีพื่ร็อม AT24C256 และเก็บลงไว�ในบัฟเฟอร์ด�านเขี�า (ibuf)
                    ๖.  ทวนสอบ (verify) ขี�อม้ลในบัฟเฟอร์ ibuf โดยการแสดงขี�อม้ลแต่่ละไบต่์ผ่านชุดแสดงผลแบบไดโอด

             เป็ล่งแสงต่ามภาพื่ที� ๒

                    ภาพื่ที� ๑๐ โป็รแกรมหลักที�ใช�สาธีิต่การต่่อป็ระสานแผงวงจรไมโครคอนโทรลเลอร์กับอีอีพื่ร็อมแบบ

             อนุกรม


              ;Interfacing the 8088 Microcontroller Board for Learning
              ;with a Serial EEPROM Under the I2C Protocol
              ;Output pin: 8255 (2) pin PC0 -|<|- ->pin SDA of serial EEPROM AT24C256
              ;Output pin: 8255 (2) pin PC1 -|<|- ->pin SCL of serial EEPROM AT24C256
              ;Input pin: 8255 (2) pin PC4 <-> SDA line
              ;Input pin: 8255 (2) pin PC5 <-> SCL line
              ;Program name: I2C-ROM.ASM
              ;Date: Sep 19, 2023
              ;use Borland's Turbo Assembler and Linker
              ;assemble: tasm I2C-ROM
              ;link: tlink /t I2C-ROM.OBJ, I2C-ROM.BIN
              ;burn I2C-ROM.BIN to 32-KB parallel EPROM
              ;or transfer it to 32-KB parallel EPROM emulator

              .model tiny
              .code
                     org 8000h      ;start address of system ROM (IC 27256)
              ;CONSTANTS for 8255 (2)
              ppi_port2a equ 28h    ;8255 (2) Port 2A
              ppi_port2b equ 29h    ;8255 (2) Port 2B
              ppi_port2c equ 2Ah    ;8255 (2) Port 2C
              ppi_ctrl_2 equ 2Bh    ;8255 (2) control port

              obuf  equ  0400h      ;address of output data buffer
              ibuf  equ  0470h      ;address of input data buffer
   23   24   25   26   27   28   29   30   31   32   33