單片機系統(tǒng)功能的擴展課件_第1頁
單片機系統(tǒng)功能的擴展課件_第2頁
單片機系統(tǒng)功能的擴展課件_第3頁
單片機系統(tǒng)功能的擴展課件_第4頁
單片機系統(tǒng)功能的擴展課件_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第3章單片機系統(tǒng)功能擴展3.1單片機并行I/O接口的擴展

1、通用緩沖器、鎖存器的擴展1第3章單片機系統(tǒng)功能擴展3.1單片機并行I/O接口的擴展擴展方法:1、通用可編程接口芯片

(如8155,8255等);2、鎖存器,緩沖器(如:74HC273,377,244,245等)。3.1單片機并行I/O接口的擴展

意義:51系列單片機共有4個8位并行I/O口,在擴展存儲器時,P0和P2口做為總線使用,I/O口就只有P1或P3口的部分口線。當所接的外設較多時,就必須擴展I/O接口。51系列單片機的I/O口和外部數據存儲器采用統(tǒng)一編址:采用相同的控制信號、相同的尋址方式和相同的指令。2擴展方法:3.1單片機并行I/O接口的擴展意義:51系所以,/G通常接地址信號和控制信號(/RD或/WR)的組合。1、通用緩沖器、鎖存器的擴展74LS244緩沖器

/G=0時

Y=A

;/G=1時Y輸出高阻D0D774HC244Q0Q7/G+/WR/CS3所以,/G通常接地址信號和控制信號(/RD或/WR)的組CLK通常接地址信號和控制信號(/RD或/WR)的組合。1、通用緩沖器、鎖存器的擴展74LS273鎖存器:CLK=時Q=D

/CLR=0時

Q=0;正常工作時,/CLR接VCC+/WR/CSD0D774HC273Q0Q7/CLK/CLRVCC4CLK通常接地址信號和控制信號(/RD或/WR)的8XX51擴展緩沖器和鎖存器I/O端口8Y1Y2G2A1A...8D1DC8Q1Q74LS27374LS244輸入數據輸出數據1GP2.08XX51RDP0WR.........74LS244的選通信號由/RD和P2.0相或產生:當執(zhí)行讀該片的讀指令時,/RD和P2.0有效,打開244控制門,從而把數據通過244讀入單片機。74LS273的選通信號由/WR和P2.0相或產生:通過執(zhí)行對該片的寫指令,/WR和P2.0有效,使8XX51的數據往273輸出。58XX51擴展緩沖器和鎖存器I/O端口8Y1Y2G2A1A盡管地址相同,由于控制信號不同/RD或/WR,所以不會發(fā)生數據傳送沖突。8XX51擴展緩沖器和鎖存器I/O端口8Y1Y2G2A1A...8D1DC8Q1Q74LS27374LS244輸入數據輸出數據1GP2.08XX51RDP0WR.........地址:FEFFHP2.0=0,其他位無關問題:P0、P2分別工作在什么狀態(tài)?6盡管地址相同,由于控制信號不同/RD或/WR,所以不會發(fā)生例:將74LS244的輸入數據從74LS273輸出。匯編語言:

MOV DPTR,#0FEFFH;I/O地址

MOVXA,@DPTR;從74LS244讀入數據MOVX@DPTR,A;向74LS273輸出數據C語言:#include<absacc.h>#defineIO_PORTXBYTE[0xFEFF]uchardat;dat=IO_PORT;//從74LS244讀入數據IO_PORT=dat;//向74LS273輸出數據7例:將74LS244的輸入數據從74LS273輸出。匯編語言51單片機系統(tǒng)A8

A12P2ALEP0/PSEN/RD/WR51單片機74138A13

A156264A0

A7D0D7/OEA8

A12/CS/WE/y074HC57374HC574Q0Q7CLK

/OE+/y6/WRD0D774HC573DI0DI7/OE+/y5/RDQ0Q7GD0D7/y1/y1/y5/y6A0

A7D0D7/OEA8

A12/CE2764/RD/WR輸出輸入851單片機系統(tǒng)A8A12P2ALEP0/PSEN/RD/W

2、可編程接口芯片擴展有1個8位控制口----通常跟單片機連接;通過控制口,實現對數據口的數據傳輸。D0

D7/CS/RD/WRPAPBPCA1A08255:可編程并行接口芯片

有3個數據口----A、B、C口A1A0決定選擇A、B、C口和控制字00A口10C口01B口11控制字92、可編程接口芯片擴展有1個8位控制口----通常跟單片機

8255有三種工作方式:

方式0(基本方式):

無聯(lián)絡信號,直接輸入或輸出;

方式1(選通方式):C口高四位為A口的聯(lián)絡線,C口的低四位為B口聯(lián)絡線);

方式2(雙向方式,僅A口有)。輸入/輸出各使用一套聯(lián)絡線。

8255的方式控制字格式為:108255有三種工作方式:8255的方式控制字格式為8255與單片機的連接實例用8031擴展1片2716(EPROM),2片6116(SRAM)和1片8255(可編程并行接口)的電路。118255與單片機的連接實例用8031擴展1片2716(EPR8255與單片機的連接128255與單片機的連接122716僅一片,片選端接地。圖中采用線選法:

P2.36116(1)

P2.46116(2)

P2.58255P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0

0000

0000

000000000000H

0000

0111

1111111107FFH

0011

0000

000000003000H

0011

0111

1111111137FFH

0010

1000

000000002800H0010

1111

111111112FFFH

0001

1000

000000001800H0001

1000

000000111803H132716僅一片,片選端接地。圖中采用線選法:P2.7MOVDPTR,#1803H;DPTR指向控制口MOVA,#10010000B;設定方式0,A口輸入,,B口輸出MOVX@DPTR,A;寫入控制口MOVDPTR,#1800H;DPTR指向A口MOVXA,@DPTR;從A口輸入數據INCDPTR;DPTR指向B口MOVX@DPTR,A;A的內容從B口輸出SJMP$將8255A口輸入的數據,從B口輸出,C口不用,均采用方式0。圖中A、B、C數據口地址分別為1800H~1802H,控制口地址為1803H。14MOVDPTR,#1803H;DPT#include<absacc.h>#defineP8255_AXBYTE[0x1800]#defineP8255_BXBYTE[0x1801]#defineP8255_COMXBYTE[0x8103]unsignedchardat;voidmain(){P8255_COM=0x90;//10010000B方式0,A口輸入,,B口輸出dat=P8255_A;//從A口輸入數據

溫馨提示

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

最新文檔

評論

0/150

提交評論