單片機原理及其應用課件第七章1_第1頁
單片機原理及其應用課件第七章1_第2頁
單片機原理及其應用課件第七章1_第3頁
單片機原理及其應用課件第七章1_第4頁
單片機原理及其應用課件第七章1_第5頁
已閱讀5頁,還剩101頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

單片機原理及其應用(PrincipleandApplicationofSingleChipMicrocomputer)1單片機原理及其應用(PrincipleandApplic第1章概述第2章MCS-51單片機硬件結(jié)構(gòu)第3章MCS-51尋址方式和指令系統(tǒng)第4章MCS-51匯編程序設計第5章中斷系統(tǒng)第6章定時器/計數(shù)器及串行口第7章存儲器擴展第8章接口電路擴展第9章應用舉例2第1章概述2第7章MCS-51單片機系統(tǒng)擴展技術

7.1MCS-51單片機系統(tǒng)擴展的基本概念7.2存儲器地址空間分配7.3程序存儲器擴展技術7.4數(shù)據(jù)存儲器擴展技術7.5存儲器混合擴展技術7.6E2PROM的擴展技術7.7輸入/輸出口擴展技術3第7章MCS-51單片機系統(tǒng)擴展技術 7.1MCS-7.1MCS-51單片機系統(tǒng)擴展的基本概念7.1.1MCS-51單片機最小應用系統(tǒng)7.1.2MCS-51單片機的外部擴展性能47.1MCS-51單片機系統(tǒng)擴展的基本概念7.1.17.1.1MCS-51單片機最小應用系統(tǒng)

1.8051/8751最小應用系統(tǒng)(如圖7-1所示)。

由于集成度的限制,最小應用系統(tǒng)只能用作一些小型的控制單元。其應用特點是:(1)全部I/O口線均可供用戶使用。(2)內(nèi)部存儲器容量有限(只有4KB地址空間)。(3)應用系統(tǒng)開發(fā)具有特殊性。圖7-18051/8751最小應用系統(tǒng)57.1.1MCS-51單片機最小應用系統(tǒng)1.8051/2.8031最小應用系統(tǒng)8031片內(nèi)無程序存儲器,其最小應用系統(tǒng)應在片外擴展EPROM。圖7-2為用8031外接程序存儲器構(gòu)成的最小系統(tǒng)。圖7-28031最小應用系統(tǒng)PSEN62.8031最小應用系統(tǒng)圖7-28031最小應用系統(tǒng)PS7.1.2MCS-51單片機的外部擴展性能 1.MCS-51單片機的片外總線結(jié)構(gòu)MCS-51單片機片外引腳可以構(gòu)成如圖7-3所示的三總線結(jié)構(gòu):所有外部芯片都通過這三組總線進行擴展。圖7-3MCS-51系統(tǒng)擴展哈佛結(jié)構(gòu):程序存儲器與數(shù)據(jù)存儲器空間獨立馮·諾伊曼結(jié)構(gòu)(普林斯頓結(jié)構(gòu)):程序存儲器與數(shù) 據(jù)存儲器空間合用77.1.2MCS-51單片機的外部擴展性能 1.MCS-圖7-48031單片機總線構(gòu)造2.構(gòu)造系統(tǒng)總線

8圖7-48031單片機總線構(gòu)造2.構(gòu)造系統(tǒng)總線8(1)P0口作為低8位地址/數(shù)據(jù)總線(2)P2口作為高8位地址總線圖7-5地址總線擴展9(1)P0口作為低8位地址/數(shù)據(jù)總線(2)P2口作為高8位地(3)控制總線 ALE:低8位地址鎖存信號 /PSEN:程序存儲器讀信號 /EA:內(nèi)/外部程序存儲器選擇信號 /RD:外部數(shù)據(jù)存儲器讀信號 /WR:外部數(shù)據(jù)存儲器寫信號10(3)控制總線103.MCS-51單片機的系統(tǒng)擴展能力*當系統(tǒng)要大量配置外圍設備(擴展較多的I/O口)時,將占去大量的RAM地址。* 串行擴展技術:用并行3總線擴展是單片機應用中的主要方法。但是,擴展時,連線多,器件占據(jù)電路板空間較大。串行接口器件體積小,連線少(3-4根),可以簡化器件的連接。串行接口有三線的SPI,雙線的I2C。*當應用系統(tǒng)存儲擴展容量或擴展I/O口地址超過單片機地址總線范圍時,可用換體法解決。如圖7-6所示。

113.MCS-51單片機的系統(tǒng)擴展能力11圖7-6用I/O線來控制片外存儲器換體32kB32kB32kB32kBP2.7P1.01Y01Y11Y21Y31A1B1G12圖7-6用I/O線來控制片外存儲器換體32kB32kB37.2存儲器地址空間分配7.2.1存儲器讀寫控制EPROM:只讀,讀引腳/OE通常接/PSEN。RAM:可讀可寫,讀引腳/OE接/RD,寫引腳/WE接 /WR。7.2.2存儲器地址空間分配擴展多片存儲器、I/O接口:區(qū)分各個存儲器芯片和接口芯片是單片機擴展應用時要解決的問題。存儲空間的分配,使一個存儲單元對應一個地址,把ROM、RAM、I/O分配在不同的地址范圍。

137.2存儲器地址空間分配7.2.1存儲器讀寫控制7.21)線選法擴展存儲器

