精簡ISA擴(kuò)展總線應(yīng)用
對應(yīng)的總線時(shí)序關(guān)系為:
2、用74’s邏輯器件擴(kuò)展8路輸入8路輸出
電路如下圖所示,用一片74HCT139做譯碼,則在讀300H端口(由于只有A0地址線參與譯碼,所以302H,304H等地址同樣也選通該片74HCT245)的時(shí)候,74HCT245將外部輸入的狀態(tài)送到數(shù)據(jù)總線,此值存儲在300H地址中,300H.D0為INPUT0,以此類推,300H.D7為INPUT7。輸入操作的C語言語句為:
Data = inportb ( 0x300 ); //把外部狀態(tài)存儲在0x300端口
同理,在寫300H端口的時(shí)候,74HCT273將數(shù)據(jù)總線上的數(shù)據(jù)鎖存,只有當(dāng)下一次再有數(shù)據(jù)輸出的時(shí)候此鎖存值才會改變。300H.D0為OUTPUT0,以此類推,300H.D7為OUTPUT7。當(dāng)系統(tǒng)復(fù)位或上電啟動時(shí),74HCT273的輸出清零。輸出操作的C語言語句為:
outportb ( 0x300, data ); //把輸出字節(jié)送到0x300端口
為了電平兼容起見,建議在選用上述器件的時(shí)候選擇HCT系列。
3、用精簡ISA總線進(jìn)行串口擴(kuò)展
在需要使用中斷控制的場合,利用擴(kuò)展中的IRQ中斷請求信號線,可以實(shí)現(xiàn)。以擴(kuò)展一片16C550為實(shí)例進(jìn)行說明,電路圖如下所示。
評論