系統(tǒng)擴(kuò)展的內(nèi)容與方法.ppt_第1頁(yè)
系統(tǒng)擴(kuò)展的內(nèi)容與方法.ppt_第2頁(yè)
系統(tǒng)擴(kuò)展的內(nèi)容與方法.ppt_第3頁(yè)
系統(tǒng)擴(kuò)展的內(nèi)容與方法.ppt_第4頁(yè)
系統(tǒng)擴(kuò)展的內(nèi)容與方法.ppt_第5頁(yè)
已閱讀5頁(yè),還剩80頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第4章 MCS-51單片機(jī)系統(tǒng)功能的擴(kuò)展,4.1 系統(tǒng)擴(kuò)展概述 4.2 常用擴(kuò)展器件簡(jiǎn)介 4.3 存儲(chǔ)器的擴(kuò)展 4.4 I/O擴(kuò)展,4.1 系統(tǒng)擴(kuò)展概述,4.1.1 最小應(yīng)用系統(tǒng),(a) 8051/8751最小系統(tǒng)結(jié)構(gòu)圖;(b) 8031最小系統(tǒng)結(jié)構(gòu)圖,圖4.1 MCS51單片機(jī)最小化系統(tǒng),4.1.2 單片機(jī)系統(tǒng)擴(kuò)展的內(nèi)容與方法 1單片機(jī)的三總線結(jié)構(gòu),圖4.2 MCS51單片機(jī)的三總線結(jié)構(gòu)形式,2系統(tǒng)擴(kuò)展的內(nèi)容與方法 (1) 系統(tǒng)的擴(kuò)展一般有以下幾方面的內(nèi)容: 外部程序存儲(chǔ)器的擴(kuò)展。 外部數(shù)據(jù)存儲(chǔ)器的擴(kuò)展。 輸入/輸出接口的擴(kuò)展。 管理功能器件的擴(kuò)展(如定時(shí)器/計(jì)數(shù)器、鍵盤/顯示器、中斷優(yōu)先級(jí)

2、編碼器等)。http:/www.gangban-,(2) 系統(tǒng)擴(kuò)展的基本方法:一般來講,所有與計(jì)算機(jī)擴(kuò)展連接芯片的外部引腳線都可以歸屬為三總線結(jié)構(gòu)。擴(kuò)展連接的一般方法實(shí)際上是三總線對(duì)接。要保證單片機(jī)和擴(kuò)展芯片協(xié)調(diào)一致地工作,即要共同滿足其工作時(shí)序。,4.2 常用擴(kuò)展器件簡(jiǎn)介,表4.1 常用的擴(kuò)展器件,表4.1 常用的擴(kuò)展器件,4.2.1 8D鎖存器74LS373,圖4.3 74LS373結(jié)構(gòu)示意圖,圖4.4 74LS373用作地址鎖存器,4.2.2 74LS244和74LS245芯片,圖4.5 74LS244內(nèi)部邏輯與引腳圖,圖4.6 74LS245內(nèi)部邏輯與引腳圖,圖4.7 總線驅(qū)動(dòng)器的連接

3、圖 (a) P2外接74LS244; (b) P0外接74LS245,4.2.3 3-8譯碼器74LS138,圖4.8 74LS138引腳圖,表4.2 74LS138的譯碼邏輯關(guān)系,4.3 存儲(chǔ)器的擴(kuò)展,4.3.1 存儲(chǔ)器擴(kuò)展概述 1MCS-51單片機(jī)的擴(kuò)展能力 根據(jù)MCS-51單片機(jī)總線寬度(16位),在片外可擴(kuò)展的存儲(chǔ)器最大容量為64 KB,地址為0000HFFFFH。 因?yàn)镸CS-51單片機(jī)對(duì)片外程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器的操作使用不同的指令和控制信號(hào),所以允許兩者的地址空間重疊,故片外可擴(kuò)展的程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器分別為64 KB。 為了配置外圍設(shè)備而需要擴(kuò)展的I/O口與片外數(shù)據(jù)存儲(chǔ)器統(tǒng)一