線選法:直接用高位地址作為存儲器(I/O芯片)的片選信號。把選中的地址線與存儲器的片選端相連即可。優(yōu)點:電路簡單、不用地址譯碼芯片。缺點:可尋址的器件數(shù)目受限、地址空間不連續(xù)、存儲單元地址不唯一,只用于簡單的系統(tǒng)。 單個存儲器芯片容量小于存儲空間容量時,選存儲單元分為選片和選片內(nèi)單元兩種選擇。通常用地址高位選片子(片選),地址低位作片內(nèi)單元選擇。片選信號是對地址總線進行譯碼獲得的。譯碼方法有:線(性)選法和(地址)譯碼法兩種形式。141)線選法擴展存儲器線選法:直接用高位地址作為存儲 某單片機系統(tǒng)需擴展8KB的EPROM(2732×2),4KB的RAM(6116×2)。地址連線見下圖。圖7-7線選法舉例2732有12根地址線,6116有11根地址線,連接低位地址。各片片選端接分別接高四位地址。15 某單片機系統(tǒng)需擴展8KB的EPROM(2732×2),4地址范圍確定

P2.7

P2.02732(1):0111-000000000000(7000H)0111-111111111111(7FFFH)

P2.6

P2.02732(2):1011-000000000000(B000H)1011-111111111111(BFFFH)

P2.4

P2.06116(1):1110-000000000000(E000H)1110-011111111111(E7FFH)

P2.4

P2.06116(1):1110-100000000000(E800H)1110-111111111111(EFFFH)6116(2):(D000H~D7FFH)(D800H~DFFFH)16地址范圍確定P2.72)譯碼法擴展存儲器

用譯碼器對高位地址進行譯碼,分配存儲空間。譯碼器輸出作為芯片的片選信號。它能有效利用存儲空間,適用于大容量多芯片存儲器擴展。

常用譯碼器芯片:74LS138(3-8譯碼器)172)譯碼法擴展存儲器用譯碼器對高位地址進行譯碼,分擴展8片8KB的RAM6264,只需將64KB分成8個8KB空間。

圖中可見所有的地址線都參與了地址譯碼,稱為全地址譯碼。各個存儲單元有惟一的地址。圖7-864KB地址空間分配18擴展8片8KB的RAM6264,只需將64KB分成8個8K如何把64KB劃分成每塊4KB的空間?4×8=32KB,需15根地址參加譯碼。12根用于片內(nèi)單元譯碼,3根用于片選譯碼。P2.7未參與譯碼,但它決定了選擇前32KB還是后32KB??赡茉斐煽臻g重疊。下圖用P2.7控制138,選擇了前32KB空間。圖7-932KB地址空間分配19如何把64KB劃分成每塊4KB的空間?圖7-932KB地址7.2.2外部地址鎖存器1.74LS37374LS373是三態(tài)8D鎖存器。/OE:輸出允許G:輸入鎖存選通鎖存2.74LS573

功能與74LS373一樣,引腳排列不同。圖7-10373引腳與結(jié)構(gòu)圖7-11573引腳207.2.2外部地址鎖存器1.74LS373/OE:輸出允7.3程序存儲器擴展技術 7.3.1程序存儲器簡介7.3.2程序存儲器操作時序7.3.3EPROM擴展電路217.3程序存儲器擴展技術 7.3.1程序存儲器簡介27.3.1程序存儲器簡介1.程序存儲器的類型程序存儲器一般在工作時是只讀的(ROM)(1)掩模ROM (2)PROM 僅用于批量生產(chǎn)。 僅一次可編程。(3)EPROM 可多次編程,紫外線擦除。(4)E2PROM 可多次編程,電擦除。寫入速度慢。(5)FlashROM 可多次編程,電擦除。寫入速度快。可替代E2PROM。很多單片機已將FlashROM做在片內(nèi)。227.3.1程序存儲器簡介1.程序存儲器的類型222.常用EPROM芯片27系列Vcc:工作電壓 Vpp:編程電壓Im:最大靜態(tài)電流 Is:維持電流TRM:最大讀取時間232.常用EPROM芯片27系列Vcc:工作電壓 /CE:片選/OE:輸出允許讀出:/CE=0,未選中:/CE=1,/OE=X圖7-12常用EPROM芯片引腳圖24/CE:片選/OE:輸出允許圖7-12常用E圖7-13外部程序存儲器操作時序7.3.2程序存儲器操作時序/PSEN接EPROM的/OE端。每機器周期,ALE出現(xiàn)兩次,下降沿鎖存PCL。/PSEN變低時,讀入指令。25圖7-13外部程序存儲器操作時序7.3.2程序存儲器操圖7-14外部程序存儲器操作時序/PSEN接EPROM的/OE端。第一個機器周期S2時,ALE下降沿鎖存PCL。S3時,讀入指令。S5時ALE下降沿鎖存低數(shù)據(jù)地址。第二個機器周期總線給數(shù)據(jù)存儲器用。執(zhí)行一次MOVX指令將丟失一次ALE脈沖。26圖7-14外部程序存儲器操作時序/PSEN接EPROGOE7.3.3EPROM擴展電路1.2764AEPROM擴展電路地址范圍:0000000000000H~1111111111111H=0000H~1FFFH圖7-152764EPROM擴展電路27GOE7.3.3EPROM擴展電路1.2764AEP2.27128EPROM擴展電路地址范圍:00000000000000H~11111111111111H=0000H~3FFFH圖7-1627128EPROM擴展電路282.27128EPROM擴展電路地址范圍:000000地址分配:27128(1):0000H~3FFFH 27128(2):4000H~7FFFH 27128(3):8000H~BFFFH 27128(4):C000H~FFFFH3.四片27128EPROM擴展電路(1)(2)(3)(4)圖7-17多片EPROM擴展電路29地址分配:27128(1):0000H~3FFFH3.四7.4數(shù)據(jù)存儲器擴展 7.4.1常用靜態(tài)RAM芯片7.4.2數(shù)據(jù)存儲器操作時序7.4.3靜態(tài)RAM擴展電路307.4數(shù)據(jù)存儲器擴展 7.4.1常用靜態(tài)RAM芯片3

常用的靜態(tài)RAM芯片有6116(2k×8),6264(8k×8),62128(16k×8),62256(32k*8)等。7.4.1常用靜態(tài)RAM芯片/CE:片選/OE:讀選通/WE:寫允許CS:6264片選圖7-18常用RAM引腳圖31常用的靜態(tài)RAM芯片有6116(2k×8),6264(7.4.2數(shù)據(jù)存儲器操作時序1.ALE高電平期間,地址變?yōu)橛行?。下降沿鎖存低8位地址。2.在第一周期S6狀態(tài),P0浮空。3.在第二周期S1狀態(tài)起,/RD有效。存儲器指定地址單元送出數(shù)據(jù),進入P0。S2狀態(tài)CPU讀入數(shù)據(jù)。4.S3狀態(tài)末/RD變無效。S4S2S5S6S1S3第一機器周期第二機器周期圖7-19片外RAM操作時序327.4.2數(shù)據(jù)存儲器操作時序1.ALE高電平期間,地1.ALE高電平期間,地址變?yōu)橛行АO陆笛劓i存低8位地址。2.在第一周期S6狀態(tài),P0浮空。3.在第二周期S1狀態(tài)起,/WR有效。CPU輸出數(shù)據(jù)到P0,在地址譯碼和/WR作用下,P0上數(shù)據(jù)進入相應的存儲單元。4.S3狀態(tài)末/WR變無效。圖7-20片外RAM操作時序331.ALE高電平期間,地址變?yōu)橛行АO陆笛劓i存低8位地址7.4.3靜態(tài)RAM擴展電路1.單片6264靜態(tài)RAM擴展地址范圍:0××0

000000000000H~0××11111

11111111H0000H~1FFFH,2000H~3FFFH……圖7-216264擴展圖347.4.3靜態(tài)RAM擴展電路1.單片6264靜態(tài)RAM擴IC1地址:1100000000000000~1101111111111111(C000H~DFFFH)IC2地址:1010000000000000~1011111111111111(A000H~BFFFH)IC3地址:0110000000000000~0111111111111111(6000H~7FFFH)2.多片6264靜態(tài)RAM擴展圖7-22線選法3片6264擴展圖35IC1地址:1100000000000000~1101IC1地址:0000

000000000000~0011111111111111(0000H~3FFFH)IC2地址:0100

000000000000~0111111111111111(4000H~7FFFH)IC3地址:1000

000000000000~1011111111111111(8000H~BFFFH)IC4地址:1100

000000000000~1111111111111111(C000H~FFFFH)3.多片62128靜態(tài)RAM擴展圖7-23譯碼器法片外存儲器擴展圖36IC1地址:0000000000000000~0017.5存儲器混合擴展技術

