24小時聯(lián)系電話:18217114652、13661815404
中文
行業(yè)資訊
接口芯片8255的擴展方法
一般而言,可編程接口芯片具有存儲器和地址線?。所謂可編程,是指CPU通過一條指令將一定的數(shù)據(jù)寫入接口芯片的某個存儲器中,接口芯片在接收到CPU發(fā)送的數(shù)據(jù)后自動轉(zhuǎn)換數(shù)據(jù)。然后執(zhí)行數(shù)據(jù)代表的動作
不同的CPU對接口芯片的處理方式不同。一些CPU處理接口芯片的內(nèi)存與CPU本身使用的內(nèi)存不同。接口芯片內(nèi)存的操作稱為I / O操作,內(nèi)存本身的操作用于CPU本身。這稱為內(nèi)存操作,并且I / O操作和內(nèi)存操作使用不同的指令。這稱為I / O端口的獨立尋址。
此方法的優(yōu)點是I / O端口不占用內(nèi)存的地址空間,并且內(nèi)存空間和I / O空間是獨立的。缺點是在CPU中單獨設(shè)置了I / O端口訪問指令,并且增加了CPU的復(fù)雜性。INTEL的8086系列采用了這種結(jié)構(gòu)。
另一種處理方式是將接口芯片?的存儲器視為外部數(shù)據(jù)存儲器,而無需單獨設(shè)置I / O端口的訪問指令。此方法稱為統(tǒng)一尋址,而8051采用此方法。
下面我們介紹接口芯片8255。
8255是并行接口擴展芯片。它具有一個要擴展的8位并行接口D0-D7,以及三個擴展的8位并行接口PA,PB,PC。通過其兩條地址線AO,A1選擇四個存儲器,即PA端口存儲器,PB端口存儲器,PC端口存儲器和控制端口存儲器。
當(dāng)A1A0為00時,8255將D0-D7連接到PA。
當(dāng)A1A0為01時,8255將D0-D7連接到PB。
當(dāng)A1A0為10時,8255將D0-D7連接到PC。
當(dāng)A1A0為11時,8255將D0-D7連接到內(nèi)部控制寄存器。
假設(shè)將兩個8K數(shù)據(jù)存儲器和一個8255混合并擴展到CPU的外部數(shù)據(jù)存儲器中,并且它們的片選信號以解碼方式連接。
解碼器74139的輸入連接到CPU的P2.5和P2.6。
當(dāng)P2.6和P2.5是00,該解碼器輸出端子YO是有效的,并且數(shù)據(jù)的第一片存儲器中選擇???梢钥闯?,第一片存儲器的邏輯地址為0000H-1FFFH和8000H-9FFFFH,每個物理單元有兩個邏輯地址
當(dāng)P2.6和P2.5為01時,解碼器輸出Y1有效,選擇第二條存儲器,第二條存儲器的地址為2000H-3FFFH和0AOOOH-OBFFFH。
當(dāng)P2.6和P2.5為10時,解碼器輸出Y2有效。選擇8255時,8255的邏輯地址為4000H-5FFFH和0C000H-0DFFFH。
當(dāng)P2.6和P2.5為11時,解碼器輸出Y3有效,并且未選擇任何存儲器,即,在這種情況下的地址是無效地址,包括6000H-7FFFH和0E000H-OFFFFH。