4、編址,即占據(jù)相同的地址空間。因此,片外數(shù)據(jù)存儲(chǔ)器連同I/O口一起總的擴(kuò)展容量是64 KB。http:/www.gangban-,2擴(kuò)展的一般方法 存儲(chǔ)器除按讀寫特性不同區(qū)分為程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器外,每種存儲(chǔ)器還有不同的種類。程序存儲(chǔ)器又可分為掩膜ROM、可編程ROM(PROM)、可擦除ROM(EPROM或EEPROM);數(shù)據(jù)存儲(chǔ)器又可分為靜態(tài)RAM和動(dòng)態(tài)RAM。因此,存儲(chǔ)器芯片有多種。即使是同一種類的存儲(chǔ)器芯片,容量的不同,其引腳數(shù)目也不同。盡管如此,存儲(chǔ)器芯片與單片機(jī)擴(kuò)展連接具有共同的規(guī)律。不論何種存儲(chǔ)器芯片,其引腳都呈三總線結(jié)構(gòu),與單片機(jī)連接都是三總線對(duì)接。另外,電源線應(yīng)接對(duì)應(yīng)的電源線上

5、。,存儲(chǔ)器芯片的地址線:地址線的數(shù)目由芯片的容量決定。容量(Q)與地址線數(shù)目(N)滿足關(guān)系式:Q=2N。存儲(chǔ)器芯片的地址線與單片機(jī)的地址總線(A0A15)按由低位到高位的順序順次相接。一般來說,存儲(chǔ)器芯片的地址線數(shù)目總是少于單片機(jī)地址總線的數(shù)目,如此相接后,單片機(jī)的高位地址線總有剩余。剩余地址線一般作為譯碼線,譯碼輸出與存儲(chǔ)器芯片的片選信號(hào)線相接。存儲(chǔ)器芯片有一根或幾根片選信號(hào)線。對(duì)存儲(chǔ)器芯片訪問時(shí),片選信號(hào)必須有效,即選中存儲(chǔ)器芯片。片選信號(hào)線與單片機(jī)系統(tǒng)的譯碼輸出相接后,就決定了存儲(chǔ)器芯片的地址范圍。因此,單片機(jī)的剩余高位地址線的譯碼及譯碼輸出與存儲(chǔ)器芯片的片選信號(hào)線的連接,是存儲(chǔ)器擴(kuò)展連

6、接的關(guān)鍵問題。,(1) 部分譯碼:所謂部分譯碼就是存儲(chǔ)器芯片的地址線與單片機(jī)系統(tǒng)的地址線順次相接后,剩余的高位地址線僅用一部分參加譯碼。參加譯碼的地址線對(duì)于選中某一存儲(chǔ)器芯片有一個(gè)確定的狀態(tài),而與不參加譯碼的地址線無(wú)關(guān)。也可以說,只要參加譯碼的地址線處于對(duì)某一存儲(chǔ)器芯片的選中狀態(tài),不參加譯碼的地址線的任意狀態(tài)都可以選中該芯片。正因如此,部分譯碼使存儲(chǔ)器芯片的地址空間有重疊,造成系統(tǒng)存儲(chǔ)器空間的浪費(fèi)。http:/www.gangban-,圖4.9 地址譯碼關(guān)系圖,圖4.9中與存儲(chǔ)器芯片連接的低11位地址線的地址變化范圍為全0 全1。參加譯碼的4根地址線的狀態(tài)是唯一確定的。不參加譯碼的A15位地址

7、線有兩種狀態(tài)都可以選中該存儲(chǔ)器芯片。 當(dāng)A15=0時(shí),占用的地址是00100000000000000010011111111111,即2000H2FFFH。 當(dāng)A15=1時(shí),占用的地址是10100000000000001010011111111111,即A000HAFFFH。 同理,若有N條高位地址線不參加譯碼,則有2N個(gè)重疊的地址范圍。重疊的地址范圍中真正能存儲(chǔ)信息的只有一個(gè),其余僅是占據(jù),因而會(huì)造成浪費(fèi)。這是部分譯碼的缺點(diǎn)。它的優(yōu)點(diǎn)是譯碼電路簡(jiǎn)單。,(2) 全譯碼:所謂全譯碼就是存儲(chǔ)器芯片的地址線與單片機(jī)系統(tǒng)的地址線順次相接后,剩余的高位地址線全部參加譯碼。這種譯碼方法存儲(chǔ)器芯片的地址空間

