版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、.單片機(jī)程序存儲(chǔ)器擴(kuò)展一單片機(jī)程序存儲(chǔ)器概述單片機(jī)應(yīng)用系統(tǒng)由硬件和軟件組成, 軟件的載體就是硬件中的程序存儲(chǔ)器。對(duì)于MCS-51 系列 8 位單片機(jī) ,片內(nèi)程序存儲(chǔ)器的類型及容量如表6.1 所示 。表 6.1MCS-51系列單片機(jī)片內(nèi)程序存儲(chǔ)器一覽表單片機(jī)型號(hào)片內(nèi)程序存儲(chǔ)器類型容量 /B8031無8051ROM4K8751EPROM4K8951Flash4K對(duì)于沒有內(nèi)部ROM 的單片機(jī)或者當(dāng)程序較長、片內(nèi) ROM 容量不夠時(shí) ,用戶必須在單片機(jī)外部擴(kuò)展程序存儲(chǔ)器。MCS-51 單片機(jī)片外有16 條地址線 ,即 P0 口和 P2 口,因此最大尋址范圍為64KB( 0000H FFFFH)。這里要
2、注意的是, MCS-51單片機(jī)有一個(gè)管腳 跟程序存儲(chǔ)器的擴(kuò)展有關(guān)。如果接高電平 ,那么片內(nèi)存儲(chǔ)器地址范圍是0000H 0FFFH( 4KB), 片外程序存儲(chǔ)器地址范圍是1000H FFFFH( 60KB )。 如果接低電平,不使用片內(nèi)程序存儲(chǔ)器,片外程序存儲(chǔ)器地址范圍為 0000H FFFFH(64KB)。8031 單片機(jī)沒有片內(nèi)程序存儲(chǔ)器,因此管腳總是接低電平。.下載可編輯 .擴(kuò)展程序存儲(chǔ)器常用的芯 片 是EPROM ( Erasable ProgrammableRead OnlyMemory )型(紫外線可擦除型), 如2716 ( 2K ×8 )、 2732 ( 4K
3、5;8 )、 2764 ( 8K ×8)、 27128 ( 16K ×8 )、 27256( 32K ×8)、 27512 ( 64K ×8)等 。 另外 ,還有 +5V 電可擦除 EEPROM,如 2816 ( 2K×8)、 2864( 8K ×8 )等等 。 如果程序總量不超過 4KB ,一般選用具有內(nèi)部 ROM 的單片機(jī) 。 8051 內(nèi)部 ROM 只能由廠家將程序一次性固化,不適合小批量用戶和程序調(diào)試時(shí)使用,因此選用8751 、 8951 的用戶較多 。如果程序超過4KB,用戶一般不會(huì)選用8751 、 8951 ,而是直接選用
4、8031 ,利用外部擴(kuò)展存儲(chǔ)器來存放程序。二 EPROM 程序存儲(chǔ)器擴(kuò)展實(shí)例紫外線擦除電可編程只讀存儲(chǔ)器EPROM 是國內(nèi)用得較多的程序存儲(chǔ)器。EPROM 芯片上有一個(gè)玻璃窗口,在紫外線照射下,存儲(chǔ)器中的各位信息均變1,即處于擦除狀態(tài)。擦除干凈的EPROM 可以通過編程器將應(yīng)用程序固化到芯片中。例 6.1 在 8031 單片機(jī)上擴(kuò)展 4KBEPROM 程序存儲(chǔ)器 。(1) 選擇芯片 。本例要求選用8031 單片機(jī) ,內(nèi)部無ROM 區(qū),無論程序長短都必須擴(kuò)展程序存儲(chǔ)器(目前較少這樣使用,但擴(kuò)展方法比較典型、實(shí)用 )。在選擇程序存儲(chǔ)器芯片時(shí),首先必須滿足程序容量,其次在價(jià)格合理情況下盡量選用容量大
5、的芯片。這樣做的話 ,使用的芯片少,從而接線簡單,芯片存儲(chǔ)容量大,程序調(diào)整余量也大 。如估計(jì)程序總長3KB 左右 ,最好是擴(kuò)展一片4KB 的 EPROM2732 ,而不是選用2片 2716 ( 2KB)。在單片機(jī)應(yīng)用系統(tǒng)硬件設(shè)計(jì)中應(yīng)注意,盡量減少芯片使用個(gè)數(shù),使得電路結(jié)構(gòu)簡單,提高可靠性 ,這也是 8951 比 8031 使用更加廣泛的原因之一。.下載可編輯 .(2) 硬件電路圖 。8031 單片機(jī)擴(kuò)展一片2732 程序存儲(chǔ)器電路如圖6.2 所示 。GND 5 VGND312412 18P2.3 2421VCC GNDCEEAA11P2.22319A10P2.12222A9P2.02123A8
6、P0.73218D7Q7191A7P0.63317D63Q6162A6P0.53414D5Q5153A535137124P0.4D43Q4A4368S95P0.3D3Q3A3LP0.2377D24Q266A280317P0.1384D1Q157A12732P0.0393D0G OEQ028A04K×8111GND17O716O615O514O413O311O210O1ALE309O020PSEN 29OE/VPP圖 6.2 單片機(jī)擴(kuò)展2732EPROM 電路.下載可編輯 .(3) 芯片說明 。 74LS373 。 74LS373 是帶三態(tài)緩沖輸出的8D 鎖存器 ,由于片機(jī)的三總線結(jié)構(gòu)
7、中,數(shù)據(jù)線與地址線的低8 位共用P0 口,因此必須用地址鎖存器將地址信號(hào)和數(shù)據(jù)信號(hào)區(qū)分開。 74LS373 的鎖存控制端G 直接與單片機(jī)的鎖存控制信號(hào)ALE 相連,在 ALE 的下降沿鎖存低 8位地址。 EPROM2732 。 EPROM2732的容量為4K ×8位 。 4K 表示有4 ×1024 ( 22 ×210=212 )個(gè)存儲(chǔ)單元 , 8 位表示每個(gè)單元存儲(chǔ)數(shù)據(jù)的寬度是8 位。前者確定了地址線的位數(shù)是 12 位( A0 A11 ), 后者確定了數(shù)據(jù)線的位數(shù)是8位( O0 O7 )。 目前 ,除了串行存儲(chǔ)器之外,一般情況下,我們使用的都是8 位數(shù)據(jù)存儲(chǔ)器。
8、2732采用單一+5V供電 ,最大靜態(tài)工作電流為100mA ,維持電流為1A7VCC24223A62732A83A5A922421A4A11520A3OE/VPP619A2A107A1CE18817A0O7916O0O61015O1O511O2O4141213GNDO335mA , 讀出時(shí)間最大為250ns 。 2732的封裝形式為圖 6.3EPROM2732 管腳及說明DIP24 ,管腳如圖6.3 所示 。其中, A0 A11 為地址線 ; O0 O7 為數(shù)據(jù)線 ;為片選線 ;/VPP 為輸出允許 / 編程高壓 。除了 12 條地址線和8 條數(shù)據(jù)線之外,為片選線 ,低電平有效 。 也就是說
9、,只有當(dāng)為低電平時(shí) , 2732 才被選中 ,否則 , 2732 不工作 。 /VPP 為雙功能管腳,當(dāng) 2732 用作程序存儲(chǔ)器時(shí) ,其功能是允許讀數(shù)據(jù)出來;當(dāng)對(duì)EPROM 編程 (也稱為固化程序)時(shí),該管腳用于高電壓輸入,不同生產(chǎn)廠家的芯片編程電壓也有所不同。當(dāng)我們把它作為程序存儲(chǔ)器使用時(shí) ,不必關(guān)心其編程電壓。(4) 擴(kuò)展總線的產(chǎn)生 。一般的CPU,像 INTEL8086/8088 、 Z80 等,都有單獨(dú)的地址總線、數(shù)據(jù)總線和控制.下載可編輯 .總線 ,而 MCS-51系列單片機(jī)由于受管腳的限制,數(shù)據(jù)線與地址線是復(fù)用的,為了將它們分離開來 ,必須在單片機(jī)外部增加地址鎖存器,構(gòu)成與一般C
10、PU 相類似的三總線結(jié)構(gòu)。(5) 連線說明 : 地址線 。 單片機(jī)擴(kuò)展片外存儲(chǔ)器時(shí),地址是由 P0 和 P2 口提供的 。 圖 6.2 中, 2732的 12 條地址線 ( A0 A11 )中,低 8 位 A0 A7 通過鎖存器74LS373 與 P0 口連接 ,高 4位 A8 A11 直接與 P2 口的 P2.0 P2.3 連接 , P2 口本身有鎖存功能 。 注意 ,鎖存器的鎖存使能端 G 必須和單片機(jī)的 ALE 管腳相連 。 數(shù)據(jù)線 。 2732 的 8 位數(shù)據(jù)線直接與單片機(jī)的P0 口相連 。 因此, P0 口是一個(gè)分時(shí)復(fù)用的地址 / 數(shù)據(jù)線 。 控制線 。 CPU 執(zhí)行 2732 中存
11、放的程序指令時(shí),取指階段就是對(duì)2732 進(jìn)行讀操作 。注意 , CPU 對(duì) EPROM 只能進(jìn)行讀操作,不能進(jìn)行寫操作。CPU 對(duì) 2732 的讀操作控制都是通過控制線實(shí)現(xiàn)的。 2732 控制線的連接有以下幾條:接地端 。 由于系統(tǒng)中只擴(kuò)展了一個(gè)程序存儲(chǔ)器芯片,因此 , 2732的片選端直接接地,表示 2732 一直被選中 。 若同時(shí)擴(kuò)展多片,需通過譯碼器來完成片選工作。片選端 :接 8031 的讀選通信號(hào)端。在訪問片外程序存儲(chǔ)器時(shí),只要端出現(xiàn)負(fù)脈沖,即可從 2732 中讀出程序 。(6) 擴(kuò)展程序存儲(chǔ)器地址范圍的確定。單片機(jī)擴(kuò)展存儲(chǔ)器的關(guān)鍵是搞清楚擴(kuò)展芯片的地址范圍, 8031最大可以擴(kuò)展6
12、4KB( 0000H FFFFH)。 決定存儲(chǔ)器芯片地址范圍的因素有兩個(gè): 一個(gè)是片選端的連接方法,一個(gè)是存儲(chǔ)器芯片的地址線與單片機(jī)地址線的連接。在確定地址范圍時(shí),必須保證片選端為低電平 。(7)EPROM 的使用 。.下載可編輯 .存儲(chǔ)器擴(kuò)展電路是單片機(jī)應(yīng)用系統(tǒng)的功能擴(kuò)展部分,只有當(dāng)應(yīng)用系統(tǒng)的軟件設(shè)計(jì)完成了,才能把程序通過特定的編程工具(一般稱為編程器或EPROM 固化器 )固化到 2732中,然后再將 2732插到用戶板的插座上 (擴(kuò)展程序存儲(chǔ)器一定要焊插座)。當(dāng)上電復(fù)位時(shí) , PC=0000H ,自動(dòng)從 2732 的 0000H單元取指令 ,然后開始執(zhí)行指令。如果程序需要反復(fù)調(diào)試 ,可以
13、用紫外線擦除器先將2732 中的內(nèi)容擦除 ,然后再固化表 6.26116 的操作方式CEOEWE方式IO0IO7修改后的程序 ,進(jìn)行調(diào)試 。如果要從EPROM 中讀出程序中定義的表格,需使用查表指令:MOVCA,A+DPTRMOVCA,A+PC數(shù)據(jù)存儲(chǔ)器擴(kuò)展一 單片機(jī) RAM 概述.下載可編輯 .H未選中高阻LLH讀O0O7LHL寫I0I7LLL寫I0I7RAM 是用來存放各種數(shù)據(jù)的,MCS-51系列 8 位單片機(jī)內(nèi)部有128BRAM 存儲(chǔ)器 ,CPU 對(duì)內(nèi)部 RAM 具有豐富的操作指令。但是 ,當(dāng)單片機(jī)用于實(shí)時(shí)數(shù)據(jù)采集或處理大批量數(shù)據(jù)時(shí) ,僅靠片內(nèi)提供的RAM 是遠(yuǎn)遠(yuǎn)不夠的。此時(shí),我們可以利
14、用單片機(jī)的擴(kuò)展功能,擴(kuò)展外部數(shù)據(jù)存儲(chǔ)器。實(shí)訓(xùn) 6 的參考程序1 就是一個(gè)擴(kuò)展RAM 的使用實(shí)例 。常用的外部數(shù)據(jù)存儲(chǔ)器有靜態(tài)RAM ( Static Random Access Memory SRAM )和動(dòng)態(tài) RAM ( Dynamic Random Access Memory DRAM )兩種 。前者讀 / 寫速度高 ,一般都是 8 位寬度 ,易于擴(kuò)展 ,且大多數(shù)與相同容量的EPROM 引腳兼容 ,有利于印刷板電路設(shè)計(jì),使用方便 ;缺點(diǎn)是集成度低,成本高 ,功耗大 。 后者集成度高,成本低 ,功耗相對(duì)較低;缺點(diǎn)是需要增加一個(gè)刷新電路,附加另外的成本。MCS-51 單片機(jī)擴(kuò)展片外數(shù)據(jù)存儲(chǔ)器的
15、地址線也是由P0 口和 P2 口提供的 ,因此最大尋址范圍為64KB ( 0000H FFFFH)。一般情況下 ,SRAM 用于僅需要小于64KB 數(shù)據(jù)存儲(chǔ)器的小系統(tǒng), DRAM 經(jīng)常用于需要大于 64KB 的大系統(tǒng) 。二 SRAM 擴(kuò)展實(shí)例1 應(yīng)用系統(tǒng)中只擴(kuò)展一片RAM例 6.3 在一單片機(jī)應(yīng)用系統(tǒng)中擴(kuò)展2KB 靜態(tài) RAM 。(1) 芯片選擇 。單片機(jī)擴(kuò)展數(shù)據(jù)存儲(chǔ)器常用的靜態(tài)RAM芯片有61161A7VCC242A66116A823322A5A9421A4WE520A3OE619A2A10718A1CE817A0I/O7916I/O0I/O61015I/O1I/O51114I/O2I/O4
16、12GNDI/O313.下載可編輯 .圖 6.116116 管腳圖.( 2K×8 位)、 6264 ( 8K×8 位)、 62256 ( 32K×8 位)等。根據(jù)題目容量的要求,我們選用SRAM6116 。 它是一種采用CMOS工藝制成的SRAM ,采用單一 +5V 供電 ,輸入 / 輸出電平均與TTL 兼容 ,具有低功耗操作方式。當(dāng) CPU沒有選中該芯片時(shí)(=1 ), 芯片處于低功耗狀態(tài),可以減少80% 以上的功耗 。6116 的管腳與EPROM2716 管腳兼容 ,管腳如圖6.11 所示 。6116 有 11 條 (A0 A10) 地址線 ; 8 條(I/O0
17、 I/O7) 雙向數(shù)據(jù)線 ;為片選線 ,低電平有效;為寫允許線 ,低電平有效 ;為讀允許線 ,低電平有效 。 6116的操作方式如表6.2 所示。(2) 硬件電路 。單片機(jī)與6116 的硬件連接如圖6.12 所示 。5 V GND2412RD 17VCC GND22OEWR1627WEP2.72818CEP2.22319A10P2.12222A9P2.02123A8P0.73218D7Q7191A7P0.63317D63Q6162A6P0.53414D57153A535133Q512P0.4D4SQ44A436L9P0.38D34Q35A33776P0.27D2Q26A261168031P0.
18、1384D1Q157A12K×8P0.0393D0G OEQ028A0111GND17I/O716I/O615I/O514I/O413I/O311I/O210I/O1309I/O0ALE.下載可編輯 .圖 6.12 單片機(jī)擴(kuò)展2KBRAM電路.(3) 連線說明 。6116 與單片機(jī)的連線如下:地址線 : A0 A10 連接單片機(jī)地址總線的A0 A10 ,即 P0.0 P0.7、 P2.0、P2.1 、P2.2 共 11 根。數(shù)據(jù)線 : I/O0 I/O7 連接單片機(jī)的數(shù)據(jù)線,即 P0.0 P0.7??刂凭€ : 18 腳片選端連接單片機(jī)的P2.7,即單片機(jī)地址總線的最高位A15 ; 2
19、2 腳讀允許線連接單片機(jī)的讀數(shù)據(jù)存儲(chǔ)器控制線17 腳;寫允許線27 腳連接單片機(jī)的寫數(shù)據(jù)存儲(chǔ)器控制線17 腳(4) 片外 RAM 地址范圍的確定及使用。按照?qǐng)D6.12的連線 ,片選端直接與某一地址線P2.7 相連 ,這種擴(kuò)展方法稱為線選法。顯然 ,只有 P2.7=0 ,才能夠選中該片6116.下載可編輯 .8031P2.7P2.6 P2.5 P2.4 P2.3P2.2 P2.1 P2.0 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1P0.0A15 A14 A13 A12 A11 A10 A9A8A7A6A5A4A3A2A1A06116A10 A9A8A7A6A5A4A3
20、A2A1A00××××000000000000××××000000000010××××000000000100××××000000000110××××11111111111其中,“×”表示跟 6116 無關(guān)的管腳 ,取 0 或 1 都可以 。如果與 6116 無關(guān)的管腳取0 ,那么 , 6116 的地址范圍是0000H 07FFH ;如果與6116 無關(guān)的管腳取1,那么 , 6116 的
21、地址范圍是7800H 7FFFH。單片機(jī)對(duì) RAM 的讀寫除了可以使用在實(shí)訓(xùn)6 中出現(xiàn)的指令 :MOVXDPTR,A;64KB 內(nèi)寫入數(shù)據(jù)MOVXA,DPTR; 64KB 內(nèi)讀取數(shù)據(jù)外,還可以使用以下對(duì)低256B 的讀寫指令 :MOVXRi,A;低 256B 內(nèi)寫入數(shù)據(jù)MOVXA , Ri;低 256B 內(nèi)讀取數(shù)據(jù)并行 I/O 口擴(kuò)展一 MCS-51內(nèi)部并行I/O 口及其作用51 系列單片機(jī)內(nèi)部有4 個(gè)雙向的并行I/O 端口 :P0 P3,共占 32 根引腳 。 P0 口的每一位可以驅(qū)動(dòng)8 個(gè) TTL 負(fù)載 , P1 P3 口的負(fù)載能力為三個(gè)TTL 負(fù)載 。 有關(guān) 4 個(gè)端口的結(jié).下載可編輯
22、.構(gòu)及詳細(xì)說明 ,在前面的有關(guān)章節(jié)中已作過介紹,這里不再贅述 。在無片外存儲(chǔ)器擴(kuò)展的系統(tǒng)中,這 4 個(gè)端口都可以作為準(zhǔn)雙向通用I/O 口使用 。通過6.1 和 6.2 節(jié)的介紹 ,我們知道 ,在具有片外擴(kuò)展存儲(chǔ)器的系統(tǒng)中, P0 口分時(shí)地作為低8 位地址線和數(shù)據(jù)線, P2 口作為高8 位地址線 。 這時(shí), P0 口和部分或全部的P2 口無法再作通用 I/O 口。P3 口具有第二功能,在應(yīng)用系統(tǒng)中也常被使用。因此在大多數(shù)的應(yīng)用系統(tǒng)中,真正能夠提供給用戶使用的只有P1 和部分 P2、 P3 口。綜上所述 , MCS-51 單片機(jī)的I/O 端口通常需要擴(kuò)充,以便和更多的外設(shè)(例如顯示器、鍵盤 )進(jìn)行
23、聯(lián)系 。在 51 單片機(jī)中擴(kuò)展的I/O 口采用與片外數(shù)據(jù)存儲(chǔ)器相同的尋址方法,所有擴(kuò)展的I/O口,以及通過擴(kuò)展I/O 口連接的外設(shè)都與片外RAM 統(tǒng)一編址 ,因此,對(duì)片外 I/O 口的輸入/ 輸出指令就是訪問片外 RAM 的指令 ,即:MOVXDPTR,AMOVXRi,AMOVXA,DPTRMOVXA,Ri在實(shí)訓(xùn) 6 中,讀者已經(jīng)初步接觸了用8155 擴(kuò)展 I/O 口的方法 ,實(shí)際中 ,擴(kuò)展 I/O 口的方法有三種 :簡單的 I/O 口擴(kuò)展 、采用可編程的并行I/O 接口芯片擴(kuò)展以及利用串行口進(jìn)行 I/O 口的擴(kuò)展 。二 簡單的 I/O 口擴(kuò)展簡單的 I/O 口擴(kuò)展通常是采用TTL 或 CMO
24、S 電路鎖存器 、三態(tài)門等作為擴(kuò)展芯片,通過 P0 口來實(shí)現(xiàn)擴(kuò)展的一種方案。它具有電路簡單、成本低 、配置靈活的特點(diǎn)。.下載可編輯 .1.擴(kuò)展實(shí)例圖 6.16 為采用 74LS244 作為擴(kuò)展輸入 、 74LS273 作為擴(kuò)展輸出的簡單I/O 口擴(kuò)展 。P0.0D0Q0LED0 5 VP0.1D1Q1LED1P0.2D2Q2LED2P0.3D33Q3LED37LED4P0.4D42Q4SLED5P0.5D5LQ54P0.6D67Q6LED6P0.7D7Q7LED7CPCLR8031Q0D0S0S1Q1D11S2Q2D2S3Q34D3WR4S4Q42D4SS5LD5P2.0Q547D6S6Q6R
25、DS7Q7D71G1G2圖 6.16 簡單 I/O 口擴(kuò)展電路2.芯片及連線說明在圖 6.16 的電路中采用的芯片為TTL 電路 74LS244 、 74LS273 。 其中, 74LS244 為 8緩沖線驅(qū)動(dòng)器(三態(tài)輸出 ),、 為低電平有效的使能端。當(dāng)二者之一為高電平時(shí),輸出為三態(tài)。 74LS273 為 8D 觸發(fā)器 ,為低電平有效的清除端。當(dāng) =0 時(shí),輸出全為0 且與其它輸入端無關(guān) ; CP 端是時(shí)鐘信號(hào) ,當(dāng) CP 由低電平向高電平跳變時(shí)刻, D 端輸入數(shù)據(jù)傳送到Q 輸.下載可編輯 .出端 。P0 口作為雙向8 位數(shù)據(jù)線 ,既能夠從 74LS244 輸入數(shù)據(jù) ,又能夠從74LS273
26、 輸出數(shù)據(jù)。輸入控制信號(hào)由P2.0 和相 “或 ”后形成 。當(dāng)二者都為0 時(shí), 74LS244 的控制端有效 ,選通 74LS244 ,外部的信息輸入到P0 數(shù)據(jù)總線上 。 當(dāng)與 74LS244 相連的按鍵都沒有按下時(shí),輸入全為1,若按下某鍵 ,則所在線輸入為0。輸出控制信號(hào)由P2.0 和相 “或 ”后形成 。當(dāng)二者都為0 后, 74LS273 的控制端有效 ,選通 74LS273 , P0 上的數(shù)據(jù)鎖存到74LS273 的輸出端 ,控制發(fā)光二極管LED,當(dāng)某線輸出為0 時(shí),相應(yīng)的 LED 發(fā)光 。3.I/O口地址確定因?yàn)?74LS244 和 74LS273 都是在 P2.0 為 0 時(shí)被選通
27、的 ,所以二者的口地址都為FEFFH(這個(gè)地址不是惟一的,只要保證P2.0=0 ,其它地址位無關(guān))。 但是由于分別由和控制,因而兩個(gè)信號(hào)不可能同時(shí)為0(執(zhí)行輸入指令,如 MOVXA , DPTR 或 MOVXA , Ri時(shí),有效 ;執(zhí)行輸出指令,如 MOVXDPTR ,A 或 MOVXRi ,A 時(shí),有效), 所以邏輯上二者不會(huì)發(fā)生沖突。4.編程應(yīng)用下述程序?qū)崿F(xiàn)的功能是按下任意鍵,對(duì)應(yīng)的 LED 發(fā)光 。CONT : MOVDPTR, #0FEFFH;數(shù)據(jù)指針指向口地址MOVXA ,DPTR;檢測按鍵 ,向 74LS244 ,讀入數(shù)據(jù)MOVXDPTR , A;向 74LS273 輸出數(shù)據(jù) ,驅(qū)
28、動(dòng) LEDSJMPCONT;循環(huán)三 采用 8255 擴(kuò)展 I/O 口.下載可編輯 .所謂可編程的接口芯片是指其功能可由微處理機(jī)的指令來加以改變的接口芯片,利用編程的方法 ,可以使一個(gè)接口芯片執(zhí)行不同的接口功能。目前 ,各生產(chǎn)廠家已提供了很多系列的可編程接口,MCS-51 單片機(jī)常用的兩種接口芯片是8255 以及 8155 ,本書主要介紹這兩種芯片在51 單片機(jī)中的使用。8255 和 MCS-51 相連 ,可以為外設(shè)提供三個(gè)8 位的 I/O 端口 :A 口、 B 口和 C 口,三個(gè)端口的功能完全由編程來決定。1.8255 的內(nèi)部結(jié)構(gòu)和引腳排列圖 6.17 為 8255 的內(nèi)部結(jié)構(gòu)和引腳圖。A 組
29、A 組I/O34D0PA04控制端口 APA7 PA0(8)33D1PA13322D2PA2311D3PA330D4PA44029D5PA539A 組I/O2838數(shù)據(jù)D6PA6端口 C27D7PA737總線上半部 (4)PC7 PC45RDPB018D7D0緩沖36WRPB119920A0PB2821A1PB335RESET8255PB422B組I/O6CSPB523端口 C24PB6PB725下半部 (4)PC3 PC0PC01415PC116PC2PC317RDB組I/O13讀/ 寫B(tài) 組PC4端口 BPC512WR11PC6A0控制控制(8)PB7 PB0PC710A1邏輯RESETC
30、S圖 6.178255 的內(nèi)部結(jié)構(gòu)和引腳圖(1)A 口、B 口和 C 口 。AA 口由一個(gè)8 位的數(shù)據(jù)輸出緩沖口、B 口和 C 口均為 8 位 I/O 數(shù)據(jù)口 ,但結(jié)構(gòu)上略有差別。/ 鎖存器和一個(gè)8 位的數(shù)據(jù)輸入緩沖/ 鎖存器組成 。 B 口由一.下載可編輯 .個(gè) 8 位的數(shù)據(jù)輸出緩沖/ 鎖存器和一個(gè)8 位的數(shù)據(jù)輸入緩沖器組成。三個(gè)端口都可以和外設(shè)相連 ,分別傳送外設(shè)的輸入/ 輸出數(shù)據(jù)或控制信息。(2)A 、 B 組控制電路 。 這是兩組根據(jù)CPU 的命令字控制8255 工作方式的電路。 A 組控制 A口及 C口的高 4 位,B組控制 B口及 C口的低 4 位。(3) 數(shù)據(jù)緩沖器 。 這是一個(gè)
31、雙向三態(tài) 8 位的驅(qū)動(dòng)口 ,用于和單片機(jī)的數(shù)據(jù)總線相連 ,傳送數(shù)據(jù)或控制信息 。(4) 讀 / 寫控制邏輯 。這部分電路接收 MCS-51 送來的讀 / 寫命令和選口地址 ,用于控制對(duì) 8255 的讀 /寫。2) 引腳(1) 數(shù)據(jù)線 (8 條): D0 D7 為數(shù)據(jù)總線 ,用于傳送 CPU 和 8255 之間的數(shù)據(jù) 、命令和狀態(tài)字 。(2) 控制線和尋址線 (6 條 )。RESET:復(fù)位信號(hào) ,輸入高電平有效。一般和單片機(jī)的復(fù)位相連,復(fù)位后 , 8255所有內(nèi)部寄存器清0,所有口都為輸入方式。A0 、 A1 :地址輸入線 。 當(dāng) =0 ,芯片被選中時(shí),這兩位的4 種組合00、 01 、10 、
32、11分別用于選擇A、 B、 C 口和控制寄存器。(3)I/O 口線 (24 條 ): PA0PA7、 PB0 PB7、 PC0 PC7 為 24 條雙向三態(tài)I/O 總線 ,分別與 A、 B、 C 口相對(duì)應(yīng) ,用于 8255 和外設(shè)之間傳送數(shù)據(jù)。(4) 電源線 (2 條): VCC 為 +5V ,GND 為地線 。2.8255 的控制字8255 的三個(gè)端口具體工作在什么方式下,是通過 CPU 對(duì)控制口的寫入控制字來決定的。 8255有兩個(gè)控制字 :方式選擇控制字和C 口置 / 復(fù)位控制字 。用戶通過程序把這兩個(gè).下載可編輯 .控制字送到8255 的控制寄存器(A0A1=11 ),這兩個(gè)控制字以D
33、7 來作為標(biāo)志 。3.8255 的工作方式8255 有三種工作方式:方式 0 、方式 1、方式 2。方式的選擇是通過上述寫控制字的方法來完成的 。(1) 方式 0(基本輸入 / 輸出方式 ): A 口、B 口及 C 口高 4 位、低 4 位都可以設(shè)置輸入或輸出 ,不需要選通信號(hào) 。 單片機(jī)可以對(duì) 8255 進(jìn)行 I/O 數(shù)據(jù)的無條件傳送 ,外設(shè)的 I/O 數(shù)據(jù)在 8255 的各端口能得到鎖存和緩沖 。(2) 方式 1 (選通輸入 / 輸出方式 ): A 口和 B 口都可以獨(dú)立的設(shè)置為方式1 ,在這種方式下 , 8255 的 A 口和 B 口通常用于傳送和它們相連外設(shè)的I/O 數(shù)據(jù) , C 口作
34、為 A 口和 B 口的握手聯(lián)絡(luò)線 ,以實(shí)現(xiàn)中斷方式傳送I/O 數(shù)據(jù) 。 C 口作為聯(lián)絡(luò)線的各位分配是在設(shè)計(jì)8255時(shí)規(guī)定的 ,分配表如表6.3 所示 。表 6.38255C 口聯(lián)絡(luò)信號(hào)分配表C 口各位方式 1方式 2輸入方式輸出方式雙向方式PC0INTRBINTRB由 B 口方式?jīng)Q定PC1IBFBOBF B由 B 口方式?jīng)Q定PC2SETB由 B 口方式?jīng)Q定PC3INTRAINTRBINTRAPC4ACK AI/OSTBAPC5IBFAI/OIBFAPC6I/OACK AACK APC7I/OSTBAOBF A4.8255 與 MCS-51的接口8255 和單片機(jī)的接口十分簡單,只需要一個(gè)8 位
35、的地址鎖存器即可。鎖存器用來鎖.下載可編輯 .存 P0 口輸出的低8 位地址信息 。 圖 6.19 為 8255 擴(kuò)展實(shí)例 。1) 連線說明數(shù)據(jù)線 : 8255的 8 根數(shù)據(jù)線 D0 D7 直接和 P0 口一一對(duì)應(yīng)相連就可以了??刂凭€ : 8255的復(fù)位線RESET與 8031的復(fù)位端相連 ,都接到 8031的復(fù)位電路上(在圖 6.19 中未畫出 )。尋址線 : 8255的片選端和A1 、 A0 分別由 P0.7 和 P0.1、 P0.0經(jīng)地址鎖存器 74LS373后提供 ,當(dāng)然片選端的接法不是惟一的。當(dāng)系統(tǒng)要同時(shí)擴(kuò)展外部RAM 時(shí),就要和 RAM 芯片的片選端一起經(jīng)地址譯碼電路來獲得,以免發(fā)
36、生地址沖突 。I/O 口線 :可以根據(jù)用戶需要連接外部設(shè)備。 圖 6.19 中,A 口作輸出 ,接 8 個(gè)發(fā)光二極管 LED; B 口作輸入 ,接 8 個(gè)按鍵開關(guān) ; C 口未用 。WRWRRDRDP0.7D7Q7RESETPACSP0.6D6Q6P0.5D5Q5P0.4D4Q4P0.3D3373 Q3P0.2D2Q2P0.1D1Q1A1PB8051P0.0D0Q0A0G OE8255ALED7D6D5D4PCD3EAD2D1D0圖 6.198051 和 8255 的接口電路.下載可編輯 .2)地址確定8051A15 A14 A13 A12 A11 A10 A9A8A7A6A5A4A3A2A1A0P2.7 P2.6P2.5 P2.4 P2.3 P2.2P2.1 P2.0 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.08255A1A0A口: ××
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 浙江師范大學(xué)《規(guī)范字與書法》2023-2024學(xué)年第一學(xué)期期末試卷
- 鄭州體育職業(yè)學(xué)院《視頻傳播實(shí)務(wù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 長春師范大學(xué)《社會(huì)治理》2023-2024學(xué)年第一學(xué)期期末試卷
- 榆林職業(yè)技術(shù)學(xué)院《戶外拓展與定向運(yùn)動(dòng)》2023-2024學(xué)年第一學(xué)期期末試卷
- 食用菌栽培基質(zhì)廢棄物降解
- 碩士職場競爭力
- 秋分節(jié)氣與糧食安全
- 農(nóng)業(yè)創(chuàng)新路演
- 學(xué)校文化建設(shè)上墻標(biāo)語
- 會(huì)計(jì)辭職報(bào)告范文
- 華為經(jīng)營管理-華為市場營銷體系(6版)
- 2023年中國育齡女性生殖健康研究報(bào)告
- 鋼結(jié)構(gòu)加工廠考察報(bào)告
- 發(fā)電機(jī)檢修作業(yè)指導(dǎo)書
- 薪酬與福利管理實(shí)務(wù)-習(xí)題答案 第五版
- 廢舊物資處置申請(qǐng)表
- GB/T 37234-2018文件鑒定通用規(guī)范
- GB/T 31888-2015中小學(xué)生校服
- 質(zhì)量檢查考核辦法
- 云南省普通初中學(xué)生成長記錄-基本素質(zhì)發(fā)展初一-初三
- 外科醫(yī)師手術(shù)技能評(píng)分標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論