前面分別介紹了程序存儲器和數(shù)據(jù)存儲器的單獨擴展技術。在實際應用中往往ROM和RAM都要擴展。ROM讀用/PSEN控制,RAM讀寫用/RD和/WR控制。1.線選法擴展2片6264和2片2764選片直接用高位地址。2.譯碼法擴展2片6264和2片2764選片用譯碼器的輸出。377.5存儲器混合擴展技術1.線選法擴展2片6264和2764(1)地址:x100000000000000~x1011111111111112764(2)地址:x010000000000000~x0111111111111116264(1)地址:x100000000000000~x1011111111111116264(2)地址:x010000000000000~x011111111111111圖7-24片外存儲器綜合擴展圖(線選法)382764(1)地址:x1000000000000002764(1)地址:0000

0000

00000000~0001

1111111111112764(2)地址:0010

0000

00000000~0011

1111

111111116264(3)地址:0100

0000

00000000~0101

1111

111111116264(4)地址:0110

0000

00000000~0111

1111

11111111圖7-25片外存儲器綜合擴展圖(譯碼器法)392764(1)地址:0000000000000000(1)ROM讀指令復位,PC=0000H。取指令期間,PCL送P0,經(jīng)373鎖存得地址A7~A0,直連2764低8位地址。PCH送P2得地址A15~A8。其中A12~A8與2764相應地址直連,A15~A13接譯碼器。0000H地址選中2764(1)的第一個地址,當/PSEN有效時,程序代碼就從P0口讀到單片機的指令譯碼器,進行譯碼,決定作何種操作。此后PC自動加一,取下一個單元的程序代碼。3.外擴存儲器電路工作原理40(1)ROM讀指令3.外擴存儲器電路工作原理40(2)RAM讀寫

在使用‘MOVX’類指令時,就是對外部RAM進行讀寫。例 MOV DPTR,#5000H MOVXA,@DPTR MOV50H,A

執(zhí)行第二條指令時,DPL送P0,并被373鎖存,DPH送P2。根據(jù)譯碼器以及片內(nèi)譯碼選中6264(1)的5000H單元,當/RD有效時,5000H單元的內(nèi)容進入P0,并送到A。MOVX @DPTR,A是執(zhí)行存儲器寫,與存儲器讀的過程類似。

MOVXA,@Ri和MOVX@Ri,A也是執(zhí)行對外部RAM讀寫。Ri的內(nèi)容送P0,形成低8位地址,P2口的內(nèi)容形成高位地址。41(2)RAM讀寫在使用‘MOVX’類指令時,就是對外【例7-1】(8-4)編程將程序存儲器TAB為首地址的32個單元內(nèi)容依次傳送到外部RAM7000H開始的區(qū)域。 MOV P2,#70H ;外部RAM高8位地址 MOV DPTR,#TAB MOV R0,#0AGIN:MOV A,R0 ;查表偏移量 MOVC A,@A+DPTR MOVX @R0,A ;存入外部RAM INC R0 CJNE R0,#32,AGINHERE:SJMP HERETAB: DB …,…42【例7-1】(8-4)編程將程序存儲器TAB為首地址的7.6E2PROM擴展技術E2PROM是一種電擦除可編程只讀存儲器,其主要特點是能在線擦除和改寫,并在斷電的情況下保持修改的結(jié)果。在智能化儀器、儀表、控制裝置等領域得到普遍采用。E2PROM既可當ROM用也可作RAM用。與RAM比,寫入速度很慢。擦除/寫入壽命有限。常用的E2PROM芯片主要有Intel2816/2816A,2817/2817A、2864A等。437.6E2PROM擴展技術E2PROM是一種電擦/CE:片選/OE:輸出允許/WE:寫允許RDY/BUSY:寫入狀態(tài)圖7-26常用E2PROM引腳圖44/CE:片選圖7-26常用E2PROM引腳圖4445451.2817AE2PROM擴展寫操作時忙(16ms)特性:寫入字節(jié)時自動擦除。寫入期間,RDY/BUSY變低,數(shù)據(jù)線呈現(xiàn)高阻態(tài)。圖7-272817A引腳圖461.2817AE2PROM擴展寫操作時忙(16ms)特性:地址范圍:0×××

×00000000000H~0×××

×111