8、是唯一確定的,但譯碼電路相對(duì)復(fù)雜。 這兩種譯碼方法在單片機(jī)擴(kuò)展系統(tǒng)中都有應(yīng)用。在擴(kuò)展存儲(chǔ)器(包括I/O口)容量不大的情況下,選擇部分譯碼,譯碼電路簡(jiǎn)單,可降低成本。http:/www.gangban-,3擴(kuò)展存儲(chǔ)器所需芯片數(shù)目的確定 若所選存儲(chǔ)器芯片字長(zhǎng)與單片機(jī)字長(zhǎng)一致,則只需擴(kuò)展容量。所需芯片數(shù)目按下式確定:,若所選存儲(chǔ)器芯片字長(zhǎng)與單片機(jī)字長(zhǎng)不一致,則不僅需擴(kuò)展容量,還需字?jǐn)U展。所需芯片數(shù)目按下式確定:,4.3.2 程序存儲(chǔ)器的擴(kuò)展,1EPROM芯片,圖4.10 常用EPROM芯片的引腳圖,2程序存儲(chǔ)器擴(kuò)展舉例,1) 不用片外譯碼器的單片程序存儲(chǔ)器的擴(kuò)展 例1 試用EPROM2764構(gòu)成80

9、31的最小系統(tǒng)。 2764是8K8位程序存儲(chǔ)器,芯片的地址引腳線有13條,順次和單片機(jī)的地址線A0A12相接。由于不采用地址譯碼器,所以高3位地址線A13、A14、A15不接,故有23=8個(gè)重疊的8 KB地址空間。因只用一片2764,其片選信號(hào)CE可直接接地(常有效)。其連接電路如圖 4.11所示。,圖4.11 2764與8031的擴(kuò)展連接圖,圖4.11所示連接電路的8個(gè)重疊的地址范圍為 00000000000000000001111111111111,即0000H1FFFH; 00100000000000000011111111111111,即2000H3FFFH; 010000000000

10、00000101111111111111,即4000H5FFFH; 01100000000000000111111111111111,即6000H7FFFH; 10000000000000001001111111111111,即8000H9FFFH; 10100000000000001011111111111111,即A000HBFFFH; 11000000000000001101111111111111,即C000HDFFFH; 11100000000000001111111111111111,即E000HFFFFH。,2) 采用線選法的多片程序存儲(chǔ)器的擴(kuò)展,例2 使用兩片2764擴(kuò)展16

11、KB的程序存儲(chǔ)器,采用線選法選中芯片。擴(kuò)展連接圖如圖4.12所示。以P2.7作為片選,當(dāng)P2.7=0時(shí),選中2764(1);當(dāng)P2.7=1時(shí),選中2764(2)。因兩根線(A13、A14)未用,故兩個(gè)芯片各有22=4個(gè)重疊的地址空間。它們分別為,圖4.12 用兩片2764 EPROM的擴(kuò)展連接圖,左片:000000000000000000001111111111111,即0000H1FFFH; 001000000000000000011111111111111,即2000H3FFFH; 010000000000000000101111111111111,即4000H5FFFH; 0110000

12、00000000000111111111111111,即6000H7FFFH; 右片:100000000000000001001111111111111,即8000H9FFFH; 101000000000000001011111111111111,即A000HBFFFH; 110000000000000001101111111111111,即C000HDFFFH; 111000000000000001111111111111111,即E000HFFFFH。,3) 采用地址譯碼器的多片程序存儲(chǔ)器的擴(kuò)展 例3 要求用2764芯片擴(kuò)展8031的片外程序存儲(chǔ)器,分配的地址范圍為0000H3FFFH。

13、本例要求的地址空間是唯一確定的,所以要采用全譯碼方法。由分配的地址范圍知:擴(kuò)展的容量為3FFFH-0000H+1=4000H=4 KB,2764為8 K8位,故需要兩片。第1片的地址范圍應(yīng)為0000H1FFFH;第2片的地址范圍應(yīng)為2000H3FFFH。 由地址范圍確定譯碼器的連接。為此畫出譯碼關(guān)系圖如下:,圖4.13 全譯碼、兩片2764 EPROM的擴(kuò)展連接圖,4.3.3 數(shù)據(jù)存儲(chǔ)器的擴(kuò)展 1數(shù)據(jù)存儲(chǔ)器芯片,圖4.14 常用靜態(tài)RAM芯片的引腳圖,圖4.15 iRAM芯片的引腳圖,2數(shù)據(jù)存儲(chǔ)器的擴(kuò)展舉例,例4 采用2114芯片在8031片外擴(kuò)展1 KB數(shù)據(jù)存儲(chǔ)器。,圖4.16 用兩片211

