基于單片機控制往返電動小車系統(tǒng)設計.doc_第1頁
基于單片機控制往返電動小車系統(tǒng)設計.doc_第2頁
基于單片機控制往返電動小車系統(tǒng)設計.doc_第3頁
基于單片機控制往返電動小車系統(tǒng)設計.doc_第4頁
基于單片機控制往返電動小車系統(tǒng)設計.doc_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

大 學 學 士 學 位 畢 業(yè) 論 文課題名稱基于單片機控制往返電動小車系統(tǒng)設計 學生姓名 學 號 專 業(yè) 班 級 指導教師 2007 年6 月 目 錄摘要abstract第一章 系統(tǒng)的總體設計 1.1 系統(tǒng)總體設計的要求與任務1 1.2方案的設計與論證 2 1.3單片機控制總體設計思路與原理 3 1.4單片機控制的設計工作情況 8第二章 檢測電路設計 2.1路面檢測電路設計10 2.2地面檢測電路的設計原理11 2.3 st178器件簡介112.3.1 st178的特點 11 2.3.2 st178的極限參數(shù) 11 2.3.3 st178的光電特性 122.3.4 st178工作原理與應用 13第三章 8051單片機的性能介紹3.1 mcs-51單片微機8051內(nèi)部部件和接口電路 153.2 8051的引腳說明173.3振蕩器特性和時鐘電路 183.4芯片擦除特性和復位電路 18 3.4.1芯片擦除特性18 3.4.2上復位電路設計183.5 mcs-51的中斷優(yōu)先級20第四章 8255芯片的功能概要 4.1 8255的外部引線與內(nèi)部結(jié)構(gòu)22 4.2 8255a的基本特性和工作方式選擇 23 4.2.1 8255a并行輸入輸出接口芯片的基本特性 23 4.2.2 8255a的編程命令24 4.2.3 8255a的方式0與連接方式254.2.4 8255a的方式1與連接方式254.2.5 8255a的方式2與連接方式27第五章 驅(qū)動電路設計 5.1電機驅(qū)動電路的設計 29 5.1.1電機驅(qū)動電路的設計電路及原理29 5.1.2 pwm-m控制電路的基本構(gòu)成及工作原理295.2轉(zhuǎn)向驅(qū)動電路的設計電路及原理 30第六章 鍵盤和顯示電路的設計 6.1鍵盤的簡介與鍵盤的消抖方法 31 6.1.1鍵盤的簡介 31 6.1.2鍵盤的消抖方法 31 6.2鍵盤的工作原理326.3鍵盤的工作方式326.4顯示器的結(jié)構(gòu)和動態(tài)顯示原理326.5鍵盤和顯示器的應用33第七章 系統(tǒng)的軟件設計 7.1系統(tǒng)軟件設計的總思路34 7.2系統(tǒng)程序設計35 7.2.1 8255的程序初始化35 7.2.2對端口c的置位復位35 7.3鍵盤和顯示器的程序設計36 7.4鍵盤掃描子程序37結(jié)論41致謝語 42主要的參考文獻 43摘 要本系統(tǒng)以單片機為核心對電動車進行智能化控制,即cpu通過對障礙與標志進行檢測分析自動完成小車的前進、后退、轉(zhuǎn)向控制;利用數(shù)控網(wǎng)絡實現(xiàn)數(shù)字量直接控制多級速度變化以滿足各段跑道內(nèi)不同的速度要求。行駛時間和行駛距離均為液晶自動顯示。并且每次轉(zhuǎn)向、倒車、停車時均由發(fā)光二極管顯示其狀態(tài),倒車時伴有峰音。由于電動小汽車純硬件控制具備很多的缺點,并且不宜實現(xiàn)復雜運動的自動控制功能(不能用人工控制),而單片機具有體積小,重量輕,耗電少,功能強,控制靈活方便,價格低廉等優(yōu)點。本設計就是以單片機8051芯片為核心,附以外圍電路,采用光點檢測器進行檢測信號和障礙物;運用單片機的運算和處理能力來實現(xiàn)小汽車的自動加速、限速、減速、定時、語音、前進、后退、左轉(zhuǎn)、右轉(zhuǎn)、顯示路程、顯示行駛速度、行駛時間等智能控制系統(tǒng)。關(guān)鍵詞:自動往返電動小汽車;光電檢測器abstractsingle chip computer at the core of the system to electric vehicles for intelligent control of the cpu through barriers and signs for automatic detection analysis trolleys completed advance, retreat, to control; use digital networks to achieve direct control over the number of changes to meet the level of the runway at different speed. travelling time and travelling distances are liquid crystal automatically show. and each one, reverse, stopping by luminous diode show their status, reverse, accompanied by warning tone. because pure electric cars have many hardware control weaknesses, and not achieve the automatic control functions of complex movements (not used artificial control), while single chip computer a size small, lightweight, low consumption, the functional strong, flexible control convenience and low prices, and other advantages. the design is to single chip computer 8051 chip at the core, attached to the external circuit, the use of optical signals point detectors for the detection and obstacles; single chip computer use of arithmetic calculations and processing capacity to accelerate the realization of automatic cars, speed, deceleration, timing, voice, advance, retreat, turn left, turn right, shows distance and speed shows, travelling time wisdom control systems.keywords: automatically back and forth car; photoconductor measuring第一章 系統(tǒng)總體設計1.1總體設計任務和要求(一)任務設計并制作一個能自動往返于起跑線與終點線間的小汽車。允許用玩具汽車改裝,但不能用人工遙控(包括有線和無線遙控)。跑道寬度0.5m,表面貼有白紙,兩側(cè)有擋板,擋板與地面垂直,其高度低于20cm。在跑道的b、c、d、e、f、g各點處畫有2cm寬的黑線,各段的長度如圖1所示。 (二)要求1基本要求(1)車輛從起跑線出發(fā)(出發(fā)前,車體不得超出起跑線),到達終點線后停留10秒,然后自動返回起跑線(允許倒車返回)。往返一次的時間應力求最短(從合上汽車電源開關(guān)開始計時)。(2)到達終點線和返回起跑線時,停車位置離起跑線和終點線偏差應最小(以車輛中心點與終點線或起跑線中心線之間距離作為偏差的測量值)。(3)de間為限速區(qū),車輛往返均要求以低速通過,通過時間不得少于8秒,但不允許在限速區(qū)內(nèi)停車。2發(fā)揮部分(1)自動記錄、顯示一次往返時間(記錄顯示裝置要求安裝在車上)。(2)自動記錄、顯示行駛距離(記錄顯示裝置要求安裝在車上)。(3)其它特色與創(chuàng)新。1.2方案的設計與論證本系統(tǒng)為典型的實時控制系統(tǒng),易用單片機控制實現(xiàn),下面就速度控制部分、方向控制部分和路程計數(shù)的設計部分幾種設計方案進行論證. 1. 速度控制部分 我們對三個方案進行了比較: 方案一:采用d/a變換電路將數(shù)字量轉(zhuǎn)換成控制電機電壓的模擬量。再利用電平的高低達到調(diào)速的目的。本方案達到了利用cpu輸出的數(shù)字量精確控制模擬量的目的。但愿電路比較復雜,成本較高。方案二:采用脈寬調(diào)制方式(pwm)從i/o口輸出不同占空比的脈沖,經(jīng)濾波后獲得不同甘共苦高低電平控制電機。本方案可以達到對速度的控制要求,且控制簡單易實現(xiàn)。但輸出波形經(jīng)濾波后紋波較大,控制直流電機時轉(zhuǎn)速不穩(wěn),速度準確度不高。方案三:采用數(shù)控網(wǎng)絡控制直流電機的驅(qū)動電壓。原理框圖如圖3所示。本方案電路簡單容易實現(xiàn),且數(shù)字量與速度一一對應,速度準確度高且容易控制。利用8位數(shù)字量即可獲得256級速度控制。通過比較明顯方案三最簡潔清晰、容易實現(xiàn)、速度快、精度高。從系統(tǒng)指標要求來看,對速度要求較高,低速與高速之間差別較大,且準確度要求高,各個速度之間的切換也要求簡單、迅速。采用方案三可利用單片機運行速度快的特點進行速度的快速調(diào)整,且方案三速度準確度高、級數(shù)多容易達到系統(tǒng)指標要求,所以我們選用方案三作為控制部分具體實施的方案。2.方向控制部分方案一:利用繼電器控制電機電壓極性以控制方向。該方案雖可實現(xiàn)方向控制,但繼電器驅(qū)動耗電量大,且因有觸點動作,易對電路造成干擾。方案二:采用電子開關(guān)電路。本方案通過改變控制端電平值改變電機兩端電壓極性控制方向。采用電子開關(guān)電器具有轉(zhuǎn)換速度快、無觸點、和控制容易的優(yōu)點。兩種方案相比,方案二有較明顯的優(yōu)勢,且符合要求。3.路程計數(shù)的設計部分方案一:通過檢測車輪轉(zhuǎn)過的轉(zhuǎn)數(shù)乘以車輪的周長來計算路程,霍爾元件是一種很好的可用于車輪轉(zhuǎn)數(shù)計數(shù)的元件。在普通轉(zhuǎn)盤計數(shù)的儀表中加裝霍爾元件和磁鐵,即可構(gòu)成基于磁電轉(zhuǎn)換技術(shù)的傳感器,霍爾元件固定安裝在計數(shù)轉(zhuǎn)盤附近,永磁鐵安裝在計數(shù)盤位上,當轉(zhuǎn)盤每轉(zhuǎn)一圈,永磁鐵經(jīng)過霍爾元件一次即在信號端產(chǎn)生一個計量脈沖。方案二:采用對射式光電管對行駛距離進行測量,通過檢測信號脈沖個數(shù)計算出行駛距離。因為車輪周長為12.5cm,輪盤每周開孔25個,故測距分辨率可達5mm。兩種方案比較,這里考慮到大眾化設計,采用第二種方案。程長來計算路成工1.3單片機控制總體設計思路與原理單片機控制自動往返電動小汽車的硬件構(gòu)成包括8051芯片、8255芯片、地址鎖存器等組成的單片機控制電路、地面檢測電路、速度檢測電路、電機驅(qū)動電路、轉(zhuǎn)向驅(qū)動電路、鍵盤及顯示電路。整個系統(tǒng)的關(guān)鍵電路是單片機控制電路,是整個控制的中心部分,即可通過地面檢測電路和速度檢測電路采樣的輸入的信號,再將信號輸出到顯示器進行顯示,并可以通過鍵盤進行控制,如果地面檢測出障礙物報警系統(tǒng)開始工作并對其中部分電路編出子程序,以及相應的軟件設計。1. 檢測設備部分 (有前面的要求知,本設計需要檢測起點終點限速區(qū)一定黑白對比度的黑線和跑道兩側(cè)的障礙物擋板) 通過對系統(tǒng)指標要求分析,小車需自動檢測出起跑線、變速線、終點線等標志線及在小車與左右擋板之間的距離過小時提示cpu控制方向。采用反射式光電管檢測車體距擋板的遠近,當汽車距擋板約810cm時,vout發(fā)生跳變,小車需要調(diào)整方向以避免和擋板相撞。電路如圖1-2所示。圖1-2 反射式光電管圖1-3 對射式光電管采用對射式光電管對行駛距離進行測量,通過檢測信號脈沖個數(shù)計算出行駛距離。因為車輪周長為12.5cm,輪盤每周開孔25個,故測距分辨率可達5mm。電路如圖1-3所示。 采用反射式光彩奪目電管以檢測跑道上的黑線,并給cpu提供檢測信號以供cpu判斷分析。電路如圖1-4所示。圖1-4 反射式光彩奪目電管2. cpu為本系統(tǒng)的核心。其功能包括接收、判別檢測信號,提供控制前后或左右方向驅(qū)動,提供速度控制的數(shù)字量和顯示信號。接收左右方向檢測信號時利用兩條i/o口線同時分別掃描左右擋板檢測光電管輸出腳,當接收到某一管腳電平跳變時,即由cpu控制轉(zhuǎn)向,以防止小車跑偏。并同時控制轉(zhuǎn)向燈。利用cpu的int0腳接收標志線檢測信號,每檢測到一條黑線,光電管給出一個高電平脈沖,cpu每檢測到一個下降沿進行一次中斷處理,判斷小車處于跳道的哪一段,同時調(diào)整速度,一方面要符合不同的速度要求,同時使整個運行時間最短。前進/后退和左轉(zhuǎn)/右轉(zhuǎn)的方向控制各用兩條i/o口線,當兩條口線電平不同時分別控制向前/向后或向左/向右。當四條口線全為高電平時停車并點亮停車指示燈。倒車的同時點亮倒車指示燈并啟動蜂鳴器,指示燈每0.5秒閃爍一次,蜂鳴器每0.5秒鳴叫一次,以示倒車。定時器t0工作于記數(shù)方式,通過測量對射式光電管檢出脈沖個數(shù),計算行駛距離。每行駛0.5米,刷新一次液晶的距離顯示,檢測距離可分辨到5mm。定時器t1工作于定時方式,用于自動記錄行駛時間,且每一秒刷新一次液晶的時間顯示。3. 速度控制部分 利用數(shù)控電源控制電機輸入電壓。選用8位數(shù)字量控制,即可獲得28=256級速度。電路如圖1-5所示。參數(shù)確定:圖1-5 速度控制部分電路此電路以p0口控制n1n8的導通和截止來調(diào)節(jié)電阻值的大小??诰€為高時對應三級管導通,對應電阻并入電路;口線為低時對應三極管截止,對應電阻無效。當p0口置00h時數(shù)控部分電路電阻僅為r1;當p0口置80h時電阻變?yōu)閞1和r2并聯(lián);當p0口置0c0h時電阻變?yōu)閞1與r2與r3并聯(lián);依此類推共有256種電阻值,對應256級輸出電壓。并聯(lián)后電阻值變小,所以當p0口為00h時對應的電阻值最大。輸出電壓與電阻近似為線性關(guān)系,即00h對應輸出電壓的最大值。根據(jù)系統(tǒng)指標要求與實際測量車速與電壓的對應關(guān)系確定輸出的最大電壓約為6v,最小電壓約為1.4v,由此可確定r1的阻值及所有電阻并聯(lián)的阻值。從而將輸出電壓范圍等分為256級,依次確定其余電阻阻值大小以實現(xiàn)速度均勻變化。4. 驅(qū)動電路部分 電路如圖1-6所示。速度驅(qū)動由可變電源輸出電壓至vm端控制,速度與電壓大小呈線性關(guān)系。方向驅(qū)動由口線控制和開關(guān)量對應。 參數(shù)確定:因為三極管導通要求ibibs=ics/。對n1,io1端電壓約為5v,對tr1;vm端電壓范圍約為1.36.8v,由此可列方程組確定r12.3k,r297,取r1=2k,r2=100。圖1-6 驅(qū)動電路部分圖1-7 蜂鳴器電路5. 顯示及輔助部分 該部分直接由cpu驅(qū)動lcd顯示器以自支顯示行駛距離和往返時間。由cpu的i/o口直接驅(qū)動led發(fā)光二極管顯示其轉(zhuǎn)向、倒車、停車狀態(tài)。電路見圖1-8。蜂鳴器電路如圖1-7所示。圖1-8 顯示電路1.4單片機控制的設計工作情況本系統(tǒng)主要通過地面檢測電路檢測信號和繞過障礙物,再把采樣的輸入信號輸入,運用單片機的運算和處理能力來實現(xiàn)小車的加速、減速,限速,左轉(zhuǎn)、右轉(zhuǎn),前進和后退,結(jié)合鍵盤控制實現(xiàn)led顯示,并可顯示行駛速度,行駛路程和行駛時間。由于電動小汽車純硬件控制具有很多缺點,并且不宜實現(xiàn)復雜運動的自動控制功能(不能用人工控制)。而單片機具有體積小,重量輕,耗電少,功能強,控制靈活方便,價格低廉等優(yōu)點。本設計就是以單片機8051為核心,輔以外圍電路,采用光電檢測器進行檢測信號和障礙物;運用單片機的運算和處理能力來實現(xiàn)小車的前進、后退、左轉(zhuǎn)、右轉(zhuǎn)、顯示行駛速度、行駛路程、行駛時間等智能控制系統(tǒng)。如圖1-9所示,檢測電器完成對左右擋板及標志線的檢測,并將信號提供給cpu;cpu內(nèi)核對檢測到的信號加以分析和判別,及時做出相應的輸出處理;左右方向控制電路是通過電子開關(guān)實現(xiàn)對前輪(方向)電機的電壓極性控制以實現(xiàn)方向調(diào)整;前后方向控制用來控制汽車的前進與倒退;速度控制電路是通過數(shù)控網(wǎng)絡實現(xiàn)對后輪(速度)電機驅(qū)動電壓的調(diào)整以實現(xiàn)對速度的控制;lcd顯示用來顯示電動汽車的運行時間與距離;輔助電路部分包括轉(zhuǎn)向燈指示,倒車燈指示,停車燈指示及倒車蜂鳴電路。圖1-9 硬件總體框圖第二章 檢測電路設計 2.1路面檢測電路的設計本設計需要檢測起點終點限速區(qū)一定黑白對比度的黑線和跑道兩側(cè)的障礙物(擋板)。圖2-1是速度檢測電路。它采用反射取樣式,單光束紅外傳感器st178接收信號,再分別用運放lm324比較電壓信號進行放大。圖2-1的電路在5v電壓下工作,根據(jù)該型號傳感器紅外發(fā)射管所需的工作壓降(紅外發(fā)射管的正向壓降在11.3v)和工作電流(紅外發(fā)射管的電流為210ma),選取負載電阻r1=0.51k,紅外接收管負載電阻r2=51k。取r3=r4=1k是由r5進行設置。 圖2-1速度檢測電路2.2地面檢測電路設計原理圖2-2 地面檢測電路它采用反射取樣式,單光束紅外傳感器st178接收信號,再分別用運放lm324比較電壓信號進行放大。圖2-2的電路在5v電壓下工作,根據(jù)該型號傳感器紅外發(fā)射管所需的工作壓降(紅外發(fā)射管的正向壓降在11.3v)和工作電流(紅外發(fā)射管的電流為210ma),圖2-2的電路是在+9v電壓工作的,選取r6=2k,r7=270k,r8=270k,r9=100k。由電路圖可以得出,當有障礙物被其探測到時,輸出端輸出一個高電平,即發(fā)生一個正向跳變,將這個正向跳變信號用單片機檢測出來,借此控制放大器lm324產(chǎn)生相應的動作。2.3 st178器件簡介2.3.1 st178的特點 1采用高發(fā)射功率紅外光電二極管和高靈敏度光電晶體管組成。2檢測距離可調(diào)整范圍大,4-10mm可用。3采用非接觸檢測方式。2.3.2 st178的極限參數(shù):(ta=25)項目 符號 數(shù)值 單位 輸 入 正向電流 if 50 ma 反向電壓 vr 6 v 耗散功率 p 75 mw 輸出 集-射電壓 vceo 25 v 射-集電壓 veco 6 v 集電極功耗 pc 50 mw 工作溫度 topr -2065 儲存溫度 tstg -3075 圖 2-3 內(nèi)部電路示意 2.3.3 st178的光電特性(ta=25)項 目 符號 測試條件 最小 典型 最大 單位 輸入 正向壓降 vf if=20ma - 1.25 1.5 v 反向電流 ir vr=3v - - 10 a 輸出 集電極暗電流 iceo vce=20v - - 1 a 集電極亮電流 il vce=15v if=8 ma h1 0.30 - - ma h2 0.40 - - ma h3 0.50 - - ma 飽和壓降 vce if=8ma ic=0.5 ma - - 0.4 v 傳輸 特性 響應時間 tr if=20ma vce=10v irc=100 - 5 - s tf - 5 - s 注:集電極亮電流il、飽和壓降vce、響應時間是在紅外光電傳感器前端面與亮檢2.3.4 st178的工作原理及應用光電傳感器st178的介紹:反射式紅外光電傳感器是利用被測物體對紅外光的反射和吸收來實現(xiàn)對被測物體的測量和計數(shù)的,要求被測物體的取樣標記與其本身的光潔度和顏色反差大,盡量減少外界光的干擾,光電傳感器的前端面與被測物體的最佳檢測距離為81.5mm。 (1)芯片說明 如圖2-4所示,第一腳:vcc正電源,接+5v;第二腳:gnd接地;第三腳:信號輸出;第四腳:接+5v; (2)典型應用電路 參考傳感器選型手冊提供的典型電路,選用兩個st178并排使用,外加方向判別專用電路st288a連接的電路如圖2-5所示。 圖2-4光電傳感器示意圖 圖2-5 光電傳感器典型應用電路 說明:1.圖中光電傳感器st178的a路為前輸入端,b路為后輸入端2.取樣的暗標志與亮標志的寬度必須大于兩反射式光電傳感器光束間的間距,確保采樣脈沖的可靠性,防止誤發(fā)采樣信號。本設計將地面檢測電路和速度檢測電路的輸出端接到8051的int0和int1,當?shù)孛鏅z測到障礙物時,就會產(chǎn)生一個中斷信號,同時如果速度需要調(diào)節(jié),也會愛int1口產(chǎn)生一個中斷請求,并進行模數(shù)轉(zhuǎn)換,得到對應的數(shù)字信號,送到8051中進行處理。第三章8051單片機性能介紹3.1 mcs-51單片微機8051內(nèi)部部件和接口電路mcs-5單片微機8051內(nèi)部包含如下部件:8位cpu振蕩器和時鐘電路4k/8k 字節(jié)的程序存貯器。128/256字節(jié)的數(shù)據(jù)存貯器??蓪ぶ吠獠砍绦虼尜A器和數(shù)據(jù)存貯器,各64k字節(jié)。二十多個特殊功能寄存器。32線并行i/o口。1個全雙工串行i/o口。2/3個16位定時器/計數(shù)器。5/6個中斷源,2個優(yōu)先級。具有位尋址功能,有較強的布爾處理能力。圖3-1 單片機的片外總線結(jié)構(gòu) 由上圖可以看到,單片機的引腳除了電源、復位、時鐘接入、用戶i/o口外,其余管腳都是為了實現(xiàn)系統(tǒng)擴展而設置的。這些引腳構(gòu)成了mcs-51單片機片外三總線結(jié)構(gòu):(1) 地址總線(ab):地址總線寬度為16位,因此,其外部存儲器直接尋址為64k字節(jié),16位地址總線由p0口經(jīng)地址鎖存器提供低8位地址(a0a7);p0口直接提供高8位地址(a8a15)。(2) 數(shù)據(jù)總線(db):數(shù)據(jù)總線寬度為8位,由p0口提供。控制總線(cb):由四根獨立控制線reset、ale、組成。3.2 8051的引腳說明圖3-2 8051單片機的引腳圖 引腳功能: mcs-51是標準的40引腳雙列直插式集成電路芯片,引腳分布請參照-單片機引腳圖: l p0.0p0.7 p0口8位雙向口線(在引腳的3932號端子)。 l p1.0p1.7 p1口8位雙向口線(在引腳的18號端子)。 l p2.0p2.7 p2口8位雙向口線(在引腳的2128號端子)。 l p3.0p3.7 p2口8位雙向口線(在引腳的1017號端子)。 這4個i/o口具有不完全相同的功能,大家可得學好了,其它書本里雖然有,但寫的太深,初學者很難理解,這里都是按我自已的表達方式來寫的,相信你也能夠理解。 p0口有三個功能: 1、外部擴展存儲器時,當作數(shù)據(jù)總線(如圖1中的d0d7為數(shù)據(jù)總線接口) 2、外部擴展存儲器時,當作地址總線(如圖1中的a0a7為地址總線接口) 3、不擴展時,可做一般的i/o使用,但內(nèi)部無上拉電阻,作為輸入或輸出時應在外部接上拉電阻。 p1口只做i/o口使用:其內(nèi)部有上拉電阻。 p2口有兩個功能: 1、擴展外部存儲器時,當作地址總線使用 2、做一般i/o口使用,其內(nèi)部有上拉電阻; p3口有兩個功能: 除了作為i/o使用外(其內(nèi)部有上拉電阻),還有一些特殊功能,由特殊寄存器來設置,具體功能請參考我們后面的引腳說明。 有內(nèi)部eprom的單片機芯片(例如8751),為寫入程序需提供專門的編程脈沖和編程電源,這些信號也是由信號引腳的形式提供的, 即:編程脈沖:30腳(ale/prog) 編程電壓(25v):31腳(ea/vpp)3.3振蕩器特性和時鐘電路xtal1和xtal2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,xtal2應不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。3.4芯片擦除特性和復位電路 3.4.1芯片擦除特性整個perom陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ale管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復編程以前,該操作必須被執(zhí)行。此外,at89c51設有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,cpu停止工作。但ram,定時器,計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存ram的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個硬件復位為止。3.4.2上復位電路設計1.單片機的復位狀態(tài) 單片機的復位都是靠外部電路實現(xiàn)的,在時鐘電路工作后,只要在單片機的rst引腳上出現(xiàn)24個時鐘振蕩脈沖以上的高電平,單片機便實現(xiàn)初始化狀態(tài)復位。為了保證應用系統(tǒng)可靠地復位。在設計復位電路時,通常使rst引腳保持10ms以上的高電平。只要rst保持高電平,則mcs-51單片機就循環(huán)復位;當rst從高電平變?yōu)榈碗娖揭院?,mcs-51單片機從0000h地址開始執(zhí)行程序。在復位有效期間,ale引腳輸出高電平。1. 電復位電路和開關(guān)復位組合電路圖3-2上電復位和開關(guān)復位組合電路mcs-51單片機通常都采用上電自動復位和開關(guān)復位二種方式。復位電路的核心就是如前所述的必須保證rst引腳上出現(xiàn)10ms以上穩(wěn)定的高電平,這樣就能實現(xiàn)可靠地復位。因此,無論簡單還是復雜的復位電路,都是為了保證這個10ms以上的穩(wěn)定的高電平。上電復位電路在通電瞬間,在rc電路充電過程中,rst端出現(xiàn)正脈沖,從而使單片機復位。cr和 rr的值隨時鐘頻率變化而變化,可由實驗調(diào)整,當采用6mhz時鐘時,cr為22uf,r1取1。在實際的應用系統(tǒng)中,有些外圍芯片也需要復位,如果這些復位端的復位電平要求與單片機的復位要求一致,則可以與之相連。上述兩種簡單的復位電路中,干擾易串入復位端,在大多數(shù)情況下不會造成單片機的錯誤復位,但會一起內(nèi)部某些寄存器錯誤復位。這時,可在reset復位引腳上接一個去耦電容。如果應用現(xiàn)場干擾嚴重或整個感應用系統(tǒng)干擾嚴重,引起單片機復位,可采用屏蔽的辦法解決,如加屏蔽網(wǎng)或移動位置等。在實際應用系統(tǒng)中,為了保證復位電路可高地工作,常將rc電路接斯密特電路后再接入單片機復位端和外圍電路復位端。這特別適合于應用現(xiàn)場干擾大、電壓波動大的工作環(huán)境,并且,當系統(tǒng)有多個復位端時,能保證可靠地同步復位。3.5 mcs-51的中斷優(yōu)先級中斷系統(tǒng)是為了使處理機具有對外界異步時間的處理能力而設置的。當中央處理機cpu正在處理某件事的時候外界發(fā)生了緊急事件請求,要求cpu暫停當前的工作,轉(zhuǎn)而去處理這個緊急事件。處理完以后,再回到原來被中斷的地方,繼續(xù)原來的工作,這樣的過程稱為中斷源。微型機的中斷系統(tǒng)一般允許多個中斷源,當幾個中斷源懂事想cpu請求中斷,要求為它服務的時候,這就存在cpu有限響應哪一個中斷源請求的問題。通常根據(jù)中斷源的輕重緩急排隊,優(yōu)先處理最緊急事件的中斷請求源,即規(guī)定每一個中斷源有一個優(yōu)先級別。cpu總是先響應級別最高的中斷請求。mcs-51系列單片機微機中斷系統(tǒng),是八位機中功能較強的一種,它可以提供5個中斷請求源,具有兩個中斷優(yōu)先級,可實現(xiàn)兩級中斷服務程序嵌套。擁護可以用中斷指令來屏蔽所有的中斷請求也可以用開中斷指令使cpu接受中斷申請;每一個中斷源可以用軟件獨立地控制為開中斷狀態(tài);每一個中斷級別均可用軟件設置。mcs-51有兩個中斷優(yōu)先級,對于每一個中斷請求源可編程為高優(yōu)先中斷或低優(yōu)先中斷,可實現(xiàn)二級中斷嵌套。一個正在執(zhí)行的底優(yōu)先級中斷能被高優(yōu)先級中斷所中斷,但不能被另一個低有限級中斷所中斷,一直執(zhí)行到結(jié)束,遇到返回指令ret1,返回主程序后再執(zhí)行一條指令才能響應新的中斷申請。1ie0 (外中斷int0) 最高優(yōu)先級 0003h2tf0 (定時器0溢出中斷) 000bh3ie (處中斷int1) 0013h4tf1 (定時器1溢出中斷) 001bh5ri+ti (串行口中斷) 0023h6tf2+exf2 (定時器2溢出中斷) 最低優(yōu)先級 002bh當cpu正在處理一個中斷源請求的時候,發(fā)生了另一個優(yōu)先級比它高的中斷源請求。如果cpu能夠暫停對原來中斷源的處理程序,轉(zhuǎn)而去處理優(yōu)先級更高的中斷請求。處理完以后,再回到原低級中斷處理程序,這樣的過程稱為中斷嵌套。這樣的中斷系統(tǒng)稱為多級中斷系統(tǒng),沒有中斷嵌套功能的中斷系統(tǒng)稱為單級中斷系統(tǒng)。這種“同級內(nèi)的優(yōu)先級”,僅用來解決相同優(yōu)先級中斷源同時請求中斷的情況,而不能中斷正在執(zhí)行的同優(yōu)先級的中斷。第四章 8255芯片的功能概要可編程并行接口芯片8255a-5,.11斷源的請求。這些狀態(tài)標志可用方式intel 8255a-5是一個為8085和8088微型機系統(tǒng)設計的通用輸入/輸出接口芯片。它可用程序來改變功能,通用性強,使用靈活,通過它可直接將cpu總線接向外設。4.1 8255的外部引線與內(nèi)部結(jié)構(gòu)8255a是一個單5v電源、40個引腳的雙列直插式組件,其外部引線如圖所示。芯片說明:8255a是intel公司生產(chǎn)的可編程輸入輸出接口芯片,它具有3個8位的并行i/o口,具有三種工作方式,可通過程序改變其功能,因而使用靈活,通用性強,可作為單片機與多種外圍設備連接時的中間接口電路。8255有三種基本工作方式,三種工作方式由工作方式控制字決定,方式控制字由cpu通過輸入/輸出指令來提供.三個端口中pc口被分為兩個部分,上半部分隨pa口稱為a組,下半部分隨pb口稱為b組.其中pa口可工作與方式0、1和2,而pb口只能工作在方式0和1。8255共有40個引腳,采用雙列直插式封裝,各引腳功能如下:d0-d7:三態(tài)雙向數(shù)據(jù)線,與單片機數(shù)據(jù)總線連接,用來傳送數(shù)據(jù)信息。cs:片選信號線,低電平有效,表示芯片被選中。rd:讀出信號線,低電平有效,控制數(shù)據(jù)的讀出。wr:寫入信號線,低電平有效,控制數(shù)據(jù)的寫入。vcc:+5v電源。pa0-pa7:a口輸入/輸出線。pb0-pb7:b口輸入/輸出線。pc0-pc7:c口輸入/輸出線。reset:復位信號線。a1、a0:地址線,用來選擇8255內(nèi)部端口。gnd:地線。它由以下幾部分組成:(1)數(shù)據(jù)端口a,b,c 它有三個輸入輸出端口:porta,portb和portc。每個端口都是8位,都可選擇作顯輸出或輸出,但功能上有著不同的特點。通常端口a或b作為輸出輸?shù)臄?shù)據(jù)端口,而端口c作為控制或狀態(tài)信息的端口,它在“方式”字的控制下可分成兩個四位端口,每個端口包含一個四位鎖存器。它們分別與端口a和b合使用,可用以作為控制信號輸出,或作為狀態(tài)信號輸入。(2)a組和b組控制電路這是兩組根據(jù)cpu的命令字控制8255a工作方式的電路。它們有控制寄存器,收cpu輸出的命令字,然后分別決定兩組的工作方式,也可根據(jù)cpu的命令字端口c的每一位實現(xiàn)按位“復位”或“置”位。a組控制電路控制端口a和端口c的上半部(pc7pc4),即端口c的高四位。b組控制電路控制端口a和端口c的下半部(pc3pc0),即端口c的低四位。(3)數(shù)據(jù)總線緩沖器這是一個三態(tài)雙向8位緩沖器,它是8255a與系統(tǒng)數(shù)據(jù)總線的接口。輸出指令以及cpu發(fā)出的控制字和外設的狀態(tài)信息,都是通過這個緩沖器傳送的。(4)讀/寫和控制邏輯它和cpu地址總線中的a1、a0以及在關(guān)控制信號(rd,wr,reset,io/m)相連,由它控制把cpu的控制命令或輸出數(shù)據(jù)送至相應的端口;也由它控制把外設的狀態(tài)信息或輸入數(shù)據(jù)通過相應的端口,送至cpu。(5)一些控制命令1)cs(chip select)選片信號,低電平有效,由它啟動cpu與8255a之間的通信。2)rd讀信號,低電平有效。它控制8255a送出數(shù)據(jù)或狀態(tài)信息至cpu。3)wr寫信號,低電平有效。它控制把cpu輸出的數(shù)據(jù)或命令信號寫入8255a。4)reset復位信號,高電平有效,它清除控制寄存器和所有端口(a,b,c)到輸入方式。(6)端口尋址8255a中有三個輸入輸出端口,另外,內(nèi)部還有一個控制寄存器,共有四個端要有兩個輸入端來加以選擇,這兩個輸入端通常接到地址總線的最低兩位a1,a0。a1,a0和rd,wr及cs組合所實現(xiàn)的各種功能。 4.2 8255a的基本特性和工作方式選擇4.2.1 8255a并行輸入/輸出接口芯片的基本特性(1)它是一個具有兩個8位(a和b口)和兩個4位(c口高/低四位)的并行輸入/輸出端口,并為cpu與外設之間提供ttl兼容電平,它的c口還具有按位置位/復位的控制功能。(2)對應cpu之間能適用多種數(shù)據(jù)傳送方式,如簡單傳送方式,應答方式,中斷方式。與此對應,8255a設置了三種工作方式:方式0基本輸入輸出方式;方式1選通輸入輸出方式;方式2雙向輸入輸出方式。(3)具有可執(zhí)行功能很強的兩條命令(方式字和控制字)為用戶提供靈活方便的使用環(huán)境,命令執(zhí)行完后的狀態(tài),可保留在狀態(tài)中,方便用戶進行查詢。(4)c口使用比較特殊,除作一般數(shù)據(jù)口外,在方式1和方式2中,它的部分信號線被分配作專用的聯(lián)絡應答信號;c口也可以單獨指定按位控制;也可以作8255a寄存狀態(tài)字的狀態(tài)口用。4.2.2 8255a的編程命令 8255a的編程命令包括工作方式選擇控制字和c口按位操作控制字是用戶靈活使用8255a組件各種接口電路的重要工具,要熟練掌握。 由于這兩個命令都是送到8255a的同一控制端口。為了使8255a能辨認是哪一個命令,故采用控制寄存器的d7作為特征位加以區(qū)分。若寫入的控制字,其最高位d7=1,則該控制字為工作方式控制字;若寫入的控制字d7=0,則該控制字是c口的按位復位/置拉控制字。下面討論控制字的格式及其定義。(1)工作方式控制字8255a有三種基本工作方式:方式0(mode 0)基本輸入/輸出方式1(mode 1)選通輸入/輸出;方式2(mode 2)雙向輸入/輸出;方式選擇控制字的格式及每位定義如下: 利用工作方式控制字的不同代碼組合,可以分別選擇a組和b組的工作方式。a組方式對應a口和c口的高四位pc7-pc4,b組方式對應b口和c口的低四位pc3-pc0。a組有三種工作方式(方式0,1,2),是說明a口的三種工作方式,而b組只有兩種工作方式(方式0,1),是說明b口的兩種工作方式,其中c口經(jīng)常作為拉控制信號來使用。控制字中置1指定為輸入,置0指定為輸出。工作方式控制字舉例,要求8255a的端口處于如下工作方式: a口指定為方式1輸入,c口高四位定為輸出;b口指定為方式0輸出,c口低四位定為輸入。即方式控制字應為10110001b(b1h)。 若將此控制字的內(nèi)容寫到8255a的控制寄存器,則實現(xiàn)了對8255a工作方式的指定,或者稱為完成了對8255a的初始化。對pc/xt中使用8255a通用接口芯片,用上述工作控制字,其初始化程序段為: mov dx,0063h;8255a控制口地址mov al,ob1h;初始化(工作方式)控制字out dx,al;控制字送到控制口(2)c口按位置位/復位控制字 格式及每位定義如下: 利用按位置位/復位控制字可以使c口的8位中的任意一位置成高電平輸出或低電平輸出。舉例,若要把c口的pc2置位,則控制字命令字應為00000101b(05h)。將該命令字的內(nèi)容寫入8255a的命令寄存器,就實現(xiàn)了將c口的pc2位置位的操作;其程序段為:mov,dx,0063h;8255a控制口地址mov al,05;使pc2=1的控制字out dx,al送到控制口如果要使該位(pc2)復位,則用下列程序段來實現(xiàn): mov dx,0063h;8255a控制口地址 mov al,04h使pc2=0的控制字 out dx,al;送到控制口上述兩個控制字的差別是: 工作方式選擇控制字是對8255a的三個端口的工作方式及功能進行定義,所以應放在程序的開頭進行初始化。 按位置/復位控制字只對c口的輸出進行控制(對輸入無作用),而且只是控制c口的某一位輸出是高電平(置位)還是低電平(復位)。使用時他并不破壞已經(jīng)建立的當前工作方式,而是對8255a實現(xiàn)動態(tài)控制的一種支持。他可放在初始化程序以后的任何需要的地方。4.2.3 8255a的方式0及連接方法(1)方式0的基本功能方式0是一種基本輸入/輸出工作方式。它常用于無條件(簡單)傳送,也可用于應答(查詢)傳送。其基本功能為: 兩個8位端口a,b和兩個4位端口c; 任一個端口可以作為輸入或輸出;輸出是鎖存的,輸入只有緩沖能力沒有鎖存功能; 各個端口的輸入、輸出可以有16種不同組合。(2)方式0連接方法 簡單的輸入/輸出 在方式0下,簡單的輸出/輸出認為外設始終是作好了準備,隨時可以提供或者接收數(shù)據(jù)信息。任意一個端口都可以直接作為外設接口,作為數(shù)據(jù)端口,不需要狀態(tài)端口,且均可由cpu用簡單的輸入或輸出指令來進行讀或?qū)憽?方式0的應答輸入/輸出 在方式0工作時,也可采用應答式傳送,此時,通常端口a和b可分別作為一個數(shù)據(jù)端口,而取端口c的某些位分別作為兩個數(shù)據(jù)端口應答用的控制和狀態(tài)信號線。至于c口中哪根線充當何種應答功能是不固定的,可以由用戶自行指定。4.2.4 8255a的方式1及連接方法 方式1是一種選通輸入/輸出方式,在這種方式時,端口a或端口b仍作為數(shù)據(jù)的輸入/輸出,但同時規(guī)定端口c中固定的某些位作為控制或狀態(tài)信息。(1)方式1的主要功能用作一個或兩個選通輸入/輸出端口; 每一端口包含有8位數(shù)據(jù)端口a或b;三條固定控制線;提供中斷邏輯;若只有一個端口工作于方式1,余下的13位可以工作于方式0由控制字決定;若兩端口都工作于方式1,端口c還留下兩位,這兩位可以由程序指定代作為輸入或輸出,也具有置位/復位功能。(2)方式1的控制信號方式1的輸入當任一端口(a或b)工作于方式1輸入時, 主要控制信號:stb外設送來的“輸入選通”信號,表示外設數(shù)據(jù)已準備好,低電平有效。當它變?yōu)榈碗娖綍r,外設將數(shù)據(jù)送到8255a端口的輸入數(shù)據(jù)鎖存器。ibf8255a送到外設的“輸入緩沖器滿”信號,高電平有效,這是一個8255a輸至外設的聯(lián)絡信號。當它為高電平時,說明外設數(shù)據(jù)已送到輸入鎖存器,但尚未被cpu取走,通知外設不能送新數(shù)據(jù);只有當它為低電平時,即cpu已讀取數(shù)據(jù),輸入鎖存器變空時,才允許外設送新數(shù)據(jù)。intr;8255a送到cpu的“中斷請求”信號,高電平有效。當它為高電平時,請求cpu從8255a讀取數(shù)據(jù)。使intr變高電平的條件是:當ibf=1,并且中斷允許inte=1時,才使intr變高電平,向cpu發(fā)出中斷請求?!爸袛嘣试S”信號inte是8255a為控制中斷而設置的內(nèi)部控制信號。當inte=1時,允許中斷;當inte=0時,禁止中斷。這要通過向c口寫入按位置位/復位命令來設置,內(nèi)部不能自動產(chǎn)生這個控制信號。其信號stb,

溫馨提示

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

最新文檔

評論

0/150

提交評論