![畢業(yè)設(shè)計(jì)基于單機(jī)片的智能卡車輛出入管理系統(tǒng)設(shè)計(jì) [附中英文翻譯]_第1頁](http://file4.renrendoc.com/view/f1c5b2160cf65e6f867c7a9c30b3879e/f1c5b2160cf65e6f867c7a9c30b3879e1.gif)
![畢業(yè)設(shè)計(jì)基于單機(jī)片的智能卡車輛出入管理系統(tǒng)設(shè)計(jì) [附中英文翻譯]_第2頁](http://file4.renrendoc.com/view/f1c5b2160cf65e6f867c7a9c30b3879e/f1c5b2160cf65e6f867c7a9c30b3879e2.gif)
![畢業(yè)設(shè)計(jì)基于單機(jī)片的智能卡車輛出入管理系統(tǒng)設(shè)計(jì) [附中英文翻譯]_第3頁](http://file4.renrendoc.com/view/f1c5b2160cf65e6f867c7a9c30b3879e/f1c5b2160cf65e6f867c7a9c30b3879e3.gif)
![畢業(yè)設(shè)計(jì)基于單機(jī)片的智能卡車輛出入管理系統(tǒng)設(shè)計(jì) [附中英文翻譯]_第4頁](http://file4.renrendoc.com/view/f1c5b2160cf65e6f867c7a9c30b3879e/f1c5b2160cf65e6f867c7a9c30b3879e4.gif)
![畢業(yè)設(shè)計(jì)基于單機(jī)片的智能卡車輛出入管理系統(tǒng)設(shè)計(jì) [附中英文翻譯]_第5頁](http://file4.renrendoc.com/view/f1c5b2160cf65e6f867c7a9c30b3879e/f1c5b2160cf65e6f867c7a9c30b3879e5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、前 言該系統(tǒng)設(shè)計(jì)為非接觸式智能卡車輛出入管理系統(tǒng),用于對進(jìn)出小區(qū)的車輛進(jìn)行管理,在每個小區(qū)門口的車輛進(jìn)出口處設(shè)置車輛管理IC卡該卡機(jī),當(dāng)有車輛進(jìn)出時(shí),司機(jī)持IC卡在讀卡機(jī)的感應(yīng)區(qū)(感應(yīng)距離1米內(nèi))前輕晃一上,瞬間完成該卡工作,并將卡上信息傳至服務(wù)器,判斷該卡的合法性與有效性,由門衛(wèi)對車輛牌號進(jìn)行對照核實(shí),如該卡為合法的,且與車輛牌號相符,門衛(wèi)進(jìn)行手動開啟道閘放行車輛,車輛通過后由門衛(wèi)關(guān)閉道閘,否則,道閘不予開啟,駕駛員需與門衛(wèi)協(xié)商處理。 如果是臨時(shí)來訪的車輛,駕駛員進(jìn)入小區(qū)大門前,在入口處領(lǐng)取臨時(shí)卡,車主取卡后,在讀卡機(jī)的感應(yīng)區(qū)(感應(yīng)距離1米內(nèi))晃一下,瞬間完成讀卡工作,并將卡上信息傳至服務(wù)器
2、,門衛(wèi)開啟道閘。車輛離開后,道閘關(guān)閉。 門口處車輛出入管理節(jié)控制模塊將車主持有的IC卡上的信息上傳給管理中已的車輛出入管理系統(tǒng)主機(jī),主機(jī)對接收到的數(shù)據(jù)進(jìn)行分析、存儲,以備后查,做到對進(jìn)出車輛的實(shí)時(shí)監(jiān)控。 1. 軟件功能 車輛管理系統(tǒng)對控制器、大門、出入方式等參數(shù)進(jìn)行設(shè)置。 控制器驗(yàn)證進(jìn)出小區(qū)車輛的駕駛員所持IC卡的有效性。 車輛管理系統(tǒng)計(jì)算機(jī)與車輛出入控制器進(jìn)行通訊,接收車輛出入控制器發(fā)出的車輛出入信息。 車輛管理系統(tǒng)對接收到的數(shù)據(jù)進(jìn)行分析、存儲,并顯示車主名、車輛類型、牌號、出入類型和進(jìn)出時(shí)間等。 住戶車輛的管理、查詢。 IC卡的管理(發(fā)卡、登記、掛失、恢復(fù))、查詢。2. 智能卡的分類智能卡
3、一般可分為接觸式、非接觸式。接觸式智能卡讀卡器必須要有插卡槽和觸點(diǎn)。以供卡片插入接觸電源,有使用壽命短,系統(tǒng)難以維護(hù),基礎(chǔ)設(shè)施投入大等缺點(diǎn),但發(fā)展較早。 非接觸式智能卡又稱射頻卡,是近幾年發(fā)展起來的新技術(shù)。它成功地將射頻識別技術(shù)和IC卡技術(shù)結(jié)合起來,將具有微處理器的集成電路芯片和天線封裝于塑料基片之中。讀寫器采用兆頻段及磁感應(yīng)技術(shù),通過無線方式對卡片中的信息進(jìn)行讀寫并采用高速率的半雙工通信協(xié)議。其優(yōu)點(diǎn)是使用壽命長,應(yīng)用范圍廣,操作方便、快捷,但也存在成本高,讀寫設(shè)備復(fù)雜,易受電磁干擾等缺點(diǎn)。目前,非接觸式卡片的有效讀取距離一般為100200mm, 最遠(yuǎn)讀取距離可達(dá)數(shù)米(應(yīng)用在停車場管理系統(tǒng))。
4、 另外目前在國內(nèi)、外市場上,出現(xiàn)了一種在IC卡基礎(chǔ)上發(fā)展起來的高科技產(chǎn)品TM卡。該卡可以安全、可靠地使用十年以上,采用單總線通信,不需要讀寫設(shè)備輸出電能,與讀寫設(shè)備的連接只有外殼的兩極,具有較好的校驗(yàn)、容錯、高速數(shù)據(jù)傳輸、保密、數(shù)據(jù)存儲功能。TM卡有效克服了接觸式和非接觸式IC卡易于損壞、鎖卡、讀寫設(shè)備復(fù)雜,易受干擾和環(huán)境影響等缺點(diǎn)。除具有上述卡的共同優(yōu)點(diǎn)外,還具有可靠性更高,使用壽命更長,設(shè)備投資更小,維護(hù)方便,環(huán)境適應(yīng)能力強(qiáng)等突出特點(diǎn)。第一章 概述1.1 MCS-51單片機(jī)的特點(diǎn)單片機(jī)(microcontroller, 又稱微控制器)是在一塊硅片上集成了各種部件的微型計(jì)算機(jī)。這些部件包括中
5、央處理器CPU、數(shù)據(jù)存儲器RAM、程序存儲器ROM、定時(shí)器/計(jì)數(shù)器和多種I/O接口電路。8051單片機(jī)的基本結(jié)構(gòu)見圖。CPUROMRAM定時(shí)器/計(jì)數(shù)器時(shí)鐘電路并行接口串行接口中斷系統(tǒng)圖1.1 8051單片機(jī)的基本結(jié)構(gòu)8051是MCS-51系列單片機(jī)的一個產(chǎn)品。MCS51系列單片機(jī)是Intel公司推出的通用型單片機(jī)。它的基本型產(chǎn)品是8051,8031和8751。這三個產(chǎn)品只是片內(nèi)程序存儲器的制造工藝不同。8051的片內(nèi)程序存儲器ROM為掩飾膜型的,在制造芯片時(shí)已將應(yīng)用程序固化進(jìn)去,使它具有了某種專用功能;8031片內(nèi)無ROM,使用時(shí)需外接ROM;8751的片內(nèi)ROM是EPROM型的,固化的應(yīng)用程
6、序可以方便地改寫。以上三個器件是HMOS工藝的。此外還有低功耗基本型的CMOS工藝器件80C51,80C31和87C51等,分別與上述器件兼容。CMOS具有低功耗的特點(diǎn),如8051功耗約為630mW,而80C31的功耗只有120mW。除片內(nèi)ROM類型不同外,8051,8031和8751的其他性能完全相同,其結(jié)構(gòu)特點(diǎn)如下:8位CPU;片內(nèi)振蕩器及時(shí)鐘電路;32根I/O線;外部存儲器ROM和RAM尋址范圍各64KB;2個16位的定時(shí)器/計(jì)數(shù)器;5個中斷源,2個中斷優(yōu)先級;全雙工串行口;布爾處理器。MCS-51系列單片機(jī)已有十多個產(chǎn)品,其性能如表1-1所列。ROM形式片內(nèi)ROM/KB片內(nèi)RAM/字節(jié)
7、尋址范圍/KBI/O中斷源片內(nèi)ROM片內(nèi)EPROM外接EPROM計(jì)數(shù)器并行口串行口80518751803141282*642*164*81580C5187C5180C3141282*642*164*81580528752803282562*643*164*81680C25287C25280C23282562*643*164*817表1-1 MCS-51系列單片機(jī)性能表表1-1中列出了四組性能上略有差異的單片機(jī)。前兩組屬于同一規(guī)格,都稱為51系列。后兩組為52系列,性能要高于51系列。除了存儲器配置等差別外,8052片內(nèi)ROM中還掩膜了BASIC解釋程序,因而可以直接使用BASIC程序。此外,8
8、7C51和87C52還具有兩極程序保密系統(tǒng)。8051單片機(jī)系列指的是MCS-51系列和其他公司的8051派生產(chǎn)品。這些派生產(chǎn)品是在基本型上增強(qiáng)了各種功能的產(chǎn)品,如高級語言型、Flash型、EEPROM、A/D型、DMA型、多并行口型、專用接口型和雙控制器串行通信型等。目前這些增強(qiáng)型的8051系列產(chǎn)品都基于CMOS工藝,故又稱為8051系列。它們給8位單片機(jī)注入了新的活力,為它的開發(fā)應(yīng)用開拓了更廣泛的前景。1.2 MCS-51單片機(jī)內(nèi)部結(jié)構(gòu)圖是MCS-51單片機(jī)內(nèi)結(jié)構(gòu)的總框圖。它可以劃分為CPU、存儲器、并行口、串行口、定時(shí)器/計(jì)數(shù)器和中斷邏輯幾部分??刂浦袛?、定時(shí)、串行口特殊功能寄存器PCRO
9、MI/O口鎖存/驅(qū)動器DPTRRAM定 指時(shí) 令與 寄控 存制 器TMPALUACCACC工作寄存器PSWSP圖1.2 8051單片機(jī)的內(nèi)部結(jié)構(gòu)框圖中央處理器MCS-51單片機(jī)的中央處理器由運(yùn)算器和控制邏輯組成。同時(shí)還包括中斷系統(tǒng)與部分特殊功能寄存器。存儲器對8031而言,只有數(shù)據(jù)存儲器RAM,而無ROM/EPROM部分。8051/8751單片機(jī)中含有程序存儲器ROM/EPROM。I/O端口MCS-51單片機(jī)有4個并行I/O端口(P0、P1、P2、P3),配置了全雙工串行UART,2個16位定時(shí)器/計(jì)時(shí)器(MCS-52子系列為3個)。MCS-51內(nèi)部各個部件都是通過內(nèi)部單一總線連接,其基本結(jié)構(gòu)
10、仍采用CPU加外圍芯片的結(jié)構(gòu)模式,但在功能單元控制上卻有了重大變化,采用特殊功能寄存器集中控制的方法,為用戶編程提供了極大的方便。MCS-51單片機(jī)的引腳功能 MCS-51系列單片機(jī)大多數(shù)都為40條引腳雙列直插式器件,采用CHMOS工藝制造的80C51/80C31除上述封裝形式外,還有方形封裝形式。圖是40引腳的配置圖。引腳除+5V(Vcc40腳)和電源地(Vss20腳)外,按其功能主要由以下三大部分組成。圖 MCS51引腳配置1.3.1 時(shí)鐘電路XTAL1(19腳)芯片內(nèi)部振蕩電路(單級反相放大器)輸入端。XTAL2(18腳)芯片內(nèi)部振蕩電路(單級反相放大器)輸出端。MCS-51的時(shí)鐘可由內(nèi)
11、部方式或外部方式產(chǎn)生。內(nèi)時(shí)鐘方式z12MHz之間任選,電容可以在20pF60pF之間選擇,通常為30pF左右,電容C1和C2的大小對振蕩頻率有微小影響,可起頻率微調(diào)作用。在設(shè)計(jì)印制版時(shí),晶體應(yīng)盡可能與單片機(jī)芯片靠近,以減少寄生電容,保證振蕩器的可靠工作,一般采用瓷片電容。外時(shí)鐘方式 XTAL1接地,XTAL2接外部振蕩器,對外部振蕩信號無特殊要求。由于XTAL2端的電平不是TTL電平,故應(yīng)接一上拉電阻。外部振蕩器應(yīng)提供頻率低于12MHz的方波信號??刂菩盘朢ST/VPD(9腳)復(fù)位信號時(shí)鐘電路工作后,在此引腳上出現(xiàn)兩個周期的高電平,芯片內(nèi)部進(jìn)行初始復(fù)位,復(fù)位后片內(nèi)寄存器狀態(tài)如表1-2所示。P0
12、口P3口輸出高電平,初值07H寫入堆棧SP,清零程序計(jì)數(shù)器PC和其余特殊功能寄存器。但初始復(fù)位不影響片內(nèi)RAM狀態(tài),只要該引腳保持高電平,MCS-51將循環(huán)復(fù)位。RST/VPD從高電平變成低電平時(shí),單片機(jī)將從程序存儲器的0號地址單元開始執(zhí)行程序。另外該引腳還具有復(fù)用功能。將VPD接+5V備用電源,一旦Vcc電位突然下降或斷電,能保護(hù)片內(nèi)RAM中的信息不會丟失,復(fù)電后能正常工作。寄存器 內(nèi)容 寄存器 內(nèi)容PC 0000H TMOD 00HACC 00H TCON 00HB 00H TH0 00HPSW 00H TL0 00HSP 07H TH1 00HDPTR 0000H TL1 00HP0P3
13、 0FFH SCON 00HIP XXX00000 SBUF 不定IE 0XX00000 PCON 0XXX0000 表1-2 復(fù)位后內(nèi)部寄存器狀態(tài)MCS-51通常采用上電自動復(fù)位和開關(guān)復(fù)位兩種方式。上電自動復(fù)位在通電瞬間,電容兩端電壓不能突變,RESET保持高電平,隨之+5V給電容充電,RESET端逐漸降為低電平。RESET端從上電開始得到一個完整正脈沖,只要該脈沖能夠保持10ms以上,MCS-51單片機(jī)就能有效復(fù)位,從而實(shí)現(xiàn)上電自動復(fù)位。在開關(guān)復(fù)位時(shí),只要按下手動按鈕,RESET端即獲得高電平信號,復(fù)位有效。ALE/PROG(30腳) 地址鎖存信號 當(dāng)訪問外部存儲器時(shí),P0口輸出的低8位地
14、址由ALE輸出的控制信號鎖存到片外地址鎖存器,P0口輸出地址低8位后,又能與片外鎖存器傳送信息。換言之,由于P0口做地址/數(shù)據(jù)復(fù)用口,因而P0上的信息究竟是地址還是數(shù)據(jù)完全由ALE來定義。ALE高電平期間,P0口上一般出現(xiàn)地址信息,在ALE下降沿時(shí),將P0口上地址信息鎖存到片外存儲器;在ALE低電平期間P0口上一般出現(xiàn)指令和數(shù)據(jù)信息。平時(shí)不訪問片外存儲器時(shí),該端也以1/6的時(shí)鐘頻率固定輸出正脈沖,因而也可做系統(tǒng)中其他芯片的時(shí)鐘源。ALE可驅(qū)動8個TTL門。PSEN(29腳) 片外程序存儲器讀選通PSEN低電平有效,8051訪問片外程序存儲器時(shí),程序計(jì)數(shù)器PC通過P2口和P0口輸出16位指令地址
15、,PSEN作為程序存儲器讀信號,輸出負(fù)脈沖將相應(yīng)存儲單元的指令讀出并送到P0口上,供8051執(zhí)行。PSEN同樣可驅(qū)動8個TTL門輸入。EA/Vpp (31腳) 內(nèi)部和外部程序存儲器選擇信號對于8051和8751來說,內(nèi)部有4KB的程序存儲器,當(dāng)EA為高時(shí),CPU訪問程序存儲器有兩種情況:地址小于4K時(shí)訪問內(nèi)部存儲器。地址大于4K時(shí)訪問外部存儲器。若EA接地,則不使用內(nèi)部程序存儲器,不管地址大小,取指令時(shí)總是訪問外部程序存儲器。由此可見,8031單片機(jī)(無內(nèi)部ROM型)的EA必須接地。對于EPROM型的單片機(jī),在EPROM編程時(shí),此引腳用于施加21V編程電壓Vpp。I/O端口MCS-51單片機(jī)有
16、4個8位I/O端口P0P3:P0口為三態(tài)雙向口,負(fù)載能力為8個LSTT門電路;P1P3為準(zhǔn)雙向口,負(fù)載能力為4個LSTTL門電路。P0口 (P0.0P0.7,3932腳)為三態(tài)雙向口P0口位結(jié)構(gòu)包括1個輸出鎖存器,2個三態(tài)緩沖器,1個輸出驅(qū)動電路和1個輸出控制端。輸出驅(qū)動電路由一對場效應(yīng)管組成,其工作狀態(tài)受輸出控制端的控制,輸出控制端由一個與門、1個反相器和1個轉(zhuǎn)換開關(guān)MUX組成。對8051/8751來講,P0口既可作地址/數(shù)據(jù)總線使用,又可作通用I/O端口使用。P0口作地址/數(shù)據(jù)復(fù)用總線使用若從P0口輸出地址或數(shù)據(jù)信息,此時(shí)控制端應(yīng)為高電平,轉(zhuǎn)換開關(guān)MUX反相器輸出端與輸出級T1管接通,同時(shí)
17、與門開鎖,內(nèi)部總線上的地址或數(shù)據(jù)信號通過與門去驅(qū)動T0管,又通過反相器去驅(qū)動T1管,這時(shí)內(nèi)部總線上的地址或數(shù)據(jù)信號就傳送到P0口的引腳上;從P0口輸入指令或數(shù)據(jù)時(shí),引腳信號應(yīng)從輸入三態(tài)緩沖器進(jìn)入內(nèi)部總線。對8031單片機(jī)來講,P0口只能作地址/數(shù)據(jù)復(fù)用總線用,不再把它當(dāng)作通用I/O端口使用,它驅(qū)動8個LSTTL門電路。P0口作通用I/O端口使用對于有內(nèi)部ROM的單片機(jī),P0口也可以作通用I/O端口,此時(shí)控制端為低電平,轉(zhuǎn)換開關(guān)把輸出級與鎖存器的Q端接通,同時(shí)因與門輸出為低電平,輸出級T0管處于截止?fàn)顟B(tài),輸出級為漏級開路電路,在驅(qū)動NMOS電路時(shí)應(yīng)外接上拉電阻;作輸入口用時(shí),應(yīng)先將鎖存器寫“1”
18、,這時(shí)輸出級兩個場效應(yīng)管均截止,可作高阻抗輸入,通過三態(tài)輸入緩沖器讀取引腳信號,從而完成輸入操作。P0口線上的“讀修改寫”功能 一個三態(tài)緩沖器是為了讀取鎖存器Q端的數(shù)據(jù)。Q端與引腳的數(shù)據(jù)是一致的。結(jié)構(gòu)上這樣安排是為了滿足“讀修改寫”指令的需要,這類指令的特點(diǎn)是:先讀口鎖存器,隨之可能對讀入的數(shù)據(jù)進(jìn)行修改再寫入到端口上。例如:ANL P0、A;ORL P0、A;XRL P0、A;。 這類指令同樣適用于P1P3口,其操作是:先將口字節(jié)的全部8位數(shù)讀入,再通過指令修改某些位,然后將新的數(shù)據(jù)寫回到口鎖存器中。P1口(P1.0P1.7,18腳) 準(zhǔn)雙向口(1)P1口是一個有內(nèi)部上拉電阻的準(zhǔn)雙向口,P1口
19、的每一位口線能獨(dú)立用作輸入線或輸出線。作輸出時(shí),如將“0”寫入鎖存器,場效應(yīng)管導(dǎo)通,輸出線為低電平,即輸出為“0”。因此在作輸入時(shí),必須先將“1”寫入口鎖存器,使場效應(yīng)管截止。該口線由內(nèi)部上拉電阻提拉成高電平,同時(shí)也能被外部輸入源拉成低電平,既當(dāng)外部輸入“1”時(shí)該口線為高電平,而輸入“0”時(shí),該口線為低電平。P1口作輸入時(shí),可被任何TTL電路和MOS電路驅(qū)動,由于內(nèi)部上拉電阻,也可以直接被集電極開路和漏級開路電路驅(qū)動,不必外加上拉電阻。P1口可驅(qū)動4個LSTTL門電路。(2)P1口其他功能P1口在EPROM編程和驗(yàn)證程序時(shí),它輸入低8位地址;在8032/8052系列中P1.0和P1.1是多功能
20、的,P1.0可作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)觸發(fā)輸入端T2,P1.1可作定時(shí)器/計(jì)數(shù)器2的外部控制輸入端T2EX。P2口(P2.0P2.7,2128腳) 準(zhǔn)雙向口(1)P2口作通用I/O端口使用當(dāng)P2口作通用I/O端口使用時(shí),是一個準(zhǔn)雙向口,此時(shí)轉(zhuǎn)換開關(guān)MUX 倒向左邊,輸出級與鎖存器接通,引腳可接I/O設(shè)備,其輸入輸出操作與P1口完全相同。 (2)P2口作地址總線口使用當(dāng)系統(tǒng)中接有外部存儲器時(shí),P2口用于輸出高8位地址A15A8。這時(shí)在CPU的控制下,轉(zhuǎn)換開關(guān)MUX倒向右邊,接通內(nèi)部地址總線。P2口的口線狀態(tài)取決于片內(nèi)輸出的地址信息,這些地址信息來源于PCH、DPH等。在外接程序存儲器的系統(tǒng)中
21、,由于訪問外部存儲器的操作連續(xù)不斷,P2口不斷送出地址高8位。例如,在8031構(gòu)成的系統(tǒng)中,P2口一般只作地址總線使用,不再作I/O端口直接連外部設(shè)備。在不接外部程序存儲器而接有外部數(shù)據(jù)存儲器的系統(tǒng)中,情況有所不同。若外接數(shù)據(jù)存儲器容量為256KB,則可使用MOVX RI指令由P0口送出8位地址,P2口上引腳的信號在整個訪問外部數(shù)據(jù)存儲器期間也不會改變,故P2口仍可作通用I/O端口使用。若外接存儲器容量較大,則需用 MOVX DPTR類指令由P0口和P2口送出16位地址。在讀寫周期內(nèi),P2口引腳上將保持地址信息,但從結(jié)構(gòu)可知,輸出地址時(shí),并要求P2口鎖存器鎖存“1”,鎖存器內(nèi)容也不會在送地址信
22、息時(shí)改變。故訪問外部數(shù)據(jù)存儲器周期結(jié)束后,P2口鎖存器的內(nèi)容又會重新出現(xiàn)在引腳上。這樣,根據(jù)訪問外部數(shù)據(jù)存儲器的頻繁程度,P2口仍可在一定限度內(nèi)作一般I/O端口使用。P2口可驅(qū)動4個LSTTL門電路。P3口(P3.0P3.7,1017腳)雙功能口P3口作第一功能口(通用I/O端口)使用P3口作通用I/O端口使用時(shí),輸出功能控制線為高電平,與非門的輸出取決于鎖存器的狀態(tài),此時(shí)鎖存器Q端的狀態(tài)與其引腳狀態(tài)是一致的。在這種情況下,P3口的結(jié)構(gòu)和操作與P1口相同。P3口作第二功能口使用P3口的第二功能實(shí)際上就是系統(tǒng)具有控制功能的控制線。此時(shí)相應(yīng)的口線鎖存器必須為“1”狀態(tài),與非門的輸出由第二功能輸出線
23、的狀態(tài)確定,從而P3口線的狀態(tài)取決于第二功能輸出線的電平。在P3口的引腳信號輸入通道中有2個三態(tài)緩沖器,第二功能的輸入信號取自第一個緩沖器的輸出端,第二個緩沖器仍是第一功能的讀引腳信號緩沖器。P3口可驅(qū)動4個LSTTL門電路,P3口的第二功能定義如表1-3所示??诰€ 第二功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0輸入)P3.3 /INT1(外部中斷1輸入)P3.4 T0(外部計(jì)數(shù)器0觸發(fā)輸入)P3.5 T1(外部計(jì)數(shù)器1觸發(fā)輸入)P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)表1-3 P3口第二功能定義 M
24、CS-51單片機(jī)管腳的應(yīng)用特性端口的負(fù)載能力和接口要求綜上所述,P0口的輸出級與P1P3口的輸出級在結(jié)構(gòu)上是不同的,因此他們的負(fù)載能力與接口要求不同。P0口的每個位口線可驅(qū)動8個LSTTL門輸入,當(dāng)把它當(dāng)作通用I/O端口使用時(shí),輸出級是漏級開路,故用它去驅(qū)動NMOS輸入時(shí)需外接上拉電阻;把它當(dāng)作地址/數(shù)據(jù)總線口使用時(shí),它為三態(tài)雙向口,無需外界再加上拉電阻。P1P3口輸出級接有內(nèi)部上拉電阻,它的每個位口線可驅(qū)動4個LSTTL門輸入,輸入端都可以被集電極開路或漏級開路電路所驅(qū)動,無需再外接上拉電阻。CHMOS端口只提供幾毫安輸出電流,故當(dāng)作為輸出去驅(qū)動一個普通晶體管的基級時(shí),應(yīng)在端口與晶體管基級之
25、間串一個電阻,以限制高電平輸出時(shí)的電流。系統(tǒng)擴(kuò)展邏輯設(shè)計(jì)的三總線結(jié)構(gòu)MCS-51系統(tǒng)構(gòu)成仍采用傳統(tǒng)微機(jī)系統(tǒng)所采用的三總線結(jié)構(gòu),以方便實(shí)現(xiàn)系統(tǒng)擴(kuò)展的邏輯設(shè)計(jì)。地址總線A0A15(16位)MCS-51系統(tǒng)允許用戶擴(kuò)展64KB外部程序存儲器和64KB外部數(shù)據(jù)存儲器,故系統(tǒng)必須提供16位地址線。P0口作為地址/數(shù)據(jù)復(fù)用口,在訪問外部存儲器時(shí),由地址鎖存信號ALE的下降沿把P0.0P0.7端口上的低8位地址信號鎖存到地址鎖存器中,成為系統(tǒng)地址線的A0A7;P2口在系統(tǒng)訪問外部存儲器時(shí)由P2.0P2.7送出系統(tǒng)地址的高8位A8A15,從而構(gòu)成系統(tǒng)的16位地址總線。數(shù)據(jù)總線D0D7(8位) P0口作為系統(tǒng)地
26、址/數(shù)據(jù)復(fù)用口,在訪問外部程序存儲器期間,即在取指周期中程序存儲器選通PSEN信號有效時(shí),P0口作為數(shù)據(jù)總線將出現(xiàn)指令信號;在訪問外部數(shù)據(jù)存儲器期間,當(dāng)讀RD信號和寫WR信號有效時(shí),P0口上將出現(xiàn)數(shù)據(jù)信號;此時(shí)P0.0P0.7就是系統(tǒng)數(shù)據(jù)總線上的數(shù)據(jù)信息D0D7??刂瓶偩€(12位)系統(tǒng)控制總線共12根,即P3口的第二功能狀態(tài)加上控制線RESET、EA、ALE和PSEN。MCS-51的存儲器組織一般微型計(jì)算機(jī)通常只有一個邏輯空間,在存儲器的設(shè)計(jì)上,程序存儲器ROM、數(shù)據(jù)存儲器RAM都要統(tǒng)一編址,即一個存儲器地址對應(yīng)一個唯一的存儲單元。在存儲單元的設(shè)計(jì)上,單片機(jī)的共同特點(diǎn)是將程序存儲器ROM和數(shù)據(jù)
27、存儲器RAM分開,他們有各自的尋址機(jī)構(gòu)和尋址方式。MCS-51單片機(jī),它片內(nèi)集成了一定容量的程序存儲器和數(shù)據(jù)存儲器,同時(shí)還具有強(qiáng)大的外部存儲器擴(kuò)展能力。MCS-51從物理上可分為4個存儲空間:片內(nèi)程序存儲器和片外擴(kuò)展的程序存儲器,片內(nèi)數(shù)據(jù)存儲器和片外擴(kuò)展的數(shù)據(jù)存儲器。從邏輯上,即從用戶使用角度去分,MCS-51可分為3個邏輯空間:片內(nèi)外統(tǒng)一編址的64KB程序存儲器地址空間:256B(MCS-51子系列)或384B(MCS-52子系列)的片內(nèi)數(shù)據(jù)存儲器地址空間;以及64KB外部數(shù)據(jù)存儲器地址空間。用戶要采用不同的指令形式和尋址方式,訪問這3個不同的邏輯空間。MCS-51程序存儲器程序存儲器是以程
28、序計(jì)數(shù)器PC作地址指針,MCS-51的程序計(jì)數(shù)器PC是16位的,因此尋址的地址空間為64KB。1. MCS-51內(nèi)部程序存儲器8051/8751內(nèi)部有4KBROM/EPROM程序存儲器,地址為0000H0FFFH。對于有內(nèi)部ROM的單片機(jī),應(yīng)把控制線EA接成高電平。正常運(yùn)行時(shí),使程序從內(nèi)部ROM開始運(yùn)行,當(dāng)PC值超過0FFFH時(shí),自動轉(zhuǎn)到外部擴(kuò)展的存儲區(qū)1000HFFFFH地址空間去執(zhí)行程序。若把EA接成低電平,可用于調(diào)試狀態(tài),把調(diào)試程序放置在與內(nèi)部ROM空間重疊的外部存儲器內(nèi)。2. 外部程序存儲器8031/8032/80C32片內(nèi)無ROM,可擴(kuò)展64KB外部程序存儲器。對于這種芯片,其引腳控
29、制線EA應(yīng)接成低電平,迫使PC從外部程序存儲器取指令。此時(shí),指令地址由PC送出,并在外部程序存儲器讀選通PSEN有效時(shí),從外部ROM中取出指令并執(zhí)行子。程序存儲器可采用立即尋址和基址+變址尋址方式。64KB程序存儲器中有7個地址具有特殊功能,MCS-51復(fù)位后,(PC)=0000H,故系統(tǒng)程序必須從0000H單元開始,因而0000H是復(fù)位入口地址,也叫做系統(tǒng)程序的啟動地址。一般在該單元中存放一條絕對跳轉(zhuǎn)指令,跳轉(zhuǎn)地址通常放在初始化程序及主程序中。除0000H單元外,其他6個特殊單元分別對應(yīng)6種中斷入口地址,如表1-4所示。通常在這些入口地址都安放一條絕對跳轉(zhuǎn)指令,跳轉(zhuǎn)到相應(yīng)中斷服務(wù)程序入口去執(zhí)
30、行中斷服務(wù)程序。中斷源 入口地址外部中斷0 0003H定時(shí)器0溢出 000BH外部中斷1 0013H定時(shí)器1溢出 001BH串行口 0023H*定時(shí)器2溢出或T2EX(P1.1)端負(fù)跳 002BH 表1-4 各種中斷服務(wù)子程序入口地址數(shù)據(jù)存儲器數(shù)據(jù)存儲器分為片內(nèi)和片外兩種,二者無論在物理上和邏輯上,其地址空間都是彼此獨(dú)立的。片內(nèi)數(shù)據(jù)存儲器地址范圍為00HFFH,片內(nèi)數(shù)據(jù)存儲器地址空間為0000HFFFFH。訪問片內(nèi)RAM用“MOV”指令:訪問片外RAM用“MOVX”指令。片內(nèi)數(shù)據(jù)存儲器在物理上可劃分為3個不同的塊:00H7FH(0127)單元組成的128BRAM塊,80HFFH(128255)
31、單元組成的128BRAM塊,128B專用特殊功能寄存器(SFR)塊在MCS-51子系列中,只有128B RAM塊(地址為00H7FH)和128B特殊功能寄存器塊(地址為80HFFH),這兩塊地址空間是相連的。在MCS-52子系列中,有256個RAM單元,高128B RAM塊與SFR塊的地址是重疊的,都是80HFFH,究竟訪問哪一塊是通過不同的尋址方式來區(qū)分的。訪問高128B RAM采用寄存器間接尋址,訪問SFR塊時(shí)只能采用直接尋址方式。訪問低128B RAM時(shí),則兩種尋址方式都可以采用。值得注意的是在128B SFR 塊中僅有26個字節(jié)是有定義的,若訪問這一塊中一個無定義的單元,則將得到一個不
32、確定的隨機(jī)數(shù)。內(nèi)部RAM區(qū)在MCS-51片內(nèi)真正可作數(shù)據(jù)存儲器用的只有128個RAM單元,地址為00H7FH。它們可劃分為三個區(qū)域:工作寄存器區(qū),位尋址區(qū)和數(shù)據(jù)緩沖區(qū)。通用寄存器組由32個RAM單元組成,地址為00H1FH。共4個區(qū),每區(qū)由8個通用工作寄存器R0R7組成。工作寄存器區(qū)域的選擇有程序狀態(tài)字PSW中的RS1和RS0確定,他們可用位操作指令直接修改,從而選擇不同的工作寄存器區(qū),如表1-5所示工作寄存器區(qū) 工作寄存器選擇位 工作寄存器所占當(dāng)前RAM地址 PSW.4 PSW.3 R0R7 (RS1) (RS0) 0區(qū) 0 0 00H07H 1區(qū) 0 1 08H0FH2區(qū) 1 0 10H1
33、7H3區(qū) 1 1 18H1FH 表1-5 工作寄存器選擇4個通用寄存器區(qū)給軟件設(shè)計(jì)帶來極大方便,在實(shí)現(xiàn)中斷嵌套時(shí)可靈活選擇不同工作寄存器區(qū)以方便實(shí)現(xiàn)現(xiàn)場保護(hù)。位尋址區(qū)RAM位尋址區(qū)是布爾處理機(jī)數(shù)據(jù)存儲器的主要部分,全部可以位尋址。其字節(jié)地址為20H2FH共16個RAM單元,這些RAM單元可按位操作(也可按字節(jié)操作)。這16個字節(jié)有128位,其位地址為00H7FH,另外,在SFR塊中有12個專用寄存器的字節(jié)地址能被8整除,這12個SFR的93位具有位尋址功能。這樣,位尋址區(qū)由128個RAM位與93個SFR位組成,共221位可由布爾指令直接按位操作。用戶RAM區(qū)用戶RAM區(qū)也稱為數(shù)據(jù)緩沖區(qū),地址為
34、30H7FH,這些RAM單元按字節(jié)尋址。由于8051單片機(jī)在復(fù)位時(shí),堆棧指針SP指向07H單元,故當(dāng)用戶使用堆棧時(shí),應(yīng)該首先設(shè)置堆棧。用戶堆棧一般設(shè)在30H7FH范圍之內(nèi)。原則上棧深為128個字節(jié),即以不超過RAM空間為限。對MCS-51子系列而言,實(shí)際堆棧空間比128字節(jié)小得多,SP設(shè)的越大,堆棧就越淺。專用寄存器(SFR)專用寄存器又稱為特殊功能寄存器。MCS-51片內(nèi)的I/O端口鎖存器、定時(shí)器/計(jì)數(shù)器,串行口數(shù)據(jù)緩沖器以及各種控制寄存器(除PC外),都以特殊功能寄存器的形式出現(xiàn),它們離散地分布在片內(nèi)80HFFH地址空間范圍內(nèi)。MCS-51共有23個特殊功能寄存器,其中5個是雙字節(jié)寄存器。
35、程序計(jì)數(shù)器PC在物理上是獨(dú)立的,其余22個寄存器都屬于片內(nèi)數(shù)據(jù)存儲器SFR塊,共占26個字節(jié)。片內(nèi)特殊功能寄存器SFR能綜合地、實(shí)時(shí)地反映整個單片機(jī)內(nèi)部工作狀態(tài)及工作方式,因此,它們是極其重要的。對單片機(jī)用戶來說,掌握各個SFR的工作狀態(tài)及工作方式,對于對實(shí)現(xiàn)單片機(jī)系統(tǒng)的控制具有重要意義。這些特殊功能寄存器的標(biāo)志符、名稱和地址如表1-6所示。 標(biāo)志符 名稱 地址*ACC 累加器 0E0H *B B寄存器 0F0H*PSW 程序狀態(tài)字 0D0HSP 堆棧指針 81HDPTR 數(shù)據(jù)指針 83H和82H*P0 口0 80H*P1 口1 90H*P2 口2 0A0H*P3 口3 0B0H*IP 中斷優(yōu)
36、先級控制 0B8H*IE 允許中斷控制 0A8HTMOD 定時(shí)器/計(jì)數(shù)器方式控制 89H*TCON 定時(shí)器/計(jì)數(shù)器控制 88H+*T2CON 定時(shí)器/計(jì)數(shù)器2控制 0C8HTH0 定時(shí)器/計(jì)數(shù)器0(高位字節(jié)) 8CHTL0 定時(shí)器/計(jì)數(shù)器0(低位字節(jié)) 8AHTH1 定時(shí)器/計(jì)數(shù)器1(高位字節(jié)) 8DHTL1 定時(shí)器/計(jì)數(shù)器1(低位字節(jié)) 8BH+TH2 定時(shí)器/計(jì)數(shù)器2(高位字節(jié)) 0CDH+TL2 定時(shí)器/計(jì)數(shù)器2(低位字節(jié)) 0CCH+RLDH 定時(shí)器/計(jì)數(shù)器2自動再裝載(高位字節(jié)) 0CBH+RLDL 定時(shí)器/計(jì)數(shù)器2自動再裝載(低位字節(jié)) 0CAH+SCON 串行控制 98HSBUF
37、 串行數(shù)據(jù)緩沖器 99HPCON 電源控制 97H表1-6 專用寄存器(除PC外)程序計(jì)數(shù)器PC程序計(jì)數(shù)器PC用于存放下一條要執(zhí)行指令的地址,是一個16位專用寄存器,尋址范圍64KB,PC在物理結(jié)構(gòu)上是獨(dú)立的,不屬于特殊功能寄存器SFR塊。累加器A累加器A是一個最常用的專用寄存器,系統(tǒng)運(yùn)轉(zhuǎn)時(shí)工作最頻繁,大部分單操作數(shù)指令的操作數(shù)取自累加器A,很多雙操作數(shù)指令的一個操作數(shù)取自A;加、減、乘、除算術(shù)運(yùn)算以及邏輯操作指令的結(jié)果都存放在累加器A或AB寄存器對中;輸入/輸出大多數(shù)指令都以累加器A為核心操作。指令系統(tǒng)中采用A作累加器的助記符。寄存器B它是一個8位寄存器。一般用于乘除法指令,與累加器A配合使
38、用。寄存器B存放第二操作數(shù),或者乘積的高位字節(jié)或除法的余數(shù)部分。在其他指令中,可作為中間結(jié)果的暫存器使用,相當(dāng)于RAM中的一個特殊單元。程序狀態(tài)字PSW程序狀態(tài)字是一個8位寄存器,用來存放程序的狀態(tài)信息,表征指令的執(zhí)行狀態(tài),供程序查詢和判別之用。其格式如下圖所示。MSB LSBCYAC P0RS1RS0OVXP下面說明各位的含義。 (1)CY(PSW.7):進(jìn)/借位標(biāo)志在執(zhí)行加/減法指令時(shí),如果操作結(jié)果的D7位有進(jìn)/借位,則CY置“1”,否則清“0”。在布爾處理機(jī)中被定義為布爾(位)累加器。(2)AC(PSW.6):輔助進(jìn)位標(biāo)志或稱為半進(jìn)位,當(dāng)進(jìn)行加法操作而產(chǎn)生由低4位向高4位數(shù)進(jìn)位時(shí),AC將
39、被硬件直“1”,否則被清“0”。AC被用于BCD碼加法調(diào)整。(3)F0(PSW.5):標(biāo)志0由用戶定義的一個狀態(tài)標(biāo)志??梢杂密浖硎顾谩?”或清“0”,也可以由軟件測試F0來控制程序流向。(4)RS1,RS0(PSW.4,PSW.3):工作寄存器區(qū)選擇控制位可由軟件來改變RS1和RS0的組合以確定當(dāng)前使用的工作寄存器區(qū)。(5)OV(PSW.2):溢出標(biāo)志用于補(bǔ)碼運(yùn)算,以指示溢出狀態(tài)。(6)P:(PSW.0)奇偶標(biāo)志每個指令周期都由硬件來置位或清“0”,以表示累加器A中植“1”的位數(shù)的奇偶性。若P=1,則A中“1”的位數(shù)為奇數(shù),否則P=0。該標(biāo)志對串行數(shù)據(jù)通信中的信息傳輸有重要意義。在串行數(shù)據(jù)
40、通信中,常用奇偶校驗(yàn)的方法來檢驗(yàn)數(shù)據(jù)傳輸?shù)目煽啃浴T诎l(fā)送時(shí)可根據(jù)P值對數(shù)據(jù)的奇偶位置位或清“0”。堆棧指針SP它是一個8位寄存器,用來存放棧頂?shù)刂贰CS-51堆棧設(shè)在內(nèi)部RAM中,是一個按“先進(jìn)后出”順序受SP管理的存儲區(qū)域。在程序中斷、子程序調(diào)用等情況下,用于存放一些特殊信息。當(dāng)數(shù)據(jù)壓入堆棧時(shí),SP就自動加“1”;當(dāng)數(shù)據(jù)從堆棧中彈出時(shí),SP就自動減“1”。因而SP指針始終指向棧頂。MCS-51堆棧深度為128個字節(jié),系統(tǒng)復(fù)位時(shí)硬件使SP=07H。堆棧在內(nèi)部RAM區(qū)中的位置可根據(jù)程序要求由對SP靈活編程來安排。數(shù)據(jù)指針DPTR是一個16位專用寄存器,其高字節(jié)寄存器用DPH表示,低字節(jié)寄存器用
41、DPL表示。既可作為16位寄存器(DPTR)使用,又可作為兩個獨(dú)立的8位寄存器(DPH、DPL)來使用。DPTR主要用來保存16位地址,當(dāng)對64KB外部數(shù)據(jù)存儲器RAM空間尋址時(shí),作間址寄存器用,以指向外部數(shù)據(jù)存儲器地址。這時(shí)有兩條傳送指令MOVX A、DPTR和MOVX DPTR、A。該指針也可以用來訪問程序存儲器內(nèi)的表格常數(shù)。 I/O端口P0P3專用寄存器P0、P1、P2和P3分別是I/O端口P0P3的鎖存器。串行數(shù)據(jù)緩沖器SBUF串行數(shù)據(jù)緩沖器SBUF用于欲發(fā)送或已接收的數(shù)據(jù)。它由兩個獨(dú)立的寄存器組成,一個是發(fā)送緩沖器,一個是接收緩沖器。當(dāng)要發(fā)送的數(shù)據(jù)傳送到SBUF時(shí),進(jìn)的是發(fā)送緩沖器;
42、當(dāng)要從SBUF取數(shù)據(jù)時(shí),則取自接收緩沖器,取走的是剛剛接收到的數(shù)據(jù)。9. 定時(shí)器/計(jì)數(shù)器MCS-51子系列中有2個16位定時(shí)器/計(jì)數(shù)器T0和T1,MCS-52子系列則增加了一個16位定時(shí)器/計(jì)數(shù)器T2。它們各由2個獨(dú)立的8位寄存器組成,共分為6個獨(dú)立的寄存器:TH0、TL0、TH1、TL1、TH2和TL2??梢詫@6個寄存器尋址,但不可以把T0、T1和T2當(dāng)作一個16位寄存器來對待。10. 其他控制寄存器IP、IE、TMOD、TCON、T2CON、SCON和PCON寄存器分別包括有系統(tǒng)中斷設(shè)定、定時(shí)器/計(jì)數(shù)器工作設(shè)定、串行口和供電方式的控制及狀態(tài)位等信息。第二章 MCS-51單片機(jī)系統(tǒng)擴(kuò)展及接
43、口技術(shù) 雖然MCS-51單片機(jī)芯片內(nèi)部集成了計(jì)算機(jī)的基本功能部件,但由于片內(nèi)ROM、RAM的容量、I/O端口和定時(shí)器/計(jì)數(shù)器數(shù)量等是有限的,在許多的實(shí)際應(yīng)用系統(tǒng)中,還需擴(kuò)展片外EPROM、RAM、I/O口以及定時(shí)器/計(jì)數(shù)器等,才能滿足實(shí)際需要。系統(tǒng)擴(kuò)展就是指單片機(jī)內(nèi)部各功能部件不能滿足應(yīng)用系統(tǒng)的要求,在片外連接相應(yīng)的外圍芯片,對MCS-51單片機(jī)的功能進(jìn)行擴(kuò)展以滿足應(yīng)用要求。本章將討論系統(tǒng)的擴(kuò)展方法以及接口技術(shù)。程序存儲器的擴(kuò)展單片機(jī)在原理設(shè)計(jì)上,程序存儲器和數(shù)據(jù)存儲器的地址空間是相互獨(dú)立的,擴(kuò)展用的程序存儲器芯片大多采用EPROM,最大可擴(kuò)展到64K字節(jié),外部程序存儲器芯片與單片機(jī)的連接方法
44、如下:1地址線 程序存儲器的低8位地址線(A0A7)與P0口(P0.0P0.7)相連。程序存儲器的高8位地址線(A8A15)與P2口(P2.0P2.7)相連。 由于單片機(jī)的P0口分時(shí)輸出低8位地址和數(shù)據(jù),故必須外加地址鎖存器,并由CPU發(fā)出的地址鎖存允許信號ALE的下降沿將地址信息鎖存到鎖存器中。單片機(jī)的P2口一般作為高位地址線及片選線,由于F2口輸出具有鎖存功能,故不必外加地址鎖存器。2數(shù)據(jù)線 程序存儲器的8位數(shù)據(jù)線與P0口(P0.0P0.7)從低到高對應(yīng)相連。3控制線 程序選通有效信號PSEN端與程序存儲器的輸出使能端OE相連。地址鎖存允許信號ALE通常接至地址鎖存器的鎖存控制端G。 圖2
45、.1為系統(tǒng)擴(kuò)展一片27256(32K字節(jié))的系統(tǒng)。圖中地址鎖存器采用74HC573(三態(tài)輸出8D鎖存器),三態(tài)控制端OC接地,保證輸出常通,鎖存控制端C與ALE相連。圖中27256的片選端CE接地,輸出使能端OE受PSEN的控制。該27256所占的地址空間為0000H7FFFH。 程序存儲器與數(shù)據(jù)存儲器的擴(kuò)展2.2 數(shù)據(jù)存儲器的擴(kuò)展在MCS-51系列單片機(jī)中,片內(nèi)數(shù)據(jù)存儲器容量一般為128256字節(jié),當(dāng)數(shù)據(jù)量較大時(shí),就需在片外擴(kuò)展RAM數(shù)據(jù)存儲器,擴(kuò)展容量最大可達(dá)64K字節(jié)。單片機(jī)與數(shù)據(jù)存儲器的連接方法和單片機(jī)與程序存儲器的連接方法大致一樣,即:地址線、數(shù)據(jù)線的連接與程序存儲器的連法一樣??刂?/p>
46、線的連接為:存儲器讀允許信號OE與單片機(jī)RD相連,存儲器寫允許信號WE與單片機(jī)WR相連,ALE的連接與程序存儲器相同。以上看出,由于數(shù)據(jù)存儲器的讀和寫由單片機(jī)的RD和WR控制,而程序存儲器的讀選通由岡冠N控制,故兩者雖共有同一地址空間,但由于控制信號不同,故不會發(fā)生總線沖突。 引腳所決定的,尋址范圍如表2-1所示:AA16(引腳P1.1)AA15(引腳P1.0)尋址范圍0064K01 64K1064K1164K表2-1 引腳尋址范圍 2.3 I/O口的擴(kuò)展概述在MCS-51應(yīng)用系統(tǒng)中,單片機(jī)本身提供給用戶使用的輸入、輸出口線并不多,對片內(nèi)有ROM/EPROM的8051/8751,若無須擴(kuò)展外部
47、存儲器,則有4個8位口(P0P3)可作為通用I/O口使用。而對于8031單片機(jī)來說,因其P0口和P2口必須用作外部程序存儲器的地址線,而不能直接用來作為輸入/輸出口,故只有P1口和P3口的一部分口線可直接用作輸入/輸出口。因此,在大部分的MCS-51單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)中,都不可避免地要進(jìn)行I/O口的擴(kuò)展。由于MCS-51單片機(jī)的外部數(shù)據(jù)存儲器RAM和I/O口是統(tǒng)一編址的,因此,用戶可以把外部64K字節(jié)的數(shù)據(jù)存儲器RAM空間的一部分作為擴(kuò)展外部I/O口的地址空間。這樣,單片機(jī)就可以像訪問外部RAM一樣訪問外部接口芯片,對其進(jìn)行讀寫操作。二、地址譯碼法 由于外部I/O接口芯片與外部數(shù)據(jù)存儲器是統(tǒng)一
48、編址的,共占用16根地址線,P2口提供高8位地址,P0口提供低8位地址。為了唯一地選中外部某一存儲單元(I/O接口芯片作為數(shù)據(jù)存儲器的一部分),必須進(jìn)行兩種選擇:首先是選擇出該存儲器芯片(或I/O接口芯片),稱為片選;其次是選擇出該芯片的某一存儲單元(或I/O接口芯片的寄存器),稱為字選。常用的選址方法有線選法和地址譯碼法。1線選法 若系統(tǒng)只擴(kuò)展少量的外部RAM和I/O接口芯片,一般都采用線選法。所謂線選法就是把單獨(dú)的地址線接到某一個外接芯片的片選端,只要這一位地址線為低電平,就選中該芯片。圖2.2為一個線選法的例子。圖中有的芯片除了片選地址外,還有片內(nèi)地址,而片內(nèi)地址是由低位地址線進(jìn)行譯碼選
49、擇的,根據(jù)圖的連接方法,各芯片的地址編碼如表2-2所示。圖2.2 線選法連接圖表2-2 圖2.2的地址編碼圖2.2中,6116內(nèi)部有2K字節(jié),需占用11根地址線,故其片選線只能選擇P2.3以上的高位地址線。MCS-51單片機(jī)發(fā)出的16位地址碼中,既包含了字選控制又包含了片選控制。而片選控制線任一時(shí)刻只能有一條線為低電平,以保證該時(shí)刻只有一片芯片工作,否則將會出錯。2地址譯碼法 對于RAM和I/O容量較大的應(yīng)用系統(tǒng),當(dāng)芯片所需的片選信號多于可利用的地址線時(shí),可采用地址譯碼法。地址譯碼法用譯碼器對高位地址線進(jìn)行譯碼,譯出的信號作為片選信號,用低位地址線選擇芯片的片內(nèi)地址。該系統(tǒng)采用16V8譯碼器為
50、I/O作選擇。具體電路原理圖如圖2.3所示。圖2.3 地址譯碼法連接圖當(dāng)A15A14A13A12=1011,即地址為0XB000H時(shí),選中KEY RD或KEY WR,若選中KEY RD,74HC245輸入口開始工作;若選中KEY WR,74HC574輸出口開始工作??傊斎?輸出口一個處于工作狀態(tài),另一個則處于空閑狀態(tài),兩者是不能同時(shí)被選中的??撮T狗電路原理MAX705/706/813L是一組CMOS監(jiān)控電路,能夠監(jiān)控電源電壓、電池故障和微處理器(MPU或mP)或微控制器(MCU或mC)的工作狀態(tài)。將常用的多項(xiàng)功能集成到一片8腳封裝的小芯片內(nèi),與采用分立元件或單一功能芯片組合的電路相比,大大減
51、小了系統(tǒng)電路的復(fù)雜性和元器件的數(shù)量,顯著提高了系統(tǒng)可靠性和精確度。該系列產(chǎn)品采用3種不同的8腳封裝形式:DIP、SO和mMAX。主要應(yīng)用于:微處理器和微控制器系統(tǒng);嵌入式控制器系統(tǒng);電池供電系統(tǒng);智能儀器儀表;通信系統(tǒng);尋呼機(jī);蜂窩移動 機(jī);手持設(shè)備;個人數(shù)字助理(PDA);電腦 機(jī)和無繩 機(jī)等等。功能說明:RESET/RESET操作 復(fù)位信號用于啟動或者重新啟動MPU/MCU,令其進(jìn)入或者返回到預(yù)知的循環(huán)程序并順序執(zhí)行。一旦MPU/MCU處于未知狀態(tài),比如程序“跑飛”或進(jìn)入死循環(huán),就需要將系統(tǒng)復(fù)位。對于MAX705和MAX706而言,在上電期間只要Vcc大于1.0V,就能保證輸出電壓不高于0
52、.4V的低電平。在Vcc上升期間RESET維持低電平直到電源電壓升至復(fù)位門限(4.65V或4.40V)以上。在超過此門限后,內(nèi)部定時(shí)器大約再維持200ms后釋放RESET,使其返回高電平。無論何時(shí)只要電源電壓降低到復(fù)位門限以下(即電源跌落),RESET引腳就會變低。如果在已經(jīng)開始的復(fù)位脈沖期間出現(xiàn)電源跌落,復(fù)位脈沖至少再維持140ms。在掉電期間,一旦電源電壓Vcc降到復(fù)位門限以下,只要Vcc不比1.0V還低,就能使RESET維持電壓不高于0.4V的低電平。MAX705和MAX706提供的復(fù)位信號為低電平RESET,而MAX813L提供的復(fù)位信號為高電平RESET,三者其它功能完全相同。有些單
53、片機(jī),如INTEL的80C51系列,需要高電平有效的復(fù)位信號。看門狗定時(shí)器MAX705/706/813L片內(nèi)看門狗定時(shí)器用于監(jiān)控MPU/MCU的活動。如果在1.6s內(nèi)WDI端沒有收到來自MPU/MCU 的觸發(fā)信號,并且WDI處于非高阻態(tài),則WDO輸出變低。只要復(fù)位信號有效或WDI輸入高阻,則看門狗定時(shí)器功能就被禁止,且保持清零和不計(jì)時(shí)狀態(tài)。復(fù)位信號的產(chǎn)生會被禁止定時(shí)器,可一旦復(fù)位信號撤消并且WDI輸入端檢測到短至50ns的低電平或高電平跳變,定時(shí)器將開始1.6s的計(jì)時(shí)。即WDI端的跳變會清零定時(shí)器并啟動一次新的計(jì)時(shí)周期。一旦電源電壓Vcc降至復(fù)位門限以下,WDO端也將變低并保持低電平。只要Vc
54、c升至門限以上,WDO就會立刻變高,不存在延時(shí)。典型的應(yīng)用中是將WDO端連接到MPU/MCU的非屏蔽中斷(NMI)端。當(dāng)Vcc下降到低于復(fù)位門限時(shí),即使看門狗定時(shí)器還沒有完成計(jì)時(shí)周期,端也將輸出低電平。通常這將觸發(fā)一次非屏蔽中斷,但是RESET如果同時(shí)變低,則復(fù)位功能優(yōu)先權(quán)高于非屏蔽中斷。 如果將WDI腳懸空,WDO腳可以被用作電源跌落檢測器的一個輸出端。由于懸空的WDI將禁止內(nèi)部定時(shí)器工作,所以只有當(dāng)Vcc下降到低于門限時(shí),WDO才會變低,從而起到電源跌落檢測的作用。人工復(fù)位低電平有效的手動復(fù)位輸入端(MR)可被片內(nèi)250mA的上拉電流源拉到高電平,并可以被外接CMOS/TTL邏輯電路或一端
55、接地的按鈕開關(guān)拉成低電平。不需要采用外部去抖動電路,理由是最小為140ms的復(fù)位時(shí)間足以消除機(jī)械開關(guān)的抖動。簡單地將MR端連接到WDO端,就可以使看門狗定時(shí)器超時(shí)產(chǎn)生復(fù)位脈沖。當(dāng)需要高電平有效的復(fù)位信號時(shí),應(yīng)該選用MAX813L。 該系統(tǒng)所用的看門狗電路原理圖如所示:圖2.4 看門狗電路原理圖 斷電保護(hù)所謂斷電保護(hù)功能,即切換設(shè)備在正常工作時(shí)可存儲最后的通道切換命令,當(dāng)因突發(fā)情況發(fā)生斷電后,設(shè)備仍將保存此命令,待接電后設(shè)備自動恢復(fù)為原有的切換狀態(tài)這是一個簡單的CMOS RAM 掉電保護(hù)電路,基本能保證 RAM 從主電源掉電到切換到備份電源供電期間,RAM 中的數(shù)據(jù)不丟失,且保證譯碼器的輸出不變
56、,進(jìn)一步保證系統(tǒng)的工作不受影響。該系統(tǒng)所用斷電保護(hù)原理圖如圖所示。圖 斷電保護(hù)原理圖2.6 16V8譯碼器16V8譯碼器是由輸入緩沖器(左面8個緩沖器),輸出三態(tài)緩沖器(右面8個緩沖器),與門陣列,輸出反饋/輸入緩沖器(中間一列8個緩沖器),輸出邏輯宏單元OLMC(或門陣列包含其中)以及時(shí)鐘和輸出選通信號輸入緩沖器。與門陣列由8*8個與門構(gòu)成,共形成8個引腳(29)固定作輸入外,還可能有其它8個引腳配置成輸入模式。因此,這類芯片最多可有16個引腳作為輸入腳,而輸出腳最多為8個,這就是芯片型號中兩個數(shù)字的含意。16V8原理結(jié)構(gòu)圖如圖2.6所示。 圖2.6 16V8原理結(jié)構(gòu)圖該16V8譯碼器的程序
57、如下所示:GAL16V8DECODERMBOARD DEC. 16 2000DECODER_WSA12 A13 A14 A15 /RD /WR NC NC NC GNDGND NC /CS_LED U13WR SW2_RD KEY_WR KEY_RD /SEL6242 U5CS1 VCCCS_LED=A15*A14*/A13*/A12 ;0 xC000-LCD/U13WR=WR*A15*/A14*/A13*A12 ;0 x9000-U13WR/SW2_RD=RD*A15*/A14*A13*/A12 ;0 xA000-SW2_RD/KEY_WR=WR*A15*/A14*A13*A12 ;0 xB
58、000-KEY_WR/KEY_RD=RD*A15*/A14*A13*A12 ;0 xB000-KEY_RDSEL6242=A15*/A14*/A13*/A12 ;0 x8000-SEL6242/U5CS1=/A15 ;0 x0000-0 x7FFF 628128DESCRIPTIONEND2.7 RS485總線RS-485接口芯片已廣泛應(yīng)用于工業(yè)控制、儀器、儀表、多媒體網(wǎng)絡(luò)、機(jī)電一體化產(chǎn)品等諸多領(lǐng)域??捎糜赗S-485接口的芯片種類也越來越多。如何在種類繁多的接口芯片中找到最合適的芯片,是擺在每一個使用者面前的一個問題。RS-485接口在不同的使用場合,對芯片的要求和使用方法也有所不同。使用者
59、在芯片的選型和電路的設(shè)計(jì)上應(yīng)考慮哪些因素,由于某些芯片的固有特性,通信中有些故障甚至還需要在軟件上作相應(yīng)調(diào)整,如此等等。希望本文對解決RS-485接口的某些常見問題有所幫助。2. RS接口標(biāo)準(zhǔn)傳輸介質(zhì):雙絞線標(biāo)準(zhǔn)節(jié)點(diǎn)數(shù):32最遠(yuǎn)通信距離:1200m共模電壓最大、最小值:+12V;-7V差分輸入范圍:-7V+12V接收器輸入靈敏度:200mV接收器輸入阻抗:12k圖2.7 RS485總線原理圖75LBC184片子 引腳1(RXD):接計(jì)算機(jī)串行口發(fā)送端引腳4(TXD):接計(jì)算機(jī)串行口接收端引腳3(TXEN):發(fā)送使能端,485半雙工口,通過軟件協(xié)議,發(fā)不能收,收不能發(fā)引腳2(CH CS):接收/
60、發(fā)送端的控制4. 應(yīng)用中常用的問題1).抗雷擊和抗靜電沖RS-485接口芯片在使用、焊接或設(shè)備的運(yùn)輸途中都有可能受到靜電的沖擊而損壞。在傳輸線架設(shè)于戶外的使用場合,接口芯片乃至整個系統(tǒng)還有可能遭致雷電的襲擊。選用抗靜電或抗雷擊的芯片可有效避免此類損失,常見的芯片有MAX485E、MAX487E、MAX1487E等。特別值得一提的是SN75LBC184,它不但能抗雷電的沖擊而且能承受高達(dá)8kV的靜電放電沖擊,是目前市場上不可多得的一款產(chǎn)品。2). 限斜率驅(qū)動由于信號在傳輸過程中會產(chǎn)生電磁干擾和終端反射,使有效信號和無效信號在傳輸線上相互迭加,嚴(yán)重時(shí)會使通信無法正常進(jìn)行。為解決這一問題,某些芯片的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 心理發(fā)展與教育
- 中醫(yī)護(hù)理技術(shù)對黃疸的治療
- 餐飲店員工績效考核與晉升合同
- 系統(tǒng)化代牧養(yǎng)殖合同范本
- 餐飲連鎖總經(jīng)理任期目標(biāo)與績效考核合同
- 礦產(chǎn)資源開采安全生產(chǎn)責(zé)任書范本
- 城市更新改造項(xiàng)目舊廠房物業(yè)財(cái)產(chǎn)移交及改造合同
- 車輛無償租賃與品牌合作推廣合同
- 車輛合伙經(jīng)營運(yùn)輸市場拓展協(xié)議
- 餐館廚師崗位競聘與選拔合同
- VDA6.3-2023版培訓(xùn)教材課件
- 2025年GCP(藥物臨床試驗(yàn)質(zhì)量管理規(guī)范)相關(guān)知識考試題與答案
- 建筑施工現(xiàn)場防汛方案
- 2022年寧夏回族自治區(qū)7月普通高中學(xué)業(yè)水平測試生物試卷會考試題及答案
- 婚紗攝影市場分析與前景預(yù)測
- 口腔內(nèi)科學(xué)練習(xí)題庫(附答案)
- 金蝶云星空操作手冊V3
- 醫(yī)學(xué)臨床“三基”訓(xùn)練護(hù)士分冊(第五版)考試題(附答案)
- 安徽省合肥市蜀山區(qū)2025年中考物理一模模擬試卷附參考答案
- 加氣站反恐怖防范安全風(fēng)險(xiǎn)評價(jià)報(bào)告
- 2025年吉林國資委出資企業(yè)招聘筆試參考題庫含答案解析
評論
0/150
提交評論