11111111H0000H~07FFH,0800H~0FFFH……圖7-282817A與8031接口圖47地址范圍:0××××00000000000H~0×××WR1: MOV DPL,R3 MOV DPH,R4 MOVXA,@DPTR;取源數(shù)據(jù) INC DPTR MOV R3,DPL ;保存源數(shù)據(jù)指針 MOV R4,DPH MOV DPL,R1 ;取2817A地址 MOV DPH,R2 MOVX@DPTR,A;寫入2817AWAIT:JNB P1.0,WAIT;等待字節(jié)寫完 INC DPTR MOV R1,DPL ;保存2817A地址 MOV R2,DPH DJNZ R0,WR1;未完,繼續(xù) RET子程序入口參數(shù):R0:寫入的字節(jié)數(shù)R2R1:2817A地址R4R3:源數(shù)據(jù)地址對2817A寫操作的程序48WR1: MOV DPL,R3子程序入口參數(shù):對282.2864AE2PROM擴展圖7-292864A引腳圖492.2864AE2PROM擴展圖7-292864A2864A有四種工作方式:(1)維持方式:/CE=1,進入低功耗維持,數(shù)據(jù)線呈高阻態(tài)。(2)讀出方式:/CE=0,/OE=0,/WE=1,與普通存儲器相同。(3)寫入方式:頁寫入(16字節(jié)/頁),數(shù)據(jù)先寫入頁緩沖器(頁裝載),滿后再寫到相應地址單元(頁存儲)。 芯片要求寫入一字節(jié)數(shù)據(jù)的時間:3us<TBLW<20us。這個時間由限時定時器計算,在每個/WE下降沿開始啟動。一旦裝載完畢,沒有了/WE信號,限時定時器溢出,頁存儲操作開始。 字節(jié)寫入(4)數(shù)據(jù)查詢方式:軟件檢測頁存儲周期是否完成。 在頁存儲期間,執(zhí)行讀2864A操作,讀出的是最后寫入的字節(jié)。若頁存儲未完成,讀出的數(shù)據(jù)最高位是寫入字節(jié)最高位的反碼。502864A有四種工作方式:50地址范圍:0××0000000000000~0××11111

111111110000H~1FFFH,2000H~3FFFH……圖7-302864A與8031接口圖51地址范圍:0××0000000000000~0××1WR2: MOVX A,@DPTR;取數(shù)據(jù) MOV R2,A ;暫存?zhèn)洳? MOVX @R0,A;寫入2864A INC DPTR INC R0 CJNE R0,#0,NEXT;低地址未到零,轉(zhuǎn) INC P2 ;已到零,高位地址增1NEXT: DJNZ R1,WR2 ;頁面未裝完,繼續(xù) DEC R0 ;退到最后一個寫入的數(shù)地址LOOP: MOVX A,@R0 ;讀2864A XRL A,R2 ;異或檢查 JB ACC.7,LOOP;最高位不等,繼續(xù)查 RET ;一頁寫完,返回子程序入口參數(shù):R1:寫入的字節(jié)數(shù)(16)P2R0:2864A地址DPTR:源數(shù)據(jù)區(qū)地址對2864A裝載一個頁面的程序52WR2: MOVX A,@DPTR;取數(shù)據(jù)子程序入口參數(shù):5353單片機原理及其應用(PrincipleandApplicationofSingleChipMicrocomputer)54單片機原理及其應用(PrincipleandApplic第1章概述第2章MCS-51單片機硬件結(jié)構(gòu)第3章MCS-51尋址方式和指令系統(tǒng)第4章MCS-51匯編程序設計第5章中斷系統(tǒng)第6章定時器/計數(shù)器及串行口第7章存儲器擴展第8章接口電路擴展第9章應用舉例55第1章概述2第7章MCS-51單片機系統(tǒng)擴展技術

7.1MCS-51單片機系統(tǒng)擴展的基本概念7.2存儲器地址空間分配7.3程序存儲器擴展技術7.4數(shù)據(jù)存儲器擴展技術7.5存儲器混合擴展技術7.6E2PROM的擴展技術7.7輸入/輸出口擴展技術56第7章MCS-51單片機系統(tǒng)擴展技術 7.1MCS-7.1MCS-51單片機系統(tǒng)擴展的基本概念7.1.1MCS-51單片機最小應用系統(tǒng)7.1.2MCS-51單片機的外部擴展性能577.1MCS-51單片機系統(tǒng)擴展的基本概念7.1.17.1.1MCS-51單片機最小應用系統(tǒng)

1.8051/8751最小應用系統(tǒng)(如圖7-1所示)。

由于集成度的限制,最小應用系統(tǒng)只能用作一些小型的控制單元。其應用特點是:(1)全部I/O口線均可供用戶使用。(2)內(nèi)部存儲器容量有限(只有4KB地址空間)。(3)應用系統(tǒng)開發(fā)具有特殊性。圖7-18051/8751最小應用系統(tǒng)587.1.1MCS-51單片機最小應用系統(tǒng)1.8051/2.8031最小應用系統(tǒng)8031片內(nèi)無程序存儲器,其最小應用系統(tǒng)應在片外擴展EPROM。圖7-2為用8031外接程序存儲器構(gòu)成的最小系統(tǒng)。圖7-28031最小應用系統(tǒng)PSEN592.8031最小應用系統(tǒng)圖7-28031最小應用系統(tǒng)PS7.1.2MCS-51單片機的外部擴展性能 1.MCS-51單片機的片外總線結(jié)構(gòu)MCS-51單片機片外引腳可以構(gòu)成如圖7-3所示的三總線結(jié)構(gòu):所有外部芯片都通過這三組總線進行擴展。圖7-3MCS-51系統(tǒng)擴展哈佛結(jié)構(gòu):程序存儲器與數(shù)據(jù)存儲器空間獨立馮·諾伊曼結(jié)構(gòu)(普林斯頓結(jié)構(gòu)):程序存儲器與數(shù) 據(jù)存儲器空間合用607.1.2MCS-51單片機的外部擴展性能 1.MCS-圖7-48031單片機總線構(gòu)造2.構(gòu)造系統(tǒng)總線

