Page 23 - AB050_8051單晶片實務與應用
P. 23
第二章 MCS-51 系統架構分析 2-7
2 擴充外部記憶體
MCS-51 在外面擴充程式記憶體時,P0 就當作位址匯流排
(A0~A7) 和資料匯流排 (D0~D7) 多工使用。而要使 P0 有位址
/資料匯流排的多工用途,我們必須在 P0 的外部加上一個 8 位元
栓鎖器,將 P0 上的位址與資料分開來。這個 A0~A7 與 P2 所
提供的 A8~A15,組合成一個 16 位元的位址匯流排,因此
MCS-51 可在外部擴充 64K 的記憶體,如圖 2-4 及圖 2-5 所示。
5. 第 29 腳 PSEN
讀取外部程式記憶體之致能信號 (Program Store Enable,PSEN) 是 MCS-51
用來讀取存放在外部程式記憶體的程式時,所用來讀取信號的輸出端,它通常
與外部程式記憶體的 OE 腳連接。
6. 第 30 腳 ALE
位址栓鎖致能腳 (Address Latch Enable,ALE),MCS-51 可以使用這支腳發
出信號,將 P0 上的位址匯流排信號 A0~A7 栓鎖在栓鎖器中,以使 P0 具有
資料/位址匯流排能力,常用的栓鎖器例如 74LS373 等,如圖 2-4 所示。
2-5 程式記憶體
MCS-51 系列單晶片中,8051/8751/AT89C51 提供內部 4096 Bytes(4KB) 的
程式記憶區,專供儲存程式指令碼。CPU 所執行的程式指令,即到這裏來提取,
8031 則不提供此方塊,指令須由外部程式區提取。若有內部程式記憶區時,CPU
可以利用 EA 腳選擇執行的程式,是由內部的程式區提取或由外部的程式區提取。
程式區的內容,只能讀出但不能寫入。
MCS-51 的程式記憶體最大可擴展至 64K Bytes 的記憶體容量,在
8051/8751/AT89C51 裡已有最低的 4K Bytes(位址由 0000H~0FFFH),因此還可
於外部再擴充 60K Bytes 的程式記憶體(位址由 1000H~FFFFH)。而 8031 內部
並沒有程式記憶體,因此全部的程式記憶體都需靠外部擴充。