14、4 EPROM的擴(kuò)展連接圖,4.3.4 兼有片外程序存儲(chǔ)器和片外數(shù)據(jù)存儲(chǔ)器的擴(kuò)展舉例 例5 采用2764和6264芯片在8031片外分別擴(kuò)展24 KB程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器。,擴(kuò)展連接電路如圖4.17所示。從圖中可以看出,各有一片2764和一片6264的片選端并接在一根譯碼輸出線上。即有2764和6264芯片相同的地址單元將會(huì)同時(shí)選通,這不會(huì)發(fā)生地址沖突,因?yàn)閮煞N芯片的控制信號(hào)是不一樣的。請(qǐng)讀者自己分析兩種存儲(chǔ)器及各芯片的地址范圍。http:/www.gangban-,圖4.17 兼有片外ROM,又有片外RAM的擴(kuò)展連接圖,4.4 I/O 擴(kuò) 展,4.4.1 I/O口擴(kuò)展概述 1MCS-51單

15、片機(jī)I/O口擴(kuò)展性能 單片機(jī)應(yīng)用系統(tǒng)中的I/O口擴(kuò)展方法與單片機(jī)的I/O口擴(kuò)展性能有關(guān)。 (1) 在MCS-51單片機(jī)應(yīng)用系統(tǒng)中,擴(kuò)展的I/O口采取與數(shù)據(jù)存儲(chǔ)器相同的尋址方法。所有擴(kuò)展的I/O口或通過擴(kuò)展I/O口連接的外圍設(shè)備均與片外數(shù)據(jù)存儲(chǔ)器統(tǒng)一編址。任何一個(gè)擴(kuò)展I/O口,根據(jù)地址線的選擇方式不同,占用一個(gè)片外RAM地址,而與外部程序存儲(chǔ)器無(wú)關(guān)。,(2) 利用串行口的移位寄存器工作方式(方式0),也可擴(kuò)展I/O口,這時(shí)所擴(kuò)展的I/O口不占用片外RAM地址。 (3) 擴(kuò)展 I/O口的硬件相依性。在單片機(jī)應(yīng)用系統(tǒng)中,I/O口的擴(kuò)展不是目的,而是為外部通道及設(shè)備提供一個(gè)輸入、輸出通道。因此,I/O

16、口的擴(kuò)展總是為了實(shí)現(xiàn)某一測(cè)控及管理功能而進(jìn)行的。例如連接鍵盤、顯示器、驅(qū)動(dòng)開關(guān)控制、開關(guān)量監(jiān)測(cè)等。這樣,在I/O口擴(kuò)展時(shí),必須考慮與之相連的外部硬件電路特性,如驅(qū)動(dòng)功率、電平、干擾抑制及隔離等。 (4) 擴(kuò)展I/O口的軟件相依性。根據(jù)選用不同的I/O口擴(kuò)展芯片或外部設(shè)備時(shí),擴(kuò)展I/O口的操作方式不同,因而應(yīng)用程序應(yīng)有不同,如入口地址、初始化狀態(tài)設(shè)置、工作方式選擇等。,2I/O口擴(kuò)展用芯片 MCS-51單片機(jī)應(yīng)用系統(tǒng)中I/O口擴(kuò)展用芯片主要有通用I/O口芯片和TTL、CMOS鎖存器、緩沖器電路芯片兩大類。 通用I/O口芯片選用Intel公司的芯片,其接口最為簡(jiǎn)捷可靠,如8255、8155等。 采

17、用TTL或CMOS鎖存器、三態(tài)門電路作為I/O擴(kuò)展芯片,也是單片機(jī)應(yīng)用系統(tǒng)中經(jīng)常采用的方法。這些I/O口擴(kuò)展用芯片具有體積小、成本低、配置靈活的特點(diǎn)。一般在擴(kuò)展8位輸入或輸出口時(shí)十分方便。可以作為I/O擴(kuò)展的TTL芯片有74LS373、74LS277、74LS244、74LS273、74LS367等。在實(shí)際應(yīng)用中,根據(jù)芯片特點(diǎn)及輸入、輸出量的特征,應(yīng)選擇合適的擴(kuò)展芯片。,3I/O口擴(kuò)展方法 根據(jù)擴(kuò)展并行I/O口時(shí)數(shù)據(jù)線的連接方式,I/O口擴(kuò)展可分為總線擴(kuò)展方法、串行口擴(kuò)展方法和I/O口擴(kuò)展方法。 (1) 總線擴(kuò)展方法。擴(kuò)展的并行I/O芯片,其并行數(shù)據(jù)輸入線取自MCS-51單片機(jī)的P0口。這種擴(kuò)

18、展方法只分時(shí)占用P0口,并不影響P0口與其它擴(kuò)展芯片的連接操作,不會(huì)造成單片機(jī)硬件的額外開銷。因此,在MCS-51單片機(jī)應(yīng)用系統(tǒng)的I/O擴(kuò)展中廣泛采用這種擴(kuò)展方法。,(2) 串行口擴(kuò)展方法。這是MCS-51單片機(jī)串行口在方式0工作狀態(tài)下所提供的I/O口擴(kuò)展功能。串行口方式0為移位寄存器工作方式,因此接上串入并出的移位寄存器可以擴(kuò)展并行輸出口,而接上并入串出的移位寄存器則可擴(kuò)展并行輸入口。這種擴(kuò)展方法只占用串行口,而且通過移位寄存器的級(jí)聯(lián)方法可以擴(kuò)展多數(shù)量的并行I/O口。對(duì)于不使用串行口的應(yīng)用系統(tǒng),可使用這種方法。但由于數(shù)據(jù)的輸入輸出采用串行移位的方法,傳輸速度較慢。,(3) 通過單片機(jī)片內(nèi)I/

19、O口的擴(kuò)展方法。這種擴(kuò)展方法的特征是擴(kuò)展芯片的輸入輸出數(shù)據(jù)線不通過P0口,而是通過其它片內(nèi)I/O口。即擴(kuò)展片外I/O口的同時(shí)也占用片內(nèi)I/O口,所以使用較少,但在MCS-51單片機(jī)擴(kuò)展8243時(shí),為了模擬8243的操作時(shí)序,不得不使用這種方法。,4.4.2 8255可編程并行I/O口擴(kuò)展,1芯片引腳及其內(nèi)部結(jié)構(gòu),圖4.18 8255A芯片的引腳圖,圖4.19 8255A芯片的內(nèi)部結(jié)構(gòu)圖,表4.3 8255芯片的引腳信號(hào)說明,續(xù)表,28255的操作方式,1) 讀/寫控制邏輯操作選擇,表4.4 8255的口操作狀態(tài),2) 8255的三種工作方式 方式0(基本輸入/輸出方式):這種工作方式不需要任何

20、選通信號(hào)。A口、B口及C口的兩個(gè)4位口中任何一個(gè)端口都可以由程序設(shè)定為輸入或輸出。作為輸出口時(shí),輸出數(shù)據(jù)被鎖存;作為輸入口時(shí),輸入數(shù)據(jù)不鎖存。 方式1(選通輸入/輸出方式):在這種工作方式下,A、B、C三個(gè)口分為兩組。A組包括A口和C口的高4位,A口可由編程設(shè)定為輸入口或輸出口,C口的高4位則用來作為A口輸入/輸出操作的控制和同步信號(hào);B組包括B口和C口的低4位,B口可由編程設(shè)定為輸入口或輸出口,C口的低4位則用來作為B口輸入/輸出操作的控制和同步信號(hào)。A口和B口的輸入數(shù)據(jù)或輸出數(shù)據(jù)都被鎖存。方式1下的邏輯組態(tài)關(guān)系如圖4.20所示。,圖4.20 8255方式1邏輯組態(tài)關(guān)系圖,3) 8255A的

21、編程控制字,圖4.22 8255A控制字的格式與定義,(a) 方式選擇控制字;(b) C口置位/復(fù)位控制字,圖4.23 8255的擴(kuò)展連接圖,38031與8255的接口方法,例6 試對(duì)圖4.23中的8255A編程,使其各口工作于方式0,A口作輸入,B口作輸出,C口高4位作輸出,C口的低4位作輸入。 由方式選擇控制字的格式與 定義可確定出滿足要求的方式控制字應(yīng)為91H(10010001B)。對(duì)8255A編寫程序?qū)?1H寫入它的控制寄存器,初始化程序?yàn)?MOV DPTR,#FF7FH ;DPTR作地址指針,指向控制口 MOV A,91H MOVX DPTR,A 因?yàn)閳D4.23擴(kuò)展電路未使用高位地址

22、線,所以端口地址也可使用8位。,例7 試按圖4.23擴(kuò)展電路,寫出自8255A的B口輸出單片機(jī)中R7內(nèi)容與自8255的A口輸入數(shù)據(jù)到單片機(jī)R3的程序。 使用8位地址,8255A的A、B、C口及控制口地址分別為7CH、7DH、7EH、7FH。則實(shí)現(xiàn)所要求功能的程序?yàn)?MOV R0,#7FH ;R0作地址指針,指向控制口 MOV A,#91H MOVX R0,A ;方式控制字送控制寄存器 MOV R0,#7DH ;R0指向B口 MOV A,R7 ; MOVX R0,A ;R7的內(nèi)容輸出到B口 DEC R0 ;使R0指向A口 MOVX A,R0 ;從A口輸入數(shù)據(jù)到累加器A MOV R3,A ;把輸入

23、數(shù)據(jù)送存到R3中,4.4.3 8155可編程并行I/O口擴(kuò)展 8155芯片含有2568位靜態(tài)RAM,兩個(gè)可編程的8位I/O口,一個(gè)可編程的6位I/O口,一個(gè)可編程的14位定時(shí)器/計(jì)數(shù)器。8155芯片具有地址鎖存功能,與MCS-51單片機(jī)接口簡(jiǎn)單,是單片機(jī)應(yīng)用系統(tǒng)中廣泛使用的芯片。 18155的結(jié)構(gòu)與引腳,8155的邏輯結(jié)構(gòu)如圖4.24(a)所示,引腳分布如圖4.24(b)所示。,圖4.24 8155邏輯結(jié)構(gòu)及引腳,(a) 8155邏輯結(jié)構(gòu);(b) 8155芯片引腳圖,28155的RAM和I/O口編址 8155在單片機(jī)應(yīng)用系統(tǒng)中是按外部數(shù)據(jù)存儲(chǔ)器統(tǒng)一編址的,地址為16位,其高8位地址由片選線-C

24、E提供,低8位地址為片內(nèi)地址。當(dāng)IO/M=0時(shí),對(duì)RAM進(jìn)行讀/寫,RAM低8位地址為 00HFFH;當(dāng)IO/-M=1時(shí),對(duì)I/O口進(jìn)行讀/寫,I/O口及定時(shí)器由AD0AD3進(jìn)行尋址。其編址如表4.5所示。,表4.5 8155內(nèi)部端口編址,38155的工作方式與基本操作 8155的A口、B口可工作于基本I/O方式或選通方式,C口可作為輸入/輸出口線,也可以作為A口、B口選通方式工作時(shí)的狀態(tài)控制信號(hào)線。工作方式選擇是通過對(duì)8155內(nèi)部命令寄存器(命令口)設(shè)定控制字來實(shí)現(xiàn)的。三個(gè)口可組合工作于四種方式下。命令字的格式及定義如圖4.25所示。http:/www.gangban-,圖4.25 8155

25、命令控制寄存器格式,圖4.26 8155選通方式信號(hào)邏輯組態(tài),圖4.27 8155狀態(tài)寄存器格式,48155內(nèi)部的定時(shí)器/計(jì)數(shù)器,圖4.28 8155定時(shí)器寄存器格式,圖4.29 8155定時(shí)器方式及輸出波形,58155與單片機(jī)的擴(kuò)展連接,圖4.30 用8155的擴(kuò)展連接,在圖中連接狀態(tài)下,8155所占的地址為 RAM地址范圍:7E00H7EFFH I/O端口地址:命令/狀態(tài)口 7F00H PA口 7F01H PB口 7F02H PC口 7F03H 定時(shí)器低字節(jié) 7F04H 定時(shí)器高字節(jié) 7F05H,例8 使8155用作I/O口和定時(shí)器工作方式,A口定義為基本輸入方式,B口為基本輸出方式,定時(shí)

26、器為方波發(fā)生器,對(duì)輸入脈沖進(jìn)行24分頻(8155中定時(shí)器最高計(jì)數(shù)頻率為4 MHz),則相應(yīng)的程序如下:,MOV DPTR,#7F04H ;DPTR指向定時(shí)器低字節(jié) MOV A,#18H ;計(jì)數(shù)器常數(shù)0018H=24 MOVX DPTR,A ;計(jì)數(shù)常數(shù)低8位裝入計(jì)數(shù)器低字節(jié) INC DPTR ;使DPTR指向定時(shí)器高字節(jié) MOV A,#40H(01000000B) ;置定時(shí)器方式為連續(xù)方波輸出 MOVX DPTR,A ;裝計(jì)數(shù)器高字節(jié)值 MOVX DPTR,#7F00H ;使DPTR指向命令/狀態(tài)口 MOV A,C2H(11000010B) MOVX DPTR,A ;向命令/狀態(tài)口送方式控制字,

27、并啟動(dòng)定時(shí)器,4.4.4 用TTL芯片擴(kuò)展簡(jiǎn)單的I/O接口 在MCS-51單片機(jī)應(yīng)用系統(tǒng)中,采用TTL或CMOS鎖存器、三態(tài)門芯片,通過P0口可以擴(kuò)展各種類型的簡(jiǎn)單輸入/輸出口。P0口是系統(tǒng)的數(shù)據(jù)總線口,通過P0口擴(kuò)展I/O口時(shí),P0口只能分時(shí)使用,故輸出時(shí)接口應(yīng)有鎖存功能;輸入時(shí),視數(shù)據(jù)是常態(tài)還是暫態(tài)的不同,接口應(yīng)能三態(tài)緩沖,或鎖存選通。 不論是鎖存器,還是三態(tài)門芯片,都只具有數(shù)據(jù)線和鎖存允許及輸出允許控制線,而無(wú)地址線和片選信號(hào)線。而擴(kuò)展一個(gè)I/O口,相當(dāng)于一個(gè)片外存儲(chǔ)單元。CPU對(duì)I/O口的訪問,要以確定的地址,用MOVX指令來進(jìn)行。,1用鎖存器擴(kuò)展輸出口,圖4.31 用74LS377擴(kuò)

28、展輸出口,2用鎖存器擴(kuò)展輸入口,圖4.32 用74LS373擴(kuò)展輸入口,中斷系統(tǒng)初始化程序:,PINT: SETB IT0 ;外部中斷0選擇為下降沿觸發(fā)方式 SETB EA ;開系統(tǒng)中斷 MOV R0,#50H ;R0作地址指針,指向數(shù)據(jù)區(qū)首址 SETB EX0 ;外部中斷0中斷允許 中斷服務(wù)程序: ORG 0003H PINT0:AJMP INT0 INT0: MOV DPTR,#0BFFFH ;使DPTR指向74LS373擴(kuò)展輸入口 MOVX A,DPTR ;從74LS373擴(kuò)展輸入口輸入數(shù)據(jù) MOV R0,A ;輸入數(shù)據(jù)送數(shù)據(jù)區(qū) INC R0 RETI,3用三態(tài)門擴(kuò)展輸入口,圖4.33

29、用74LS244擴(kuò)展輸入口,4擴(kuò)展多個(gè)輸入、輸出口舉例,圖4.34 擴(kuò)展多個(gè)輸入口和輸出口的連接,4.4.5 用串行口擴(kuò)展并行I/O口,MCS-51單片機(jī)的串行口在方式0(移位寄存器方式)下,使用移位寄存器芯片可以擴(kuò)展一個(gè)或多個(gè)并行I/O口。 擴(kuò)展并行輸入口時(shí),可用并入串出移位寄存器芯片,如CMOS芯片4014和74LS165芯片。,圖4.35 8并行輸入/串行輸出移位寄存器芯片的引腳圖,(a) 4014;(b) 74LS165,圖4.36 8串行輸入/并行輸出移位寄存器芯片的引腳圖,(a) 4094; (b) 74LS164,1用串行口擴(kuò)展并行輸入口,圖4.37 串行口擴(kuò)展并行輸入口連接,下面是從兩個(gè)擴(kuò)展的8位并行口輸入數(shù)據(jù)存于片內(nèi)RAM的30H、31H單元的應(yīng)用程序。,SETB P1.7

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論