61圖7-48031單片機總線構(gòu)造2.構(gòu)造系統(tǒng)總線8(1)P0口作為低8位地址/數(shù)據(jù)總線(2)P2口作為高8位地址總線圖7-5地址總線擴展62(1)P0口作為低8位地址/數(shù)據(jù)總線(2)P2口作為高8位地(3)控制總線 ALE:低8位地址鎖存信號 /PSEN:程序存儲器讀信號 /EA:內(nèi)/外部程序存儲器選擇信號 /RD:外部數(shù)據(jù)存儲器讀信號 /WR:外部數(shù)據(jù)存儲器寫信號63(3)控制總線103.MCS-51單片機的系統(tǒng)擴展能力*當系統(tǒng)要大量配置外圍設備(擴展較多的I/O口)時,將占去大量的RAM地址。* 串行擴展技術:用并行3總線擴展是單片機應用中的主要方法。但是,擴展時,連線多,器件占據(jù)電路板空間較大。串行接口器件體積小,連線少(3-4根),可以簡化器件的連接。串行接口有三線的SPI,雙線的I2C。*當應用系統(tǒng)存儲擴展容量或擴展I/O口地址超過單片機地址總線范圍時,可用換體法解決。如圖7-6所示。

643.MCS-51單片機的系統(tǒng)擴展能力11圖7-6用I/O線來控制片外存儲器換體32kB32kB32kB32kBP2.7P1.01Y01Y11Y21Y31A1B1G65圖7-6用I/O線來控制片外存儲器換體32kB32kB37.2存儲器地址空間分配7.2.1存儲器讀寫控制EPROM:只讀,讀引腳/OE通常接/PSEN。RAM:可讀可寫,讀引腳/OE接/RD,寫引腳/WE接 /WR。7.2.2存儲器地址空間分配擴展多片存儲器、I/O接口:區(qū)分各個存儲器芯片和接口芯片是單片機擴展應用時要解決的問題。存儲空間的分配,使一個存儲單元對應一個地址,把ROM、RAM、I/O分配在不同的地址范圍。

667.2存儲器地址空間分配7.2.1存儲器讀寫控制7.21)線選法擴展存儲器

線選法:直接用高位地址作為存儲器(I/O芯片)的片選信號。把選中的地址線與存儲器的片選端相連即可。優(yōu)點:電路簡單、不用地址譯碼芯片。缺點:可尋址的器件數(shù)目受限、地址空間不連續(xù)、存儲單元地址不唯一,只用于簡單的系統(tǒng)。 單個存儲器芯片容量小于存儲空間容量時,選存儲單元分為選片和選片內(nèi)單元兩種選擇。通常用地址高位選片子(片選),地址低位作片內(nèi)單元選擇。片選信號是對地址總線進行譯碼獲得的。譯碼方法有:線(性)選法和(地址)譯碼法兩種形式。671)線選法擴展存儲器線選法:直接用高位地址作為存儲 某單片機系統(tǒng)需擴展8KB的EPROM(2732×2),4KB的RAM(6116×2)。地址連線見下圖。圖7-7線選法舉例2732有12根地址線,6116有11根地址線,連接低位地址。各片片選端接分別接高四位地址。68 某單片機系統(tǒng)需擴展8KB的EPROM(2732×2),4地址范圍確定

P2.7

P2.02732(1):0111-000000000000(7000H)0111-111111111111(7FFFH)

P2.6

P2.02732(2):1011-000000000000(B000H)1011-111111111111(BFFFH)

P2.4

P2.06116(1):1110-000000000000(E000H)1110-011111111111(E7FFH)

P2.4

P2.06116(1):1110-100000000000(E800H)1110-111111111111(EFFFH)6116(2):(D000H~D7FFH)(D800H~DFFFH)69地址范圍確定P2.72)譯碼法擴展存儲器

用譯碼器對高位地址進行譯碼,分配存儲空間。譯碼器輸出作為芯片的片選信號。它能有效利用存儲空間,適用于大容量多芯片存儲器擴展。

常用譯碼器芯片:74LS138(3-8譯碼器)702)譯碼法擴展存儲器用譯碼器對高位地址進行譯碼,分擴展8片8KB的RAM6264,只需將64KB分成8個8KB空間。

圖中可見所有的地址線都參與了地址譯碼,稱為全地址譯碼。各個存儲單元有惟一的地址。圖7-864KB地址空間分配71擴展8片8KB的RAM6264,只需將64KB分成8個8K如何把64KB劃分成每塊4KB的空間?4×8=32KB,需15根地址參加譯碼。12根用于片內(nèi)單元譯碼,3根用于片選譯碼。P2.7未參與譯碼,但它決定了選擇前32KB還是后32KB??赡茉斐煽臻g重疊。下圖用P2.7控制138,選擇了前32KB空間。圖7-932KB地址空間分配72如何把64KB劃分成每塊4KB的空間?圖7-932KB地址7.2.2外部地址鎖存器1.74LS37374LS373是三態(tài)8D鎖存器。/OE:輸出允許G:輸入鎖存選通鎖存2.74LS573

功能與74LS373一樣,引腳排列不同。圖7-10373引腳與結(jié)構(gòu)圖7-11573引腳737.2.2外部地址鎖存器1.74LS373/OE:輸出允7.3程序存儲器擴展技術 7.3.1程序存儲器簡介7.3.2程序存儲器操作時序7.3.3EPROM擴展電路747.3程序存儲器擴展技術 7.3.1程序存儲器簡介27.3.1程序存儲器簡介1.程序存儲器的類型程序存儲器一般在工作時是只讀的(ROM)(1)掩模ROM (2)PROM 僅用于批量生產(chǎn)。 僅一次可編程。(3)EPROM 可多次編程,紫外線擦除。(4)E2PROM 可多次編程,電擦除。寫入速度慢。(5)FlashROM 可多次編程,電擦除。寫入速度快??商娲鶨2PROM。很多單片機已將FlashROM做在片內(nèi)。757.3.1程序存儲器簡介1.程序存儲器的類型222.常用EPROM芯片27系列Vcc:工作電壓 Vpp:編程電壓Im:最大靜態(tài)電流 Is:維持電流TRM:最大讀取時間762.常用EPROM芯片27系列Vcc:工作電壓 /CE:片選/OE:輸出允許讀出:/CE=0,未選中:/CE=1,/OE=X圖7-12常用EPROM芯片引腳圖77/CE:片選/OE:輸出允許圖7-12常用E圖7-13外部程序存儲器操作時序7.3.2程序存儲器操作時序/PSEN接EPROM的/OE端。每機器周期,ALE出現(xiàn)兩次,下降沿鎖存PCL。/PSEN變低時,讀入指令。78圖7-13外部程序存儲器操作時序7.3.2程序存儲器操圖7-14外部程序存儲器操作時序/PSEN接EPROM的/OE端。第一個機器周期S2時,ALE下降沿鎖存PCL。S3時,讀入指令。S5時ALE下降沿鎖存低數(shù)據(jù)地址。第二個機器周期總線給數(shù)據(jù)存儲器用。執(zhí)行一次MOVX指令將丟失一次ALE脈沖。79圖7-14外部程序存儲器操作時序/PSEN接EPROGOE7.3.3EPROM擴展電路1.2764AEPROM擴展電路地址范圍:0000000000000H~1111111111111H=0000H~1FFFH圖7-152764EPROM擴展電路80GOE7.3.3EPROM擴展電路1.2764AEP2.27128EPROM擴展電路地址范圍:00000000000000H~11111111111111H=0000H~3FFFH圖7-1627128EPROM擴展電路812.27128EPROM擴展電路地址范圍:000000地址分配:27128(1):0000H~3FFFH 27128(2):4000H~7FFFH 27128(3):8000H~BFFFH 27128(4):C000H~FFFFH3.四片27128EPROM擴展電路(1)(2)(3)(4)圖7-17多片EPROM擴展電路82地址分配:27128(1):0000H~3FFFH3.四7.4數(shù)據(jù)存儲器擴展 7.4.1常用靜態(tài)RAM芯片7.4.2數(shù)據(jù)存儲器操作時序7.4.3靜態(tài)RAM擴展電路837.4數(shù)據(jù)存儲器擴展 7.4.1常用靜態(tài)RAM芯片3

常用的靜態(tài)RAM芯片有6116(2k×8),6264(8k×8),62128(16k×8),62256(32k*8)等。7.4.1常用靜態(tài)RAM芯片/CE:片選/OE:讀選通/WE:寫允許CS:6264片選圖7-18常用RAM引腳圖84常用的靜態(tài)RAM芯片有6116(2k×8),6264(7.4.2數(shù)據(jù)存儲器操作時序1.ALE高電平期間,地址變?yōu)橛行?。下降沿鎖存低8位地址。2.在第一周期S6狀態(tài),P0浮空。3.在第二周期S1狀態(tài)起,/RD有效。存儲器指定地址單元送出數(shù)據(jù),進入P0。S2狀態(tài)CPU讀入數(shù)據(jù)。4.S3狀態(tài)末/RD變無效。S4S2S5S6S1S3第一機器周期第二機器周期圖7-19片外RAM操作時序857.4.2數(shù)據(jù)存儲器操作時序1.ALE高電平期間,地1.ALE高電平期間,地址變?yōu)橛行?。下降沿鎖存低8位地址。2.在第一周期S6狀態(tài),P0浮空。3.在第二周期S1狀態(tài)起,/WR有效。CPU輸出數(shù)據(jù)到P0,在地址譯碼和/WR作用下,P0上數(shù)據(jù)進入相應的存儲單元。4.S3狀態(tài)末/WR變無效。圖7-20片外RAM操作時序861.ALE高電平期間,地址變?yōu)橛行?。下降沿鎖存低8位地址7.4.3靜態(tài)RAM擴展電路1.單片6264靜態(tài)RAM擴展地址范圍:0××0

