Ⅰ 8051單片機外擴3片數據存儲器6264,我不會做,大佬幫幫忙
連接彎冊指虧完整了:埋逗宏
Ⅱ 簡述在MCS-51單片機系統中,外接程序存儲器和數據存儲器、地址線、數據線、控制線的接法
外接程序存儲器的數據匯流排接MCS-51的P0和P1口,地址線看你是多少位,地8為接P0口,高位接P1口。
數據和地址是通過控制線ALE等區分的,當寫地址是ALE有效鎖存地址,接著讀寫數據。
Ⅲ 為什麼8051單片機外擴存儲器時,P0口要外接鎖存器,而P2口卻不接
P0口是數據匯流排與低8位地址匯流排復用的,所以要加鎖存器來鎖存低8位地址,且這個鎖存器的LE端要接單片機的地址鎖存輸出端ALE,P2口只做高8位地址匯流排,所以不需要鎖存,數據位寬為8位,地址位寬為16位(最大定址范圍為0XFFFF),使用這種方式的話,一般還要用到WR和RD信號。
其實你也可以不用這樣做,直接隨便用1組IO口來做數據匯流排,地址匯流排也可以隨便用IO來操作,只是程序寫起來不一樣,稍微麻煩一點。
Ⅳ 51單片機擴展外部數據存儲器6264,怎麼用C語言實現對其操作
2.擴展RAM編程基礎
(1)弄清擴展器件的地址
在圖7.2.5中,U3的ABC接單片機A13,A14,A15,所以片選信號對應地址最高位,即:「CBAxxxxx xxxxxxxx」(x為任意)。U4片選接CS1,即Y1,CBA=001,可得U4的地址范圍是0x2000~0x3fff。U5接CS3,即Y3,CBA=011,地址為0x6000~0x7fff。U6接CS4,即Y4,CBA=100,地址為0x8000~0x9fff。知道了器件地址,可以利用直接地址、外部數據指針來訪問存儲器。通過設置,也可以讓編譯器在擴展RAM中自動分配存儲單元。
(2)直接地址訪問
①向U4寫數據:
XBYTE[0x2000+addr]=dat; //addr為U4內部地址,取值為0~0x1fff;dat為數據。
②讀出U4數據:
dat=XBYTE[0x2000+addr];
也可以用頁訪問方式。頁訪問方式,實際就是先把16位地址高8位送P2口,通過低8位地址讀寫。
③按頁讀寫U4:
P2=0x20+page; // page為頁,取值為0x00~0x1F。
PBYTE[addr]=dat; // addr為頁內地址,取值為0x00~0xFF。
dat=PBYTE[addr];
④讀U6
dat=XBYTE[0x8000];//讀U6,地址取0x8000~0x9fff任何值,都一樣。
⑤寫U5
XBYTE[0x6000]=dat; //寫U5,地址取0x6000~0x7fff任何值,都一樣。
(3)數據指針
如,讀寫U4,可以這樣寫:
unsigned char xdata *p=0x3000; //聲明指針p,並初始指向0x3000單元
x=*p; //讀指針所指向的位置
p=p+1; //指針指向下一單元
*p=0x16; //向指針所指向的位置寫入數據
(4)讓編譯器自動分配存儲空間
①為了能讓編譯器自動分配存儲空間,並使用擴展RAM,必須設置擴展RAM地址。在Keil編程軟體中,點擊工具欄快捷圖標「 」,彈出目標選項對話框。按圖7.2.6所示,設置RAM起始地址和長度。
②變數聲明時使用xdata關鍵詞。如:
unsigned char xdata a;//變數a使用擴展RAM空間。
特別注意,擴展RAM直接地址訪問方式與自動分配存儲空間方式最好不要混用,否則可能產生沖突。
摘自《單片機控制裝置安裝與調試》下冊,雷林均主編
Ⅳ 當單片機系統需要外擴展存儲器時,為什麼只能由p0
當51單片機正衡悄系統需要外擴展存儲器時,P0口復用口,先輸出低8位地址,然後P0做數據線攔局,讀舉渣/寫外部存儲器。
這是沒有為什麼只能用P0,因為當初的單片機就是這么設計的,沒有理由。
Ⅵ STC單片機怎樣外接存儲器
你好!
stc單片機外接存儲器起始很簡單!你可以接spi介面的存儲器,或者i2c介面的都可以!需要說明的是spi與i2c介面的速度不快!如果數據量大又要求速度的話,那麼還是用傳統的並行擴展存儲器的方法吧!相同的主頻,並行要比他們快8倍多!而且程序編寫簡單!缺點是佔用布線不方便,佔用電路板空間大!
我的回答你還滿意嗎~~
Ⅶ 單片機外接存儲器的電路怎麼畫
一是地滾族址線,二是數據線,三是控制線,各有各的連接方法,不同的單片機接法不太一樣,有數據地址分離的,還有復用的茄則,你得根據CPU和要連接的晶元大納弊的邏輯和時序來設計。
你還可以參考該單片機的典型應用電路,或者別人的應用電路,照貓畫虎就行了。
Ⅷ 單片機8052如何外擴1M數據存儲器
嘿嘿 俺來為你解決吧
1 采冊迅用翻頁法 :
使用p1.3 p1.2 p1.1 p1.0 通過4:16解碼器做16選一 當做耐姿扮16個存儲器62512晶元的片選
P2口 P0口做為地址匯流排 A15~A0 直接連接存昌灶儲器62512晶元。
2 每一頁 為64K 共16頁 存儲器總容量=64K×16=1024K=1M
呵呵 可惜沒有加分啊 就選滿意回答吧
Ⅸ 單片機外部擴展存儲器的四個I/O介面各起什麼作用
當單片機外部擴展存儲器一般要採用匯流排擴展:
1P0口將作為匯流排的低8位地址線和8位返顫數據線使用
2P2口將作為匯流排的高8位地址線使用沒有使用的乎咐高位地址線將作為存儲器的片選信號
3P3口的P3.6和P3.7將作為片外數據存儲器的寫信號、讀信號即做控制匯流排使用
單片機的29引腳PSEN將作為片外程序存儲器的讀信號。
P3口其它引腳可作為專用線使用歲世純如定時計數器的輸入、外部中斷0和1的輸入、串列口的
數據輸入、輸出線。
4P1口可以做I/O口使用連接輸入/輸出設備
Ⅹ 8051單片機晶元外接兩片4K×8位程序存儲器晶元和一片4K×8位數據存儲器晶元,要求RAM的起始
如果題目中的8051單片機特指80X51單片轎數機,則片內有4kB的ROM空間,映射為C:0000h~0FFFh。因拿做此兩片程序存儲器映射在C:1000h~13FFh以及C:1400h~17FFh。片外SRAM則按照題目要求,映射在X:8000h~83FFh。
程序存儲器1的片選為A[12:10]=100,程序存儲器2的片選為A[12:10]=101,片消帆衡外SRAM因無地址覆蓋,片選可設定為A[15]=1。
因此連線如下圖所示: