<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統 > 設計應用 > 8031單片機程序存儲器EPROM的擴展實例

          8031單片機程序存儲器EPROM的擴展實例

          作者: 時間:2013-05-14 來源:網絡 收藏

          常用的芯片是(Erasable Programmable Read Only Memory)型(紫外線可擦除型), 如2716(2K×8)、2732(4K×8)、2764(8K×8)、27128(16K×8)、27256(32K×8)、27512(64K×8)等。另外,還有+5 V電可擦除E,如2816(2K×8)、2864(8K×8)等等。

          本文引用地址:http://www.ex-cimer.com/article/170512.htm

          紫外線擦除電可編程只讀是國內用得較多的。EPROM芯片上有一個玻璃窗口,在紫外線照射下,存儲器中的各位信息均變1,即處于擦除狀態(tài)。擦除干凈的EPROM可以通過編程器將應用固化到芯片中。

          如果程序總量不超過4 KB,一般選用具有內部ROM的。8051內部ROM只能由廠家將程序一次性固化,不適合小批量用戶和程序調試時使用,因此選用8751、8951的用戶較多。如果程序超過4 KB,用戶一般不會選用8751、8951,而是直接選用8031,利用外部存儲器來存放程序。

          實例:在80314 KB EPROM程序存儲器。

          選擇芯片

          本例要求選用8031,內部無ROM區(qū),無論程序長短都必須擴展程序存儲器(目前較少這樣使用,但擴展方法比較典型、實用)。

          在選擇程序存儲器芯片時,首先必須滿足程序容量,其次在價格合理情況下盡量選用容量大的芯片。這樣做的話,使用的芯片少,從而接線簡單,芯片存儲容量大,程序調整余量也大。如估計程序總長3 KB左右,最好是擴展一片4 KB的EPROM 2732,而不是選用2片2716(2 KB)。在單片機應用系統硬件設計中應注意,盡量減少芯片使用個數,使得電路結構簡單,提高可靠性,這也是8951比8031使用更加廣泛的原因之一。

          硬件電路圖

          8031單片機擴展一片2732程序存儲器電路如圖所示。

          8031單片機擴展一片2732程序存儲器電路

          芯片說明

          8031單片機芯片說明

          ①74LS373。74LS373是帶三態(tài)緩沖輸出的8D鎖存器,由于片機的三總線結構中,數據線與地址線的低8位共用P0口,因此必須用地址鎖存器將地址信號和數據信號區(qū)分開。74LS373的鎖存控制端G直接與單片機的鎖存控制信號ALE相連,在ALE的下降沿鎖存低8位地址。

          ②EPROM 2732。EPROM 2732的容量為4 K×8位。4 K表示有4×1024(22×210=212)個存儲單元,8位表示每個單元存儲數據的寬度是8位。前者確定了地址線的位數是12位(A0~A11),后者確定了數據線的位數是8位(O0~O7)。目前,除了串行存儲器之外,一般情況下,我們使用的都是8位數據存儲器。2732采用單一+5 V供電,最大靜態(tài)工作電流為100 mA,維持電流為35 mA,讀出時間最大為250 ns。2732的封裝形式為DIP24,管腳如圖所示。

          其中,A0~A11為地址線;O0~O7為數據線; 為片選線;OE/VPP為輸出允許/編程高壓。 除了12條地址線和8條數據線之外,CE為片選線,低電平有效。也就是說,只有當CE為低電平時,2732才被選中,否則,2732不工作。OE/VPP為雙功能管腳,當2732用作程序存儲器時,其功能是允許讀數據出來;當對EPROM編程(也稱為固化程序)時,該管腳用于高電壓輸入,不同生產廠家的芯片編程電壓也有所不同。當我們把它作為程序存儲器使用時,不必關心其編程電壓。

          連線說明:

          ① 地址線。單片機擴展片外存儲器時,地址是由P0和P2口提供的。圖6.2中,2732的12條地址線(A0~A11)中,低8位A0~A7通過鎖存器74LS373與P0口連接,高4位A8~A11直接與P2口的P2.0~P2.3連接,P2口本身有鎖存功能。注意,鎖存器的鎖存使能端G必須和單片機的ALE管腳相連。

          ② 數據線。2732的8位數據線直接與單片機的P0口相連。因此,P0口是一個分時復用的地址/數據線。

          ③ 控制線。CPU執(zhí)行2732中存放的程序指令時,取指階段就是對2732進行讀操作。注意,CPU對EPROM只能進行讀操作,不能進行寫操作。CPU對2732的讀操作控制都是通過控制線實現的。2732控制線的連接有以下幾條:

          CE :直接接地。由于系統中只擴展了一個程序存儲器芯片,因此,2732的片選端直接接地,表示2732一直被選中。若同時擴展多片,需通過譯碼器來完成片選工作。

          OE :接8031的讀選通信號端。在訪問片外程序存儲器時,只要端出現負脈沖,即可從2732中讀出程序。

          擴展程序存儲器地址范圍的確定

          單片機擴展存儲器的關鍵是搞清楚擴展芯片的地址范圍,8031最大可以擴展64 KB(0000H~FFFFH)。決定存儲器芯片地址范圍的因素有兩個:一個是片選端的連接方法,一個是存儲器芯片的地址線與單片機地址線的連接。在確定地址范圍時,必須保證片選端為低電平。

          本例中,2732的地址范圍為0000H~0FFFH:

          EPROM的使用

          存儲器擴展電路是單片機應用系統的功能擴展部分,只有當應用系統的軟件設計完成了,才能把程序通過特定的編程工具(一般稱為編程器或EPROM固化器)固化到2732中,然后再將2732插到用戶板的插座上(擴展程序存儲器一定要焊插座)。

          電路圖符號相關文章:電路圖符號大全


          存儲器相關文章:存儲器原理




          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();