000000000000H~0××11111

11111111H0000H~1FFFH,2000H~3FFFH……圖7-216264擴展圖877.4.3靜態(tài)RAM擴展電路1.單片6264靜態(tài)RAM擴IC1地址:1100000000000000~1101111111111111(C000H~DFFFH)IC2地址:1010000000000000~1011111111111111(A000H~BFFFH)IC3地址:0110000000000000~0111111111111111(6000H~7FFFH)2.多片6264靜態(tài)RAM擴展圖7-22線選法3片6264擴展圖88IC1地址:1100000000000000~1101IC1地址:0000

000000000000~0011111111111111(0000H~3FFFH)IC2地址:0100

000000000000~0111111111111111(4000H~7FFFH)IC3地址:1000

000000000000~1011111111111111(8000H~BFFFH)IC4地址:1100

000000000000~1111111111111111(C000H~FFFFH)3.多片62128靜態(tài)RAM擴展圖7-23譯碼器法片外存儲器擴展圖89IC1地址:0000000000000000~0017.5存儲器混合擴展技術

前面分別介紹了程序存儲器和數(shù)據(jù)存儲器的單獨擴展技術。在實際應用中往往ROM和RAM都要擴展。ROM讀用/PSEN控制,RAM讀寫用/RD和/WR控制。1.線選法擴展2片6264和2片2764選片直接用高位地址。2.譯碼法擴展2片6264和2片2764選片用譯碼器的輸出。907.5存儲器混合擴展技術1.線選法擴展2片6264和2764(1)地址:x100000000000000~x1011111111111112764(2)地址:x010000000000000~x0111111111111116264(1)地址:x100000000000000~x1011111111111116264(2)地址:x010000000000000~x011111111111111圖7-24片外存儲器綜合擴展圖(線選法)912764(1)地址:x1000000000000002764(1)地址:0000

0000

00000000~0001

1111111111112764(2)地址:0010

0000

00000000~0011

1111

111111116264(3)地址:0100

0000

00000000~0101

1111

111111116264(4)地址:0110

0000

00000000~0111

1111

11111111圖7-25片外存儲器綜合擴展圖(譯碼器法)922764(1)地址:0000000000000000(1)ROM讀指令復位,PC=0000H。取指令期間,PCL送P0,經(jīng)373鎖存得地址A7~A0,直連2764低8位地址。PCH送P2得地址A15~A8。其中A12~A8與2764相應地址直連,A15~A13接譯碼器。0000H地址選中2764(1)的第一個地址,當/PSEN有效時,程序代碼就從P0口讀到單片機的指令譯碼器,進行譯碼,決定作何種操作。此后PC自動加一,取下一個單元的程序代碼。3.外擴存儲器電路工作原理93(1)ROM讀指令3.外擴存儲器電路工作原理40(2)RAM讀寫

在使用‘MOVX’類指令時,就是對外部RAM進行讀寫。例 MOV DPTR,#5000H MOVXA,@DPTR MOV50H,A

執(zhí)行第二條指令時,DPL送P0,并被373鎖存,DPH送P2。根據(jù)譯碼器以及片內(nèi)譯碼選中6264(1)的5000H單元,當/RD有效時,5000H單元的內(nèi)容進入P0,并送到A。MOVX @DPTR,A是執(zhí)行存儲器寫,與存儲器讀的過程類似。

MOVXA,@Ri和MOVX@Ri,A也是執(zhí)行對外部RAM讀寫。Ri的內(nèi)容送P0,形成低8位地址,P2口的內(nèi)容形成高位地址。94(2)RAM讀寫在使用‘MOVX’類指令時,就是對外【例7-1】(8-4)編程將程序存儲器TAB為首地址的32個單元內(nèi)容依次傳送到外部RAM7000H開始的區(qū)域。 MOV P2,#70H ;外部RAM高8位地址 MOV DPTR,#TAB MOV R0,#0AGIN:MOV A,R0 ;查表偏移量 MOVC A,@A+DPTR MOVX @R0,A ;存入外部RAM INC R0 CJNE R0,#32,AGINHERE:SJMP HERETAB: DB …,…95【例7-1】

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論