版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第六章 MCS-51單片機(jī)總線系統(tǒng)與I/O口擴(kuò)展,6.1單片機(jī)擴(kuò)展總線概述6.1.1 片外總線擴(kuò)展結(jié)構(gòu)6.1.2 三總線擴(kuò)展的方法6.1.3 AT89C××系列單片機(jī)的片內(nèi)存儲(chǔ)容量6.2 MCS-51單片機(jī)I/O口擴(kuò)展及編址技術(shù)6.2.1 單片機(jī)I/O口擴(kuò)展6.2.2 89C51單片機(jī)總線擴(kuò)展的編址技術(shù)6.3 MCS-51存儲(chǔ)器擴(kuò)展技術(shù)6.3.1 89C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器擴(kuò)展6.3.2 89C
2、51單片機(jī)的程序存儲(chǔ)器擴(kuò)展,6.1.1 片外總線擴(kuò)展結(jié)構(gòu),總線:連接系統(tǒng)中主機(jī)與各擴(kuò)展部件的一組公共信號(hào)線。,1、數(shù)據(jù)總線(DB): 傳送數(shù)據(jù),雙向,CPU的位數(shù)和外部數(shù)據(jù)總線的位數(shù)一致。而數(shù)據(jù)可能是指令代碼、狀態(tài)量或控制量,也可能是真正的數(shù)據(jù)。2、地址總線(AB): 傳送CPU發(fā)出的地址信息,單向,寬度(線數(shù)目)決定了CPU的可尋址范圍。例如:2根地址線,可尋址22=4個(gè)字節(jié)單元; 16根地址線,可尋址216
3、=64K字節(jié)單元;3、控制總線(CB): 傳送使微機(jī)協(xié)調(diào)工作的定時(shí)、控制信號(hào),雙向,但對(duì)于每一條具體的控制線,都有固定的功能??刂凭€數(shù)目受芯片引腳數(shù)量的限制。,8位微機(jī)的DB總是8位,AB總是16位,而CB的數(shù)目則隨機(jī)型不同而不同。,6.1.2 三總線擴(kuò)展的方法,1.P0口作為數(shù)據(jù)總線和低8位地址線2.以P2口作為高8位地址線3.地址、數(shù)據(jù)分離電路,,ALE 信號(hào)就是 MCS-51 單片機(jī)提供的專用于數(shù)據(jù)/地址分離
4、的一個(gè)引腳。,6.1.3 AT89Cxx片內(nèi)存儲(chǔ)容量,,6.2 單片機(jī)I/O口擴(kuò)展及編制技術(shù),51系列單片機(jī)內(nèi)部有4個(gè)雙向的并行I/O端口P0~P3,共占32根引腳。P0口的每一位可以驅(qū)動(dòng)8個(gè)TTL負(fù)載,P1~P3口的負(fù)載能力為3個(gè)TTL負(fù)載。 在無(wú)片外存儲(chǔ)器擴(kuò)展的系統(tǒng)中,這4個(gè)端口都可以作為準(zhǔn)雙向通用I/O口使用。,6.2.1 單片機(jī)I/O口擴(kuò)展,MCS-51單片機(jī)的I/O端口通常需要擴(kuò)充,以便和更多的外設(shè)(例如顯示器、
5、鍵盤)進(jìn)行連接。 簡(jiǎn)單的I/O口擴(kuò)展,通常是采用TTL或CMOS電路鎖存器、三態(tài)門等作為擴(kuò)展芯片,通過P0口來實(shí)現(xiàn)擴(kuò)展的一種方案。它具有電路簡(jiǎn)單、成本低、配置靈活的特點(diǎn)。 實(shí)際中可使用74LS244、74LS245等芯片作為并行輸入口進(jìn)行擴(kuò)展,使用74LS273、74LS377等芯片作為并行輸出口進(jìn)行擴(kuò)展。,6.2.1 單片機(jī)I/O口擴(kuò)展,74LS244為8同相三態(tài)緩沖/驅(qū)動(dòng)器,6.2.1 單片機(jī)I/
6、O口擴(kuò)展,74LS273為8D三態(tài)同相觸發(fā)器,6.2.1 單片機(jī)I/O口擴(kuò)展,圖6-3為采用74LS244作為擴(kuò)展輸入、74LS273作為擴(kuò)展輸出的簡(jiǎn)單I/O口擴(kuò)展。,6.2.1 單片機(jī)I/O口擴(kuò)展,P2.0決定了74LS244的地址為: ×××× ×××0 ×××× ××
7、215;×B 其中“×”代表任意電平。由于地址線中有無(wú)關(guān)位,且無(wú)關(guān)位可組成多種狀態(tài),則會(huì)出現(xiàn)“地址重疊”問題。所謂“地址重疊”,是指一個(gè)擴(kuò)展芯片占有多個(gè)額定地址空間。一般情況下,無(wú)關(guān)位取“1”。確定了地址以后,就可以讀入擴(kuò)展輸入口的內(nèi)容。程序如下:MOVDPTR,#0FEFFH;確定擴(kuò)展芯片地址MOVXA,@DPTR;將擴(kuò)展輸入口內(nèi)容讀入累加器A當(dāng)與74LS244相連的按鍵都沒有按下時(shí)
8、,輸入全為1,若按下某鍵,則所在線輸入為0。,6.2.1 單片機(jī)I/O口擴(kuò)展,輸出控制信號(hào)由P2.0和相“或”后形成。當(dāng)二者都為0后,74LS273的控制端有效,選通74LS273, P0上的數(shù)據(jù)鎖存到74LS273的輸出端,控制發(fā)光二極管LED,芯片地址與74LS244的選通地址相同(都是×××× ×××0 ××××
9、5;×××B,通常取為FEFFH)。當(dāng)某線輸出為0時(shí),相應(yīng)的LED發(fā)光。雖然二個(gè)芯片的口地址都為FEFFH,但是由于分別由RD和WR控制,兩個(gè)信號(hào)不可能同時(shí)為0(執(zhí)行輸入指令例如MOVX A,@DPTR或MOVX A,@Ri時(shí),有效;執(zhí)行輸出指令例如MOVX @DPTR,A或MOVX @Ri,A時(shí),有效),所以邏輯上二者不會(huì)發(fā)生沖突。,6.2.1 單片機(jī)I/O口擴(kuò)展,例6-1:參照?qǐng)D6-3,編寫程
10、序?qū)崿F(xiàn)把按鈕開關(guān)狀態(tài)通過發(fā)光二極管(LED)顯示出來。分析:首先根據(jù)電路確定輸入/輸出擴(kuò)展芯片的地址;讀入輸入口的數(shù)據(jù)并用此內(nèi)容控制輸出端口(注意要使用MOVX指令)。 循環(huán)檢測(cè)并輸出。匯編語(yǔ)言程序如下:MOVDPTR,# 0FEFFH;確定擴(kuò)展輸入/輸出芯片地址LOOP:MOVXA,@DPTR;將擴(kuò)展輸入端口內(nèi)容讀入累加器AMOVX@DPTR,A;將讀入的數(shù)據(jù)送到擴(kuò)展輸出端口SJMPLOOP
11、;循環(huán)檢測(cè),6.2.1 單片機(jī)I/O口擴(kuò)展,C51語(yǔ)言程序如下:#include //定義MCS-51的特殊功能寄存器SFR unsigned char xdata addr _at_ 0xFEFF;//定義擴(kuò)展輸入/輸出芯片地址main( ){unsigned char x; //定義8位數(shù)據(jù)變量while(1){x = addr; //讀入擴(kuò)展輸入端口內(nèi)容ad
12、dr = x; //將讀入的數(shù)據(jù)送到擴(kuò)展輸出端口}},6.2.2 單片機(jī)總線擴(kuò)展的編址技術(shù),可供使用的編址方法有兩種:線選法 適用于小規(guī)模單片機(jī)系統(tǒng)的總線擴(kuò)展。 譯碼法 適用于大容量多芯片存儲(chǔ)器擴(kuò)展。常用譯碼器來完成譯碼功能。 常用的譯碼芯片有: 74LS139(雙2-4譯碼
13、器)和74LS138(3-8譯碼器)等 。,6.2.2 單片機(jī)總線擴(kuò)展的編址技術(shù),3線-8線譯碼器74LS138,6.2.2 單片機(jī)總線擴(kuò)展的編址技術(shù),,,,地址鎖存器74LS373,6.3 MCS-51存儲(chǔ)器擴(kuò)展技術(shù),存儲(chǔ)器的主要技術(shù)指標(biāo):存儲(chǔ)容量存取速度可靠性功耗工作溫度范圍封裝形式,6.3.1 89C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器擴(kuò)展,MCS-51系列單片機(jī)產(chǎn)品中片內(nèi)數(shù)據(jù)存儲(chǔ)器容量一般為128~2048個(gè)字節(jié)。,表
14、6-3 常用SRAM芯片的主要性能,例6-2:在單片機(jī)應(yīng)用系統(tǒng)中擴(kuò)展2K字節(jié)靜態(tài)RAM。(1)芯片選擇根據(jù)題目容量的要求我們選用SRAM 6116,它是一種采用CMOS工藝制成的SRAM,采用單一+5V供電,輸入輸出電平均與TTL電平兼容,具有低功耗操作方式。當(dāng)CPU沒有選中該芯片時(shí)( ),芯片處于低功耗狀態(tài),可以減少80%以上的功耗。6116的管腳如圖6-9所示。,6.3.1 89C51單片機(jī)的數(shù)據(jù)存儲(chǔ)
15、器擴(kuò)展,,,6.3.1 89C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器擴(kuò)展,,(2)硬件電路單片機(jī)與6116的硬件連接如圖6-10所示。,6.3.1 89C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器擴(kuò)展,,(3)連線說明6116與單片機(jī)的連線如下:地址線:A0~A10連接單片機(jī)地址總線的A0~A10,即P0.0~P0.7、P2.0、P2.1、P2.2共11根;數(shù)據(jù)線:I/O0~I(xiàn)/O7連接單片機(jī)的數(shù)據(jù)線,即P0.0~P0.7;控制線:片選端,寫允許線,.,讀允許線
16、,6.3.1 89C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器擴(kuò)展,,.,4)片外RAM地址范圍的確定及使用,顯然只有P2.7=0,才能夠選中該片6116,故其地址范圍確定如表6-5所示:,6.3.1 89C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器擴(kuò)展,,如果與6116無(wú)關(guān)的管腳取0,那么6116的地址范圍是0000H—07FFH;如果與6116無(wú)關(guān)的管腳取1,那么6116的地址范圍是7800H—7FFFH。單片機(jī)對(duì)片外RAM的讀寫除了可以使用:MOVX@DPTR
17、,A ;64K字節(jié)內(nèi)寫入數(shù)據(jù)MOVXA,@DPTR ;64K字節(jié)內(nèi)讀取數(shù)據(jù)還可以使用以下對(duì)低256字節(jié)的讀寫指令:MOVX@Ri,A ;低256字節(jié)內(nèi)寫入數(shù)據(jù)MOVXA,@Ri ;低256字節(jié)內(nèi)讀取數(shù)據(jù)C51編寫方法:xdata和pdata用于單片機(jī)的片外RAM區(qū),這兩個(gè)區(qū)聲明變量參見第四章。xdata片外數(shù)據(jù)存儲(chǔ)區(qū)(64KB);pdata分頁(yè)尋址片外數(shù)據(jù)存儲(chǔ)區(qū)(2
18、56字節(jié))。,例6-3:擴(kuò)展8K RAM,地址范圍是4000H—5FFFH,并且具有唯一性;其余地址均作為外部I/O擴(kuò)展地址。(1)芯片選擇①靜態(tài)RAM芯片6264 6264是8K×8位的靜態(tài)RAM,它采用CMOS工藝制造,單一+5V供電,額定功耗200mW,典型讀取時(shí)間200ns,封裝形式為DIP28。②3-8譯碼器74LS138 這里采用全譯碼方式,6264的存儲(chǔ)容量是8K×8
19、位,占用了單片機(jī)的13條地址線A0~A12,剩余的3條地址線A13~A15通過74LS138來進(jìn)行全譯碼。,6.3.1 89C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器擴(kuò)展,,,6.3.1 89C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器擴(kuò)展,,(2)硬件電路,(3)連線說明,6.3.1 89C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器擴(kuò)展,,.,4)片外RAM地址范圍的確定及使用,6.3.1 89C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器擴(kuò)展,,.,總結(jié):,擴(kuò)展一片6264 (8K字節(jié)),需考慮步驟如下:確
20、定地址線根數(shù); 已知1KB=1024字節(jié),則1K = 210 8K = 213 。所以需要13根地址線,A0~A12。確定地址總線AB及其連接; 地址總線 AB:低8位地址A0~A7從P0口輸出,由于P0口是復(fù)用口,所以需通過74LS373鎖存。高8位地址A12~A8直接從P2口輸出,其中A12為最高位。確定數(shù)據(jù)總線DB及其連接; 數(shù)據(jù)總線 DB:直接接P0口,即D0~
21、D7。確定控制總線CB及其連接。,6.3.2 89C51單片機(jī)的程序存儲(chǔ)器擴(kuò)展,,.,通常擴(kuò)展的外部程序存儲(chǔ)器使用EPROM或E2PROM。,單片機(jī)與程序存儲(chǔ)器的連接方法和數(shù)據(jù)存儲(chǔ)器連接方法大致相同。,6.3.2 89C51單片機(jī)的程序存儲(chǔ)器擴(kuò)展,,.,89C51單片機(jī)擴(kuò)展程序存儲(chǔ)器27C64的連接,6.3.2 89C51單片機(jī)的程序存儲(chǔ)器擴(kuò)展,,.,例6-4 采用譯碼器法擴(kuò)展2片8KB EPROM,2片8KB RAM。EPROM選用
22、2764,RAM選用6264。共擴(kuò)展4片芯片,擴(kuò)展接口電路見圖6-13。寫出4片存儲(chǔ)芯片的地址范圍。,6.3.2 89C51單片機(jī)的程序存儲(chǔ)器擴(kuò)展,,.,圖6-13為用74LS138作譯碼器的擴(kuò)展存儲(chǔ)器接口電路,74LS138的地址線輸入端A、B、C分別接P2.5、P2.6、P2.7; 譯碼狀態(tài)信號(hào)輸出端Y0、Y1、Y2、Y3分別接存儲(chǔ)芯片IC1、IC2、IC3、IC4的CE端。因此P2.7、P2.6、P2.5的編碼分別為000—011
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 第三章mcs-51指令系統(tǒng)
- 第三章_pic單片機(jī)指令系統(tǒng)
- mcs-51指令系統(tǒng)
- 第三章 指令系統(tǒng)
- mcs-51單片機(jī)匯編指令集
- 第3章 mcs-51 的指令系統(tǒng)new1
- 第三章 指令系統(tǒng)及特點(diǎn)
- 第三章 指令系統(tǒng)部分練習(xí)
- mcs-51單片機(jī)結(jié)構(gòu)介紹
- mcs-51單片機(jī)串行接口
- 第三章 8086指令系統(tǒng)
- 單片機(jī)第三章
- mcs-51單片機(jī)溫度控制系統(tǒng)
- mcs-51單片機(jī)結(jié)構(gòu)和原理
- 單片機(jī)第三章 4
- MCS-51單片機(jī)溫度控制系統(tǒng).doc
- mcs-51單片機(jī)的串行通信口
- MCS-51單片機(jī)溫度控制系統(tǒng).doc
- 單片機(jī)指令系統(tǒng)
- 第3章單片機(jī)指令系統(tǒng)
評(píng)論
0/150
提交評(píng)論