




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第6章MCS-51
單片機(jī)系統(tǒng)擴(kuò)展程序存儲(chǔ)器擴(kuò)展6.2數(shù)據(jù)存儲(chǔ)器擴(kuò)展6.3FLASH存儲(chǔ)器的擴(kuò)展6.4MCS-51單片機(jī)的擴(kuò)展總線6.1并行I/O口的擴(kuò)展6.5為什么要進(jìn)行系統(tǒng)擴(kuò)展?MCS-51單片機(jī)集成了CPU、ROM、RAM、定時(shí)/計(jì)數(shù)器和并行I/O接口等內(nèi)部資源,但在許多應(yīng)用場(chǎng)合,僅靠單片機(jī)的內(nèi)部資源不能滿足需要。什么時(shí)候進(jìn)行系統(tǒng)擴(kuò)展?用戶程序大于4K時(shí),需要擴(kuò)展程序存儲(chǔ)器(ROM)數(shù)據(jù)(變量)大于126B時(shí),需要擴(kuò)展數(shù)據(jù)存儲(chǔ)器(RAM)外設(shè)過(guò)多時(shí),需要擴(kuò)展輸入/輸出口(I/O)這就是通常所說(shuō)的MCS-51單片機(jī)的系統(tǒng)擴(kuò)展6.1MCS-51單片機(jī)的擴(kuò)展總線
6.1.1MCS-51系列單片機(jī)最小應(yīng)用系統(tǒng)單片機(jī)最小應(yīng)用系統(tǒng):利用最少的外部電路構(gòu)成的可獨(dú)立工作的單片機(jī)應(yīng)用系統(tǒng)8051/8751最小應(yīng)用系統(tǒng)8051/8751集成了CPU、ROM、RAM、I/O等內(nèi)部資源,外部電路包括:晶體振蕩電路、復(fù)位開(kāi)關(guān)和電源部分。使用8051/8751最小應(yīng)用系統(tǒng)應(yīng)用時(shí)應(yīng)注意以下幾點(diǎn):P0~P3口全部用于輸入輸出接口設(shè)計(jì)用戶程序不能超過(guò)4KB數(shù)據(jù)不能超過(guò)128B靈活使用定時(shí)器、計(jì)數(shù)器、串行口、中斷等單片機(jī)內(nèi)部資源
MCS-51單片機(jī)8051/8751最小應(yīng)用系統(tǒng)2.8031最小應(yīng)用系統(tǒng)8031最小應(yīng)用系統(tǒng)除了外加時(shí)鐘電路、復(fù)位電路外,還應(yīng)在片外擴(kuò)展ROM,這種系統(tǒng)已成歷史,現(xiàn)已無(wú)人使用。6.1.2MCS-51單片機(jī)的系統(tǒng)總線單片機(jī)的系統(tǒng)總線:連接系統(tǒng)中各擴(kuò)展器件的一組公共信號(hào)線。MCS-51單片機(jī)擴(kuò)展的系統(tǒng)總線包括地址總線、數(shù)據(jù)總線和控制總線。MCS-51單片機(jī)片外引腳可以構(gòu)成并行的三總線結(jié)構(gòu),可以大大減少單片機(jī)系統(tǒng)中傳輸線的數(shù)目,提高了系統(tǒng)的可靠性,增加了系統(tǒng)的靈活性。MCS-51單片機(jī)系統(tǒng)總線的結(jié)構(gòu)地址總線(AddressBus,AB)地址總線用于傳送單片機(jī)送出的地址信號(hào),以便進(jìn)行存儲(chǔ)單元和I/O端口的選擇。地址總線是單向的,只能由單片機(jī)向外發(fā)送信息。地址總線的數(shù)目決定了可直接訪問(wèn)的存儲(chǔ)單元的數(shù)目。MCS-51單片機(jī)有16條地址線,最多可擴(kuò)展64KB,即216個(gè)地址單元。數(shù)據(jù)總線(DataBus,DB)數(shù)據(jù)總線用于單片機(jī)與存儲(chǔ)器之間或單片機(jī)與I/O端口之間傳送數(shù)據(jù)。數(shù)據(jù)總線是雙向的,可以進(jìn)行兩個(gè)方向的數(shù)據(jù)傳送。
MCS-51單片機(jī)有8條數(shù)據(jù)總線??刂瓶偩€(ControlBus,CB)控制總線實(shí)際上是一組控制信號(hào)線。對(duì)于具體的控制信號(hào)線來(lái)說(shuō),其傳送方向是單向的,但是由不同方向的控制信號(hào)組合的控制總線則表示為雙向。MCS-51單片機(jī)系統(tǒng)擴(kuò)展的實(shí)現(xiàn)數(shù)據(jù)總線的實(shí)現(xiàn):P0口地址總線的實(shí)現(xiàn):P2口(高8位)、P0口和地址鎖存器(低8位)控制總線的實(shí)現(xiàn):ALE,地址鎖存器選通控制線;,擴(kuò)展程序存儲(chǔ)器的讀控制線;
,內(nèi)、外程序存儲(chǔ)器的選擇控制線;和
,系統(tǒng)擴(kuò)展的讀/寫控制線。
MCS-51單片機(jī)擴(kuò)展的三總線
6.1.3外擴(kuò)芯片的片選和地址分配線選法擴(kuò)展片外芯片線選法:利用MCS-51單片機(jī)高位地址總線作為存儲(chǔ)器芯片(或I/O接口芯片)的片選信號(hào),即將P2口的某一根地址線與存儲(chǔ)器芯片(或I/O接口芯片)的片選引腳直接相連,該地址線為低電平時(shí),選中該芯片。例6-1
假設(shè)某一單片機(jī)系統(tǒng),需要外擴(kuò)4片4KB的存儲(chǔ)器芯片,這些芯片與MCS-51單片機(jī)的地址線連接如圖所示,列出各存儲(chǔ)器芯片的地址分配。MCS-51單片機(jī)擴(kuò)展4片4KB存儲(chǔ)器芯片M1、M2、M3、M4,由地址線A11~A0提供片內(nèi)存儲(chǔ)單元地址,共有4K個(gè)地址。用MCS-51單片機(jī)的4根高位地址線A15、A14、A13、A12實(shí)現(xiàn)片選,均為低電平有效。A15M1A11A0…M2A11A0…M4A11A0…M3A11A0…A13A14A12A11A0…12121212為了不出現(xiàn)尋址錯(cuò)誤,當(dāng)A15、A14、A13、A12之中有一根地址線為低電平時(shí),其余三根地址線必須為高電平,也就是說(shuō)每次存儲(chǔ)器操作只能選中一個(gè)芯片,這樣可得到4個(gè)芯片的地址分配,如表所示。二進(jìn)制表示十六進(jìn)制A15A14A13A12A11A0芯片M1
1110××××××××××××E000H~EFFFH芯片M2
1101××××××××××××D000H~DFFFH芯片M3
1011××××××××××××B000H~BFFFH芯片M4
0111××××××××××××7000H~7FFFH4個(gè)4KB存儲(chǔ)器芯片的內(nèi)部尋址A11~A0都是000H(共12位)到FFFH(共12位),依靠不同的片選信號(hào)高位地址線A15、A14、A13、A12之中某一根為0,來(lái)區(qū)分這4個(gè)芯片的地址空間。優(yōu)點(diǎn):電路簡(jiǎn)單,不需其他外圍器件,體積小,成本低。缺點(diǎn):可尋址的器件數(shù)目受到限制(例如5片4KB存儲(chǔ)器),各外圍器件的地址空間不連續(xù),不能充分利用存儲(chǔ)空間,每一個(gè)存儲(chǔ)單元的地址不唯一,這會(huì)給程序設(shè)計(jì)帶來(lái)一些不方便。所以線選法一般只用于不太復(fù)雜的系統(tǒng)中,復(fù)雜系統(tǒng)一般采用譯碼法實(shí)現(xiàn)。地址譯碼法地址譯碼法:利用譯碼器對(duì)單片機(jī)的某些高位地址線進(jìn)行譯碼,其譯碼輸出作為存儲(chǔ)器芯片(或I/O接口芯片)的片選信號(hào)。譯碼法是一種最常用的存儲(chǔ)器地址分配的方法,這種方法存儲(chǔ)空間連續(xù),能有效地利用存儲(chǔ)器空間,適用于大容量多芯片的存儲(chǔ)器擴(kuò)展。地址譯碼法必須采用地址譯碼器,常用的譯碼器有74LS13874LS13974LS154…………
例6-2
例6.1系統(tǒng)用譯碼法實(shí)現(xiàn),存儲(chǔ)器芯片與MCS-51單片機(jī)的地址線連接如圖所示,列出各存儲(chǔ)器芯片的地址分配。MCS-51單片機(jī)擴(kuò)展容量4片4KB的存儲(chǔ)器芯片M1、M2、M3、M4ⅣA11A0…A12M1A11A0…M2A11A0…A11A0…M3A11A0…12121212ABCG1A13A14A1574LS138M4由地址線A11~A0用于片內(nèi)尋址,高位地址線A14、A13、A12接到74LS138譯碼器的選擇輸入端C、B、A,A15接到74LS138譯碼器的控制端G1,74LS138器的Y0、Y1、Y2分別作為4個(gè)芯片的片選信號(hào)。根據(jù)譯碼器的邏輯關(guān)系和存儲(chǔ)器的片內(nèi)尋址范圍,可以得到4個(gè)芯片地址空間,如表所示。二進(jìn)制表示十六進(jìn)制A15A14A13A12A11…A0芯片M11011××××××××××××B000H~BFFFH芯片M21010××××××××××××A000H~AFFFH芯片M31001××××××××××××9000H~9FFFH芯片M41000××××××××××××8000H~8FFFH6.2程序存儲(chǔ)器擴(kuò)展存儲(chǔ)器用來(lái)存儲(chǔ)程序和數(shù)據(jù),是計(jì)算機(jī)的重要組成部分。MCS-51單片機(jī)的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器是分開(kāi)的,各有自己的尋址系統(tǒng)、控制信號(hào)和功能。通常,程序存儲(chǔ)器用來(lái)存放程序和表格常數(shù);數(shù)據(jù)存儲(chǔ)器用來(lái)存放程序運(yùn)行時(shí)所需要給定的參數(shù)和運(yùn)行結(jié)果。MCS-51單片機(jī)有4個(gè)存儲(chǔ)器空間,它們是片內(nèi)程序存儲(chǔ)器、片外程序存儲(chǔ)器、片內(nèi)數(shù)據(jù)存儲(chǔ)器(含特殊功能寄存器)、片外數(shù)據(jù)存儲(chǔ)器。當(dāng)單片機(jī)的內(nèi)部程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器的容量不能滿足要求時(shí),就通過(guò)外接存儲(chǔ)器芯片對(duì)單片機(jī)存儲(chǔ)系統(tǒng)擴(kuò)展。6.2.1EPROM擴(kuò)展EPROM(ErasableProgrammableROM,可擦除可編程ROM)芯片可重復(fù)擦除和寫入,解決了PROM芯片只能寫入一次的弊端。EPROM芯片有一個(gè)很明顯的特征,在其正面的陶瓷封裝上,開(kāi)有一個(gè)玻璃窗口,透過(guò)該窗口,可以看到其內(nèi)部的集成電路,紫外線透過(guò)該孔照射內(nèi)部芯片就可以擦除其內(nèi)的數(shù)據(jù),完成芯片擦除的操作要用到EPROM擦除器,EPROM內(nèi)資料的寫入要用專用的編程器。常用程序存儲(chǔ)器EPROM擴(kuò)展芯片常用的EPROM芯片是Intel公司的系列產(chǎn)品,其典型產(chǎn)品有2716、2732、2764、27128、27256…型號(hào)名稱“27”后面的數(shù)字表示其位存儲(chǔ)容量,如果轉(zhuǎn)換成字節(jié)存儲(chǔ)容量,將該數(shù)字除以8即可。
EPROM芯片2716和2764的引腳如圖所示VPP為編程電源線2716的地址信號(hào)線為A0~A10、共11根,2764的地址信號(hào)線為A0~A12、共13根D0~D7,共8根是數(shù)據(jù)信號(hào)線CE為片選信號(hào)線,/CE
=0時(shí),該片被選通OE為數(shù)據(jù)輸出選通信號(hào)線,低電平有效PGM為編程脈沖輸入線,此引腳僅在編程時(shí)接編程脈沖.VPP1A122A73A64A55A46A37A28A19A010D0111213GND1415D416D517D618D719CE20A1021OE22A1123A924A825NC26PGM27Vcc282764D1D2D312A73A64A55A46A37A28A19A010D01112GNDD4D513D614D715CE16A1017OE18VPP19A920A8212223Vcc242716D1D2D3芯片2716和2764的引腳如圖2764的工作方式
引腳工作方式(20)(22)(27)Vpp/V(1)Vcc/V(28)輸出讀出LLHVCCVCCDOUT維持HXXVCCVCC高阻編程LH脈沖VPPVCCDIN編程檢驗(yàn)LLHVPPVCCDOUT禁止編程HXXVPPVCC高阻EPROM擴(kuò)展舉例MCS-51擴(kuò)展一片EPROM時(shí),EPROM數(shù)據(jù)線與單片機(jī)數(shù)據(jù)總線(P0口)相連,EPROM地址線與單片機(jī)低位地址線相連,片選線與單片機(jī)某條未用高位地址線相連,也就是采用線選法優(yōu)點(diǎn):電路連接簡(jiǎn)單,EPROM的輸出允許端與單片機(jī)的PSEN端相連。不同存儲(chǔ)容量的EPROM只是地址線數(shù)量不同而已,2764是8KB存儲(chǔ)容量的EPROM器件,它有13根地址線A12~A0,可選擇213=8192個(gè)片內(nèi)存儲(chǔ)器中任一字節(jié)單元。這13根地址線,高5位與單片機(jī)的P2.4~P2.0連接;低8位與單片機(jī)的P0口連接。單片機(jī)發(fā)送13位地址信息時(shí),分別選中2764片內(nèi)8KB任何一個(gè)單元。2764的數(shù)據(jù)線D0~D7與單片機(jī)的P0口直接連接。EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10OC1C111D31Q22D42Q53D73Q64D84Q95D135Q126D146Q157D177Q168D188Q19VCC20GND1074LS373A010A19A28A37A46A55A64A73A825A924A1021A1123A122A1326A1427CE20OE22VPP1D011D112D213D315D416D517D618D719VCC28GND1427256+5v+5v+5v803180518751+5v276427128....MCS-51單片機(jī)擴(kuò)展多片EPROM時(shí),常采用地址譯碼法優(yōu)點(diǎn):多片EPROM地址編碼唯一確定,采用全譯碼法,不存在地址重疊。MCS-51單片機(jī)擴(kuò)展4片2716芯片,2716是2KB存儲(chǔ)容量的EPROM器件,它有11根地址線A10~A0,可選擇211=2048個(gè)片內(nèi)存儲(chǔ)器中任一字節(jié)單元。這11根地址線,高3位與單片機(jī)的P2.2~P2.0連接;低8位與單片機(jī)的P0口連接。當(dāng)單片機(jī)發(fā)送11位地址信息時(shí),可分別選中2716片內(nèi)2KB任何一個(gè)單元。譯碼芯片選擇74LS138,A13、A12、A11作為74LS138選擇輸入端C、B、A,A15、A14作為74LS138的使能控制信號(hào)。74LS138輸出Y0、Y1、Y2、Y3分別作為4個(gè)芯片的片選信號(hào)。
2716的數(shù)據(jù)線D0~D7與單片機(jī)的P0口直接連接,OE端與單片機(jī)PSEN相連。M1M2M3M46.2.2擴(kuò)展E2PROME2PROM是一種電擦除可編程只讀存儲(chǔ)器主要特點(diǎn):能在計(jì)算機(jī)系統(tǒng)中進(jìn)行在線修改和擦除,并能在斷電的情況下保持修改的結(jié)果,其功能相當(dāng)于磁盤。較新的E2PROM產(chǎn)品在寫入時(shí)還能自動(dòng)完成擦除,且不需要專用的編程電源,可以直接使用單片機(jī)系統(tǒng)的5V電源。因而在智能化儀器儀表、控制裝置等領(lǐng)域得到普遍采用。在芯片的引腳設(shè)計(jì)上,2KB的E2PROM2816與相同容量的EPROM2716是兼容的,8KB的E2PROM2864A與相同容量的EPROM2764是兼容的。由于有上述這些特點(diǎn)使單片機(jī)硬件線路系統(tǒng)的設(shè)計(jì)和調(diào)試更為方便和靈活。
E2PROM擴(kuò)展芯片介紹常用的E2PROM芯片主要有Intel2816、2816A、2817、2817A、2864A……型號(hào)性能28162816A28172817A2864A讀出時(shí)間250ns200/250ns250ns200/250ns250ns讀操作電壓5V5V5V5V5V寫/擦操作電壓21V5V21V5V5V字節(jié)擦除時(shí)間10ms9~15ms10ms10ms10ms寫入時(shí)間10ms9~15ms10ms10ms10ms存儲(chǔ)容量2KB2KB2KB2KB8KB封裝DIP24DIP24DIP28DIP28DIP28兼容271627162764A0~A10:地址輸入線;D0~D7:雙向三態(tài)數(shù)據(jù)線;CE:片選信號(hào)輸入線,低電平有效;OE:讀選通信號(hào)輸入線,低電平有效;WE:寫允許信號(hào)輸入線,低電平有效;RDY和BUSY:是空/忙信號(hào);Vcc:主電源,電壓為5V;GND:接地端。2817A的工作方式
引腳工作方式(20)(22)(27)RDY/(1)輸入/輸出讀出LLH高阻DOUT維持HXX高阻高阻字節(jié)寫入LHLLDIN字節(jié)擦除字節(jié)寫入之前自動(dòng)清除
E2PROM擴(kuò)展舉例MCS-51單片機(jī)外擴(kuò)一片2817AE2PROM,2817A的片選信號(hào)腳與低電平連接,2817A一直被選中。2817AE2PROM的存儲(chǔ)容量為2KB,2817A的地址線和數(shù)據(jù)線與2716兼容,連接方式與上述擴(kuò)展2716EPROM的情況也相同。在讀工作方式時(shí),2817A的輸出允許信號(hào)OE與單片機(jī)的PSEN和RD相與的與門輸出端相連,使程序空間和數(shù)據(jù)空間混合。擦/寫工作方式時(shí),2817A的寫入允許信號(hào)與單片機(jī)的連接,以便進(jìn)行擦、寫操作。對(duì)2817A進(jìn)行擦除和寫入操作時(shí)應(yīng)使用訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器的指令MOVX,將2817A看作外部RAM。P2.0P2.1P2.2WRP0.0P0.1P0.2P0.3P0.4P0.5P0.7P0.6181714138743191615123965245678910272124251918171615131211202930162322213233343536373839111D7D6D5D4D3D2D1D0Q7Q6Q5Q4Q3Q2Q1Q0WEA10A9A8A7A6A5A4A3A2A1A0I/O7I/O6I/O5I/O4I/O3I/O2I/O1I/O0OEALEPSENGOEGNDGND281420VCCGNDCEEA31GND80312817A2K×874LS373RD17P1.01231RDY/BUSY174LS08+5V+5V3kW&6.3數(shù)據(jù)存儲(chǔ)器擴(kuò)展MCS-51單片機(jī)內(nèi)部有128B個(gè)字節(jié)的RAM,當(dāng)系統(tǒng)需要較大容量RAM時(shí),就需要片外擴(kuò)展數(shù)據(jù)存儲(chǔ)器RAM,最大擴(kuò)展64KB。由于單片機(jī)是面向控制的,實(shí)際需要擴(kuò)展容量不大。因此一般采用靜態(tài)RAM較方便,如6116(2KB)、6264(8KB)、62256(32KB)等。與動(dòng)態(tài)RAM相比,靜態(tài)RAM無(wú)須考慮保持而設(shè)置的刷新電路,故擴(kuò)展電路簡(jiǎn)單。擴(kuò)展數(shù)據(jù)存儲(chǔ)器空間地址同外擴(kuò)程序存儲(chǔ)器一樣,由P2口提供高8位地址,P0口分時(shí)提供低8位地址和用作8位雙向數(shù)據(jù)總線。片外RAM的讀/寫由單片機(jī)的RD(P3.7)WE(P3.6)信號(hào)控制,而片外程序存儲(chǔ)器EPROM的輸出允許端OE由單片機(jī)讀選通信號(hào)PSEN控制。盡管與EPROM共處同一地址控制,但由于控制信號(hào)及使用的數(shù)據(jù)傳送指令不同,故不會(huì)發(fā)生總線沖突。6.3.1常用數(shù)據(jù)存儲(chǔ)器芯片介紹常用的數(shù)據(jù)存儲(chǔ)器半導(dǎo)體靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)是Intel公司的6116和6264、62256等。引腳工作方式6116626462256存儲(chǔ)容量2KB8KB32KB讀寫時(shí)間200ns200ns200ns工作電壓5V5V5V典型工作電流35mA40mA8mA典型維持電流5mA2mA0.5mA封裝DIP24DIP28DIP28數(shù)據(jù)存儲(chǔ)器的地址線、數(shù)據(jù)線、片選線功能和EPROM、E2PROM類似,數(shù)據(jù)存儲(chǔ)器需要與CPU進(jìn)行雙向數(shù)據(jù)傳輸,所以需要讀/寫控制線WE和OE。A141A122A73A64A55A46A37A28A19A010D0111213GND1415D416D517D618D719CE20A1021OE22A1123A924A825A1326WE27Vcc2862256D1D2D312A73A64A55A46A37A28A19A010D01112GNDD4D513D614D715CE16A1017OE18WE19A920A8212223Vcc246116D1D2D3NC1A122A73A64A55A46A37A28A19A010D0111213GND1415D416D517D618D719CE120A1021OE22A1123A924A825CE226WE27Vcc286264D1D2D3SRAM工作方式引腳工作方式I/O7~I(xiàn)/O0未選中HXX高阻輸出禁止LHH高阻讀出LLHDOUT寫入LHLDIN6.3.2訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器的讀/寫操作時(shí)序讀片外RAM操作時(shí)序單片機(jī)與外部RAM交換數(shù)據(jù)時(shí),只能使用MOVX類指令,這類指令能產(chǎn)生讀/寫信號(hào)。在執(zhí)行“MOVXA,@DPTR或MOVXA,@Ri”產(chǎn)生信號(hào)。MOVX類指令是單字節(jié)雙周期指令。第一機(jī)器周期是從外部ROM取指令操作碼,工作過(guò)程是外部程序存儲(chǔ)器讀周期時(shí)序。第二個(gè)周期完成從外部RAM讀數(shù)據(jù),過(guò)程如下:在取指令后前半個(gè)機(jī)器周期,P2口輸出高8位地址,P0口輸出低8位地址,接著在ALE下跳沿將P0口低8位地址鎖存。而P2口的高位地址一直保持到指令執(zhí)行結(jié)束。此間PSEN保持高電平(無(wú)效);在后半個(gè)周期,RD變?yōu)榈碗娖剑ㄓ行В?,讀出相應(yīng)RAM單元的內(nèi)容,在RD上升沿完成數(shù)據(jù)讀出任務(wù)。地址或SFRP2地址A15-A8指令輸入浮空浮空浮空數(shù)據(jù)輸入地址或浮空A7-A0ALEPSENRDP2P0TTTTTTRLBMAVWLAVDXRLDVRHDXRHDZ________外部數(shù)據(jù)存儲(chǔ)器讀周期波形圖寫片外RAM操作時(shí)序向片外RAM寫數(shù)據(jù),是MCS-51單片機(jī)執(zhí)行“MOVX@DPTR,A或MOVX@Ri,A”指令產(chǎn)生的動(dòng)作。在單片機(jī)的引腳WR上產(chǎn)生信號(hào)有效電平,這個(gè)信號(hào)是RAM的WE端被選通。寫數(shù)據(jù)開(kāi)始的過(guò)程與讀過(guò)程相似,但寫的過(guò)程是CPU主動(dòng)將數(shù)據(jù)送上P0口總線,故在時(shí)序上,CPU先向P0總線上送完低8位地址后,緊跟這將數(shù)據(jù)送到P0總線。在寫控制信號(hào)WR有效,選通片外RAM,稍過(guò)片刻,P0上的數(shù)據(jù)就寫到RAM內(nèi)。地址或SFRP2DPH或P2輸出地址A8-A15指令輸入浮空數(shù)據(jù)輸出地址或浮空A7-A0ALEPSENWRP2P0TTTTWLWHAVWHOVWAWHOX________外部數(shù)據(jù)存儲(chǔ)器寫周期波形圖6.3.3典型擴(kuò)展數(shù)據(jù)存儲(chǔ)器的接口電路擴(kuò)展靜態(tài)RAM6116地址線A10~A0作為6116的片內(nèi)尋址。8051的P0口線通過(guò)74LS373鎖存器與6116的A7~A0連接,74LS373的作用是鎖存低8位地址。8051的P2.0~P2.2直接與6116的A8~A10,6116的數(shù)據(jù)線D0~D7與8051的P0口直接相連。8051的RD(P3.7)、WR(P3.6)分別連接6116的OE、WE,這樣當(dāng)8051執(zhí)行外部數(shù)據(jù)存儲(chǔ)器讀/寫指令時(shí),符合6116讀/寫工作方式的要求。6116的片選控制端CE接地為常選通,尋址范圍為0000H~07FFH。由于系統(tǒng)使用片內(nèi)ROM從0000H開(kāi)始的空間,因此,EA接高電平。
EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10U?OC1C111D31Q22D42Q53D73Q64D84Q95D135Q126D146Q157D177Q168D188Q19VCC20GND10U?74LS373A08A17A26A35A44A53A62A71A823A922A1019E18G20W21D09D110D211D313D414D515D616D717VCC24GND12U?6116+5v+5v+5v803180518751....擴(kuò)展靜態(tài)RAM62648051擴(kuò)展一片8KB6264外部數(shù)據(jù)存儲(chǔ)器,8051的P0口線通過(guò)74LS373鎖存器與6116的A7~A0連接,地址鎖存信號(hào)ALE與74LS373的輸入選通端G相連,用于鎖存P0口發(fā)出的低8位地址。8051的P2.0~P2.4直接與6264的A8~A12,6264的數(shù)據(jù)線D0~D7與8051的P0口直接相連。8051的RD(P3.7)、WR(P3.6)分別連接6264的OE、WE。6264的片選控制端CE接地,為常選通,地址范圍為0000H~01FFH。P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7ALE/PRDWRD0D1D2D3D4D5D6D7OCGQ0Q1Q2Q3Q4Q5Q6Q73938373635343332A0A1A2A3A4A5A6A7A8A9A10A11A12CS1CS2WEOED0D1D2D3D4D5D6D7P00P01P02P03P04P05P06P07X112MHz181931111212223242526272830171680C51910UC120PC220PVCC74LS3736264109876543252421232256912151619P20P21P22P23P241112131516171819VCC20262722PSEN29EA/VPX1X2RESETINT0INT1T0T1例6-3編寫程序?qū)⑵鈹?shù)據(jù)存儲(chǔ)器中0100H~01FFH單元全部清零。程序如下:MOV DPTR,#0100H ;設(shè)置數(shù)據(jù)塊指針的初值MOV R7,#00H ;設(shè)置長(zhǎng)度計(jì)數(shù)器初值CLR A ;將累加器清零LOOP: MOVX@DPTR,A ;給片外數(shù)據(jù)存儲(chǔ)器中某單 元送“00H”INC DPTR ;地址指針加1DJNZ R7,LOOP ;長(zhǎng)度計(jì)數(shù)器減1,若不為0 則繼續(xù)清零SJMP $ ;執(zhí)行完畢,原地踏步6.4FLASH存儲(chǔ)器的擴(kuò)展FLASH存儲(chǔ)器也稱閃速存儲(chǔ)器,是一種可擦除、可改寫的只讀程序存儲(chǔ)器。但是現(xiàn)在已經(jīng)把它當(dāng)作是一種單獨(dú)的存儲(chǔ)器品種來(lái)對(duì)待,因?yàn)樗幸话愕闹蛔x存儲(chǔ)器所沒(méi)有的良好性能。自從EPROM的問(wèn)世以來(lái),增加EPROM的容量一直是一個(gè)不能令人滿意的問(wèn)題——EPROM的容量一般只有64KB,很難滿足實(shí)際應(yīng)用的需要。1987年,一種利用單個(gè)晶體管的EPROM單元,加上高速靈敏放大器等技術(shù)的新型只讀存儲(chǔ)器問(wèn)世了——該存儲(chǔ)器的容量有256KB。擦除和編程寫入的速度也比一般的E2PROM快了10倍。因而稱為FLASH存儲(chǔ)器,可翻譯成閃速存儲(chǔ)器,簡(jiǎn)稱閃存。閃速存儲(chǔ)器和EPROM,E2PROM的性能比較
類別EPROME2PROM閃速存儲(chǔ)器擦除時(shí)間20min1ms100μs編程時(shí)間<1ms<1ms100μs單元面積/μs26427064芯片面積/mm232.99832.9擦除方法紫外線電擦除電擦除6.4.1FLASH存儲(chǔ)器的分類標(biāo)準(zhǔn)的并行接口這種芯片具有獨(dú)立的地址線和數(shù)據(jù)線,在和CPU接口時(shí),基本上和一般的存儲(chǔ)器接口相似,只要三類總線分別連接就可以。NAND(與非)型閃存NAND型閃存也是一種并行接口芯片,但是在街口是采用了引腳分時(shí)復(fù)用的方法,使得數(shù)據(jù)、地址和命令線分時(shí)復(fù)用I/O總線。結(jié)果,使得接口的引腳數(shù)可以減少很多。串行接口的FLASH存儲(chǔ)器這種產(chǎn)品只通過(guò)一個(gè)串行數(shù)據(jù)輸入、一個(gè)串行數(shù)據(jù)輸出和CPU接口,因此CPU的連接非常簡(jiǎn)單。但由于數(shù)據(jù)和地址都是由一條線來(lái)傳輸,要用不同的命令來(lái)區(qū)分是地址操作還是數(shù)據(jù)操作。6.4.2典型FLASH存儲(chǔ)器芯片簡(jiǎn)介典型FLASH存儲(chǔ)器產(chǎn)品由AMD公司生產(chǎn)的16t閃速存儲(chǔ)器Am29f016B;美國(guó)NationalSemiconductor公司的產(chǎn)品NM29A040/080(分別是4Mbit和8Mbit的串行FLASH存儲(chǔ)器),Atmel公司的閃速存儲(chǔ)器系列,容量從256kbit到4Mbit,采用單一電源供電,并且可以選用幾種不同的電壓電源。AT29C×××系列:5V電源;AT29L×××系列:低電源系列:3.3V電源;AT29B×××系列:低電池供電系列:3V電源。FLASH的片內(nèi)有廠商和產(chǎn)品型號(hào)編碼,其擦除和編程都是通過(guò)對(duì)內(nèi)部寄存器寫命令字進(jìn)行讀取和識(shí)別的,以確定編程算法。不同廠商的命令字不同,內(nèi)部命令寄存器的地址也不同,編程時(shí)查閱FLASH廠家提供相關(guān)資料。
FLASH存儲(chǔ)器的內(nèi)部結(jié)構(gòu)以并口FLASH存儲(chǔ)器為例介紹,它內(nèi)部結(jié)構(gòu)和ROM差不多,也是由數(shù)據(jù)總線接口邏輯、地址譯碼器、數(shù)據(jù)緩沖器、存儲(chǔ)陣列組成,對(duì)FLASH編程寫入過(guò)程簡(jiǎn)述如下:發(fā)編程命令→置扇區(qū)地址(FLASH一般容量較大,分扇區(qū)寫入)→置扇區(qū)內(nèi)字節(jié)地址→寫一個(gè)字節(jié)(采用MOVX@DPTR,A指令)→寫下一個(gè)字節(jié)。
···數(shù)據(jù)緩沖器D0···
讀寫控制邏輯···地址線X地址譯碼器···主存儲(chǔ)器A0A1AnD7D6Y地址譯碼器AT29LV040A芯片簡(jiǎn)介AT29LV040A是Atmel公司生產(chǎn)的一種容量為512KB的FLASH存儲(chǔ)器,采用低電壓3.3V電源供電,無(wú)論是編程還是擦除都使用同樣的電源供電,訪問(wèn)速度為200ns,低功耗,工作電流15mA,維持電流20nA,有獨(dú)立的數(shù)據(jù)線和地址線。從這些芯片引腳功能來(lái)看,AT29LV040A存儲(chǔ)器與RAM十分相似,如果只把FLASH當(dāng)做數(shù)據(jù)存儲(chǔ)器來(lái)用的話,FLASH的擴(kuò)展方法和RAM一樣。
A111A92A83A134A1456VCC7A188A169A1510A12111213A51431OE32A317A218A119A020D02122D223GND24D325D42627D628AT29LV040AA7A6A1015A1716A429CE30D7D5D1AT29LV040AFLASH存儲(chǔ)器的工作方式
操作A18~A0D7~D0讀LLH地址輸入數(shù)據(jù)輸出寫LHL地址輸入數(shù)據(jù)輸出等待H×××高阻輸出禁止LHH×高阻6.4.3典型FLASH存儲(chǔ)器擴(kuò)展電路MCS-51單片機(jī)和FLASH存儲(chǔ)器連接時(shí)注意事項(xiàng)FLASH存儲(chǔ)器既可以作為程序存儲(chǔ)器使用,又可以作為數(shù)據(jù)存儲(chǔ)器使用。傳統(tǒng)的方法是將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開(kāi)使用的。如將FLASH存儲(chǔ)器當(dāng)做兩種存儲(chǔ)器同時(shí)使用,連接時(shí),必須保證無(wú)論是PSEN有效或者是RD、WR有效,F(xiàn)LASH存儲(chǔ)器都可以被訪問(wèn)。PSEN有效時(shí),作為ROM讀出程序,RD、WR有效時(shí),作為RAM可以讀出或?qū)懭霐?shù)據(jù)。
MCS-51單片機(jī)正常的尋址范圍只有64KB,必須用適當(dāng)?shù)姆椒▉?lái)對(duì)FLASH存儲(chǔ)器中64KB以外的區(qū)域來(lái)尋址,否則FLASH存儲(chǔ)器就無(wú)法被充分利用。
8031和FLASH存儲(chǔ)器AT29LV040A的連接現(xiàn)在將AT29LV040AFLASH存儲(chǔ)器應(yīng)用于8031系統(tǒng)中,并且同時(shí)用做程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器。由于AT29LV040A的容量是512KB,需要單片機(jī)有19條地址線才可以充分使用全部的存儲(chǔ)單元。最簡(jiǎn)單的辦法就是從8031的P1口分配幾條線作為高位地址線使用,可以用P1.0~P1.2。
另外,還需產(chǎn)生必要的片選信號(hào)和讀信號(hào)。RD和PSEN經(jīng)過(guò)與門加到AT29LV040A的讀控制信號(hào)當(dāng)PSEN有效時(shí),AT29LV040A作為程序存儲(chǔ)器使用,地址從0000H開(kāi)始,容量是64KB;而當(dāng)RD有效時(shí),AT29LV040A就當(dāng)做數(shù)據(jù)存儲(chǔ)器RAM使用,在使用時(shí)RAM地址必須從10000H開(kāi)始,RAM容量是448KB。803174LS373AT29LV040A
P1.0~P1.2P2.0~P2.7P0.0~P0.7A18~A16A15~A8D0~D7A7~A0ALEWRRDPSENWEOECE&例6-4如圖6-17所示電路,編寫程序?qū)⑵鈹?shù)據(jù)存儲(chǔ)器中10000H單元內(nèi)容讀出送入R0,將R1內(nèi)容寫入20000H單元。程序如下:MOV P1,#01H ;設(shè)置FLASH頁(yè)地址01HMOV DPTR,#0000H ;設(shè)置FLASH頁(yè)內(nèi)地址MOVX A,@DPTR MOV R0,A ;讀出10000H單內(nèi)容送R0MOV P1,#02H ;設(shè)置FLASH頁(yè)地址MOV DPTR,#0000H ;設(shè)置FLASH頁(yè)內(nèi)地址MOV A,R1 MOVX @DPTR,A ;將R1內(nèi)容寫入20000H6.5并行I/O口的擴(kuò)展MCS-51單片機(jī)有4個(gè)8位并行輸入/輸出口P0~P3,當(dāng)擴(kuò)展存儲(chǔ)器時(shí),P2口、P0口被占用,留給用戶的只有P1和P3口,而P3口是多用途口,當(dāng)?shù)诙δ苁褂脮r(shí),就不能作一般I/O口。因此,當(dāng)所接的外設(shè)較多,就必須擴(kuò)展I/O口。MCS-51單片機(jī)擴(kuò)展I/O口和外部數(shù)據(jù)存儲(chǔ)器統(tǒng)一編址,采用相同的控制信號(hào)、相同的尋址方式和相同的指令,因此擴(kuò)展方法和外部存儲(chǔ)器類似。
6.5.1簡(jiǎn)單I/O口擴(kuò)展擴(kuò)展并行I/O口的方法主要有兩種:一種是采用可編程的I/O接口芯片,如8255、8155等;二種是利用非可編程的接口芯片,如74LS273、74LS244、74LS245、74LS373、74LS377等。當(dāng)應(yīng)用系統(tǒng)需要擴(kuò)展的I/O口數(shù)量較少,且功能單一時(shí),一般采用非可編程的接口芯片構(gòu)成簡(jiǎn)單的I/O口。這種接口通過(guò)P0口進(jìn)行擴(kuò)展,由于P0口是數(shù)據(jù)/地址總線,因此擴(kuò)展的輸入口面向總線,必須是三態(tài)的;擴(kuò)展的輸出口連接外部設(shè)備,應(yīng)具有鎖存功能,因此擴(kuò)展簡(jiǎn)單并行口選擇器件的原則是“輸入三態(tài)緩沖,輸出鎖存選通”。
74LS273擴(kuò)展單片機(jī)輸出口74LS273是帶清除端的8D觸發(fā)器,上升沿觸發(fā),具有鎖存功能。CLR端固定接高電平,使之無(wú)效;8051的P2.0和WR經(jīng)或門接到74LS273的CLK端,擴(kuò)展輸出口的地址為0FEFFH(P2.0=0,假設(shè)其余地址線為1)。當(dāng)單片機(jī)向74LS273輸出數(shù)據(jù)時(shí),先把要輸出的數(shù)據(jù)放在累加器A中,然后執(zhí)行一次以0FEFFH為目的地址的傳送操作,這時(shí)P2.0=0,在WR脈沖的作用下,CLK端得到一個(gè)正脈沖,使得經(jīng)P0口輸出的數(shù)據(jù)被鎖存在74LS273輸出端,其輸出控制發(fā)光二極管LED,當(dāng)某線輸出低電平時(shí),該線上的LED發(fā)光。操作指令如下:MOVDPTR,#0FEFFHMOVA,#DATAMOVX@DPTR,A74LS244是8位三態(tài)門電路,無(wú)鎖存功能,常用作并行輸入口和總線驅(qū)動(dòng)器。G為三態(tài)門控制端,低電平有效。用74LS244擴(kuò)展單片機(jī)輸入口,圖中由8051的P2.0和RD經(jīng)或門接到74LS244的G端。當(dāng)P2.0和RD都0時(shí),“或”門輸出0,選通74LS244,將外部信號(hào)輸入到總線。擴(kuò)展輸入口的地址為0FEFFH。當(dāng)無(wú)鍵按下,輸入為全1;若按下某鍵,則所在線輸入為0。操作指令如下:MOVDPTR,#0FEFFHMOVXA,@DPTR從圖中可知,輸入、輸出都是在P2.0為低電平時(shí)有效,74LS244、74LS273的地址都為0FEFFH,但由于分別是由RD和WR信號(hào)控制,所以不會(huì)發(fā)生沖突。例6-5如圖4-18所示電路,編寫程序?qū)崿F(xiàn)功能按下任意鍵,對(duì)應(yīng)的LED發(fā)光。程序如下:LOOP:MOV DPTR, #0FEFFH;數(shù)據(jù)指針指向擴(kuò)展I/O口地址MOVX A, @DPTR;向244讀入數(shù)據(jù),檢測(cè)按鍵MOVX@DPTR,A;向273輸出數(shù)據(jù),驅(qū)動(dòng)LEDSJMP LOOP ;循環(huán)6.5.2可編程8255擴(kuò)展I/O口可編程并行接口芯片是專為和計(jì)算機(jī)接口而設(shè)計(jì)的,它有和計(jì)算機(jī)接口的三總線引腳,方便和CPU連接;其功能可由指令來(lái)加以改變,使用靈活方便。8255是Intel公司生產(chǎn)的可編程通用并行I/O接口芯片,利用軟件編寫的程序可使其能按幾種不同方式:基本方式選通方式雙向方式………8255的內(nèi)部結(jié)構(gòu)3個(gè)并行I/O端口A口:8位輸入輸出或雙向口。B口:8位輸入輸出口。C口:8位輸入輸出口,也可分為兩個(gè)4位口,還可以作為A口、B口選通方式操作時(shí)的狀態(tài)控制信號(hào)。數(shù)據(jù)緩沖器雙向三態(tài)的8位數(shù)據(jù)緩沖器,用于和單片機(jī)的數(shù)據(jù)總線相連。
端口選擇及讀/寫控制邏輯用于管理所有的控制字、狀態(tài)字和數(shù)據(jù)的傳送。
A組和B組控制電路
由控制字控制3個(gè)并行I/O端口的工作方式。
8255的引腳功能數(shù)據(jù)輸入/輸出引腳:D0~D7,與單片機(jī)數(shù)據(jù)總線相連;并行I/O口引腳:A、B、C口線,與外設(shè)相連
;RD:讀信號(hào)線;
WR:寫信號(hào)線;CS:片選信號(hào)線;A0、A1:端口地址選擇信號(hào);RESET:復(fù)位輸入信;8255各端口的工作狀態(tài)與控制信號(hào)的關(guān)系
A1A0RESET工作狀態(tài)000010讀PA(PA數(shù)據(jù)送數(shù)據(jù)總線)010010讀PB(PA數(shù)據(jù)送數(shù)據(jù)總線)100010讀PC(PA數(shù)據(jù)送數(shù)據(jù)總線)000100寫PA(數(shù)據(jù)總線數(shù)據(jù)送PA)010100寫PB(數(shù)據(jù)總線數(shù)據(jù)送PB)100100寫PC(數(shù)據(jù)總線數(shù)據(jù)送PC)110100寫控制字(數(shù)據(jù)總線數(shù)據(jù)送控制字寄存器)×××××1復(fù)位(PA,PB,PC均為輸入)××1××0芯片未選通(數(shù)據(jù)總線為高阻)8255的工作方式及C口置位/復(fù)位控制字82553種工作方式方式0:基本方式,無(wú)需聯(lián)絡(luò)信號(hào),A口、B口、C口均可設(shè)置成基本方式。8255工作在方式0時(shí),單片機(jī)可對(duì)8255進(jìn)行I/O數(shù)據(jù)的無(wú)條件傳送。方式1:選通方式,需要聯(lián)絡(luò)信號(hào),用來(lái)查詢、應(yīng)答和中斷。A口和B口均可獨(dú)立地設(shè)置成選通方式,C口為它們的聯(lián)絡(luò)線。方式2:雙向方式,僅A口可以設(shè)置雙向方式,既作為輸入接口又可作為輸出接口使用,此時(shí)輸入和輸出各使用一套聯(lián)絡(luò)線。當(dāng)作為輸入總線使用時(shí),A口受STBA和IBFA控制;當(dāng)作為輸出總線使用時(shí),A口受OBFA和ACKA控制,其具體工作過(guò)程和方式1相同。
工作方式選擇控制字三種工作方式由寫入控制字寄存器的方式控制字來(lái)決定。三個(gè)端口中C口被分為兩個(gè)部分,上半部分隨A口稱為A組,下半部分隨B口稱為B組。
D7D6D5D4D3D2D1D0特征標(biāo)志位A口方式A口I/OC7~4I/OB口方式B口I/OC3~0I/O固定為100:方式001:方式110:方式20:輸出1:輸入0:輸出1:輸入0:方式01:方式10:輸出1:輸入0:輸出1:輸入C口置位/復(fù)位控制字C口8位中的任意一位,可以用寫入控制口的置位/復(fù)位控制字來(lái)對(duì)C口按位置“1”或者清“0”,這個(gè)功能主要用于位控制。
D7D6D5D4D3D2D1D0特征標(biāo)志位不用C口的位選擇置位/復(fù)位固定為0一般置0000:C口的位0;001:C口的位1;010:C口的位2;011:C口的位3;100:C口的位4;101:C口的位5;110:C口的位6;111:C口的位3;0:復(fù)位1:置位MCS-51單片機(jī)與8255的接口設(shè)計(jì)MCS-51單片機(jī)和8255的連接很簡(jiǎn)單,只需兩者的數(shù)據(jù)線對(duì)接,地址線和片選線接單片機(jī)的地址線即可。用單片機(jī)低兩位地址線和8255地址線相連,A口、B口、C口、控制口地址連續(xù),編程方便;用單片機(jī)高字節(jié)兩位地址線和8255地址線相連,可以不使用地址鎖存器,接線簡(jiǎn)單。
8255地址線A1、A0經(jīng)74LS373接于P0.1、P0.0;片選端接P2.7。若單片機(jī)其他無(wú)用地址都設(shè)為“1”,那么8255的A口、B口、C口及控制口的地址分別為:7FFCH、7FFDH、7FFEH、7FFFH。若無(wú)用地址都設(shè)為“0”,那么8255的A口、B口、C口及控制口的地址分別為:0000H、0001H、0002H、0003H。也可將高字節(jié)中不用的地址設(shè)為“1”,低字節(jié)不用的地址設(shè)為“0”。那么8255的A口、B口、C口及控制口的地址分別為:7F00H、7F01H、7F02H、7F03H。例6-6要求8255工作在方式0,且A口輸入,B口、C口輸出。對(duì)C口的PC5置1。MOVA,#90H ;方式0,A口輸入,B、C口輸 出的控制字→AMOVDPTR,#7F03H ;控制寄存器地址→DPTRMOVX@DPTR,A ;方式控制字→8255控制寄存器MOVA,#0BH ;PC5置1的控制字→AMOVDPTR,#7F03H ;控制寄存器地址→DPTRMOV@DPTR,A ;控制字→8255控制寄存器6.5.3可編程8155擴(kuò)展I/O口MCS-51單片機(jī)系統(tǒng)擴(kuò)展時(shí),在保證系統(tǒng)功能的前提下,采用擴(kuò)展芯片越少越好,可以加快速度和增加可靠性。8155為Intel公司資源豐富的可編程芯片,片內(nèi)集成了靜態(tài)RAM、I/O端口和定時(shí)/計(jì)數(shù)器。單片機(jī)外接一片8155后,就對(duì)單片機(jī)的內(nèi)部資源進(jìn)行了綜合擴(kuò)展,因此,8155在單片機(jī)系統(tǒng)擴(kuò)展中得到了廣泛應(yīng)用。
8155的內(nèi)部結(jié)構(gòu)8155的內(nèi)部結(jié)構(gòu)如圖6-22所示,8155內(nèi)部具有兩個(gè)8位和一個(gè)6位的并行輸入/輸出端口,256B的靜態(tài)RAM,一個(gè)地址鎖存器,一個(gè)14位的可編程的減法計(jì)數(shù)器。MCS-51單片機(jī)系統(tǒng)擴(kuò)展時(shí),用16位地址信號(hào)對(duì)RAM和I/O端口進(jìn)行統(tǒng)一編址,單片機(jī)外擴(kuò)8155時(shí),高8位地址提供片選信號(hào)CE和IO/M(I/O和存儲(chǔ)器選擇)信號(hào),低8位地址用于8155片內(nèi)尋址。
當(dāng)IO/M=1時(shí),8155作為單片機(jī)擴(kuò)展的并行I/O口和定時(shí)/計(jì)數(shù)器,地址由AD2~AD0編碼決定;當(dāng)IO/M=0時(shí),8155作為單片機(jī)擴(kuò)展的256B存儲(chǔ)器,其地址范圍為00H~FFH。
IO/AD7~AD0功能1(I/O口及定時(shí)/計(jì)數(shù)器)×××××000命令/狀態(tài)寄存器×××××001PA口×××××010PB口×××××011PC口×××××100定時(shí)器/計(jì)數(shù)器低8位寄存器TL×××××101定時(shí)器/計(jì)數(shù)器高8位寄存器TH0(存儲(chǔ)器)00000000(00H)256B靜態(tài)RAM11111111(0FFH)256B靜態(tài)RAM14位定時(shí)計(jì)數(shù)器ABCAD0~7CERDWRRESETALETIMEINTIMEOUTVCC(+5V)VSS(GND)PC0~5PB0~7PA0~7IO/
M8155的引腳功能地址/數(shù)據(jù)復(fù)用引腳(AD7~AD0),用來(lái)傳送8位數(shù)據(jù)和低8位地址。并行I/O口引腳:與外設(shè)相連,分為A,B,C三組??刂萍暗刂肪€除了前面介紹的片選端CE、讀寫控制端RD和WR、復(fù)位端RESET還有IO/存儲(chǔ)器選擇端和地址所存允許端ALE。定時(shí)器/計(jì)數(shù)器信號(hào)線
輸入端TIMERIN:高電平有效。輸出端TIMEROUT:低電平有效。12345678910111213141516171819204039383736353433323130292827262524232221PC3PC4TIMERINRESETPC5TIMEROUTCERDWRALEAD0AD1AD2AD3AD4AD5AD6AD7VSSVCCPC2PC1PC0PB7PB6PB5PB4PB3PB2PB1PB0PA7PA6PA5PA4PA3PA2PA1PA08155IO/
M8155的寄存器命令寄存器
8155只有一個(gè)控制字,將控制字寫入命令寄存器(地址為×××××000B),命令寄存器就決定A口、B口和C口和定時(shí)器/計(jì)數(shù)器的工作方式及功能。
D7D6D5D4D3D2D1D0TM2TM1IEBIEAPC2PC1PBPA定時(shí)器/計(jì)數(shù)器命令B口中斷允許A口中斷允許C口工作方式A口工作方式A口工作方式00:不影響計(jì)數(shù)器工作01:停止計(jì)數(shù)器工作10:計(jì)數(shù)器回零停止工作11:?jiǎn)?dòng)計(jì)數(shù)器工作1:允許0:禁止1:允許0:禁止00:方式001:方式110:方式211:方式31:輸出0:輸入1:輸出0:輸入I/O口工作方式可以根據(jù)需要靈活配置,A口、B口可以工作于基本I/O方式和選通I/O方式,具體功能如下:方式0:A口、B口為基本輸入/輸出方式,C口為基本輸入口。方式1:A口、B口為基本輸入/輸出方式,C口為基本輸出口。方式2:A口為選通輸入/輸出口,B口為基本輸入/
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 物業(yè)火災(zāi)工程部應(yīng)急預(yù)案(3篇)
- 老人火災(zāi)應(yīng)急預(yù)案流程(3篇)
- 2025年法學(xué)概論考試復(fù)習(xí)資源及試題及答案
- 醫(yī)院發(fā)生火災(zāi)應(yīng)急預(yù)案存在問(wèn)題(3篇)
- 軟考網(wǎng)絡(luò)專家試題及答案
- 復(fù)雜環(huán)境下的戰(zhàn)略選擇試題及答案
- 高考數(shù)學(xué)重要期末復(fù)習(xí)及答案
- 計(jì)算機(jī)軟件水平考試試題及答案解析
- 定期審視和調(diào)整財(cái)務(wù)計(jì)劃
- 2025商業(yè)店鋪購(gòu)買合同模板
- 會(huì)診制度培訓(xùn)課件
- 2025年經(jīng)濟(jì)師考試旅游經(jīng)濟(jì)(中級(jí))專業(yè)知識(shí)和實(shí)務(wù)試卷及解答參考
- 安徽演藝集團(tuán)有限責(zé)任公司招聘筆試題庫(kù)2024
- 回收二手機(jī)免責(zé)協(xié)議書模板
- 2023年UKKA血液透析血管通路臨床實(shí)踐指南解讀
- 2022版義務(wù)教育藝術(shù)課程標(biāo)準(zhǔn)美術(shù)新課標(biāo)學(xué)習(xí)解讀課件
- 完整版青少年普法宣傳教育全文課件
- 陜西省探礦權(quán)采礦權(quán)使用費(fèi)和價(jià)款管理辦法
- CB-Z-806-2016船舶動(dòng)力定位模型試驗(yàn)規(guī)程
- 押安徽中考數(shù)學(xué)第21題(統(tǒng)計(jì)與概率)(原卷版+解析)
- 浙江省杭州市杭州第二中學(xué)2023-2024學(xué)年高一下數(shù)學(xué)期末達(dá)標(biāo)檢測(cè)試題含解析
評(píng)論
0/150
提交評(píng)論