基于51單片機(jī)實(shí)現(xiàn)的步進(jìn)機(jī)控制系統(tǒng)_第1頁
基于51單片機(jī)實(shí)現(xiàn)的步進(jìn)機(jī)控制系統(tǒng)_第2頁
基于51單片機(jī)實(shí)現(xiàn)的步進(jìn)機(jī)控制系統(tǒng)_第3頁
基于51單片機(jī)實(shí)現(xiàn)的步進(jìn)機(jī)控制系統(tǒng)_第4頁
基于51單片機(jī)實(shí)現(xiàn)的步進(jìn)機(jī)控制系統(tǒng)_第5頁
已閱讀5頁,還剩28頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

基于51單片機(jī)實(shí)現(xiàn)的步進(jìn)機(jī)限制系統(tǒng)摘要步進(jìn)電機(jī)是一種進(jìn)行精確步進(jìn)運(yùn)動(dòng)的機(jī)電執(zhí)行元件,它廣泛地用于工業(yè)機(jī)械的數(shù)字限制。為使系統(tǒng)的牢靠性,通用性,可維護(hù)性以及性價(jià)比最優(yōu),依據(jù)限制系統(tǒng)功能要求及步進(jìn)電動(dòng)機(jī)應(yīng)用環(huán)境,確定了設(shè)計(jì)系統(tǒng)硬件和軟件的功能劃分,從而實(shí)現(xiàn)了基于8051單片機(jī)的四相步進(jìn)電動(dòng)機(jī)的開環(huán)限制系統(tǒng)。限制系統(tǒng)通過單片機(jī)存儲(chǔ)器、I/O口、中斷、鍵盤、LED顯示器的擴(kuò)展,步進(jìn)電動(dòng)機(jī)的環(huán)形安排器、驅(qū)動(dòng)及愛護(hù)電路、人機(jī)接口電路、中斷系統(tǒng)及復(fù)位電路、單電壓驅(qū)動(dòng)電路等的設(shè)計(jì)。實(shí)現(xiàn)了四相步進(jìn)電動(dòng)機(jī)的正反轉(zhuǎn)、急停等功能。為實(shí)現(xiàn)單片機(jī)限制步進(jìn)電動(dòng)機(jī)系統(tǒng)在數(shù)控機(jī)床上的特殊應(yīng)用,系統(tǒng)設(shè)計(jì)了兩個(gè)外部中斷,以實(shí)現(xiàn)步進(jìn)電動(dòng)機(jī)在某段時(shí)間內(nèi)的反復(fù)正反轉(zhuǎn)功能,也即數(shù)控機(jī)床的刀架自動(dòng)進(jìn)給運(yùn)動(dòng)。關(guān)鍵詞:8051單片機(jī);四相步進(jìn)電動(dòng)機(jī);限制Realizesbasedonsinglechipmicrocomputer51thesteppingmotorthecontrolsystemABSTRACTThesteppingmotorisaprecisionelectromechanicalincrementalactuator.Itwidelyusesthedigitalapproachforcontrolofindustrialmachines.Fordependable,ingeneralusethatmakesystem,cansupportsexansexpriceratiosuperior,dividethelineaccordingtocontrolsystemfuncionrequestandafunctionforenteringelectricmotorapplyingenvironment,makingsuredesigningsystemhardwarewithsoftwares,frombutrealizestobaseonsinglechipmicrocomputer8051offourmutuallythestepentersthedynamoelectricopeningthewreaththecontrolthesystem.Thecontrolsystempassesthesinglesavingmaching,I/Oinamachine,breakoff,thekeyboard,thedisplayofLEDexpands,awreahforenteringelecreicmotorformassignsthemachine,driveandthedesignofitsprotectionelectriccircuit,man-machineconnectionelectriccircuit,interruptsystemandresetcircuit,single-voltagedrivercircuitandsoon,realizesfourmutuallythestepenterstheelectricmotorpositiveandnegativetoturn,nastystoptowaitthefunction.Forrealizingsinglechipmicrocomputercontrolaspecialapplicationforenteringelectricmotorsysteminseveralthcontorlingmachinebed,thesystemdesignedtwoexteriorsbreaksoff,toingrealizeathestepenterselectricmotorisinacertaintimeofagainandagainpositiveandnegativeturnthefunction,alsocountnamelytheknifethatcontrolthemachinebedisautomatictoentertothesport.KEYWORD:singlechipmicrocomputer8051;four-phasesteppermotor;control目錄第一章緒論 11.1課題背景 11.2設(shè)計(jì)目的及系統(tǒng)功能 1其次章限制系統(tǒng)硬件分析與設(shè)計(jì) 22.1步進(jìn)電機(jī) 22.1.1步進(jìn)電動(dòng)機(jī)的原理 22.1.2步進(jìn)電動(dòng)機(jī)的特性 32.1.3永磁步進(jìn)電機(jī)的限制原理 32.2步進(jìn)電機(jī)限制系統(tǒng)的組成 42.2.1單片機(jī) 54.3單片機(jī)的片外總線結(jié)構(gòu)及其存儲(chǔ)器擴(kuò)展 64.3.1單片機(jī)的片外總線結(jié)構(gòu) 64.3.2外部程序存儲(chǔ)器擴(kuò)展 74.3.3外部數(shù)據(jù)存儲(chǔ)器擴(kuò)展 8譯碼法 94.4I/O接口原理及其擴(kuò)展 94.5系統(tǒng)外設(shè)接口 14鍵盤接口原理 14鍵盤的限制要求 154.5.3LED顯示器接口原理 164.6.13—8譯碼器:74LS138 174.6.2地址鎖存器:74LS373 175軟件設(shè)計(jì) 185.1軟件設(shè)計(jì)流程圖 185.2設(shè)計(jì)相關(guān)程序 21結(jié)論 29參考文獻(xiàn) 30附錄:原理圖說明 31第一章緒論1.1課題背景當(dāng)今社會(huì),電動(dòng)機(jī)在工農(nóng)業(yè)生產(chǎn)、人們?nèi)粘I钪衅鹬貏e重要的作用。步進(jìn)電機(jī)是最常見的一種限制電機(jī),在各領(lǐng)域中得到廣泛應(yīng)用。步進(jìn)電機(jī)作為執(zhí)行元件,是機(jī)電一體化的關(guān)鍵產(chǎn)品之一,廣泛應(yīng)用在各種自動(dòng)化限制系統(tǒng)中。隨著微電子和計(jì)算機(jī)技術(shù)的發(fā)展,步進(jìn)電機(jī)的需求量與日俱增,在各個(gè)國民經(jīng)濟(jì)領(lǐng)域都有應(yīng)用。步進(jìn)電機(jī)是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機(jī)構(gòu)。當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度(稱為“步距角”),它的旋轉(zhuǎn)是以固定的角度一步一步運(yùn)行的??梢酝ㄟ^限制脈沖個(gè)數(shù)來限制角位移量,從而達(dá)到精確定位的目的;同時(shí)可以通過限制脈沖頻率來限制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。步進(jìn)電機(jī)可以作為一種限制用的特種電機(jī),其優(yōu)點(diǎn)是結(jié)構(gòu)簡(jiǎn)潔、運(yùn)行牢靠、限制便利。尤其是步距值不受電壓、溫度的變更的影響、誤差不會(huì)長期積累的特點(diǎn),給實(shí)際的應(yīng)用帶來了很大的便利。它廣泛用于消費(fèi)類產(chǎn)品(打印機(jī)、照相機(jī)、雕刻機(jī))、工業(yè)限制(數(shù)控機(jī)床、工業(yè)機(jī)器人)、醫(yī)療器械等機(jī)電產(chǎn)品中。探討步進(jìn)電機(jī)的限制和測(cè)量方法,對(duì)提高限制精度和響應(yīng)速度、節(jié)約能源等都具有重要意義。限制核心采納C51芯片,它以其獨(dú)特的低成本,小體積廣受歡迎,當(dāng)然其易編程也是不行多得的優(yōu)點(diǎn)為此,本文設(shè)計(jì)了一個(gè)單片機(jī)限制步進(jìn)電機(jī)的限制系統(tǒng),可以實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)轉(zhuǎn)動(dòng)速度和轉(zhuǎn)動(dòng)方向的高效限制。1.2設(shè)計(jì)目的及系統(tǒng)功能本設(shè)計(jì)的目的是以單片機(jī)為核心設(shè)計(jì)出一個(gè)單片機(jī)限制步進(jìn)電機(jī)的限制系統(tǒng)。本系統(tǒng)采納AT89C51作為限制單元,通過鍵盤實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)轉(zhuǎn)動(dòng)方向及轉(zhuǎn)動(dòng)速度的限制,并且將步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度動(dòng)態(tài)顯示在LED數(shù)碼管上。AT89C51AT89C51鍵盤限制模塊電機(jī)驅(qū)動(dòng)模塊數(shù)碼顯示模塊電源模塊圖1-1總體設(shè)計(jì)框圖設(shè)計(jì)的步進(jìn)電機(jī)限制系統(tǒng)應(yīng)具有以下功能:1.步進(jìn)電機(jī)的啟停限制2.步進(jìn)電機(jī)的正反轉(zhuǎn)限制3.步進(jìn)電機(jī)的加速限制4.步進(jìn)電機(jī)的減速限制5.步進(jìn)電機(jī)轉(zhuǎn)速的動(dòng)態(tài)顯示其次章限制系統(tǒng)硬件分析與設(shè)計(jì)2.1步進(jìn)電機(jī)步進(jìn)電機(jī)是一種能夠?qū)㈦娒}沖信號(hào)轉(zhuǎn)換成角位移或線位移的機(jī)電元件,它事實(shí)上是一種單相或多相同步電動(dòng)機(jī)。單相步進(jìn)電動(dòng)機(jī)有單路電脈沖驅(qū)動(dòng),輸出功率一般很小,其用途為微小功率驅(qū)動(dòng)。多相步進(jìn)電動(dòng)機(jī)有多相方波脈沖驅(qū)動(dòng),用途很廣。運(yùn)用多相步進(jìn)電動(dòng)機(jī),單路電脈沖信號(hào)可先通過脈沖安排器轉(zhuǎn)換為多相脈沖信號(hào),在經(jīng)功率放大后分別送入步進(jìn)電動(dòng)機(jī)各相繞組。每輸入一個(gè)脈沖到脈沖安排器,電動(dòng)機(jī)各相的通電狀態(tài)就發(fā)生變更,轉(zhuǎn)子會(huì)轉(zhuǎn)過肯定的角度(稱為步距角)。正常狀況下,步進(jìn)電機(jī)轉(zhuǎn)過的總角度和輸入的脈沖數(shù)成正比;連續(xù)輸入肯定頻率的脈沖時(shí),電動(dòng)機(jī)的轉(zhuǎn)速與輸入脈沖的頻率保持嚴(yán)格的對(duì)應(yīng)關(guān)系,不受電壓波動(dòng)和負(fù)載變更的影響。由于步進(jìn)電動(dòng)機(jī)能干脆接收數(shù)字量的輸入,所以特殊適合于微機(jī)限制。2.1.1步進(jìn)電動(dòng)機(jī)的原理步進(jìn)電機(jī)是數(shù)字限制電機(jī),它將脈沖信號(hào)轉(zhuǎn)變成角位移,即給一個(gè)脈沖信號(hào),步進(jìn)電機(jī)就轉(zhuǎn)動(dòng)一個(gè)角度,因此特別適合于單片機(jī)限制。步進(jìn)電機(jī)可分為反應(yīng)式步進(jìn)電機(jī)(簡(jiǎn)稱VR)、永磁式步進(jìn)電機(jī)(簡(jiǎn)稱PM)和混合式步進(jìn)電機(jī)(簡(jiǎn)稱HB)。步進(jìn)電機(jī)區(qū)分于其他限制電機(jī)的最大特點(diǎn)是,它是通過輸入脈沖信號(hào)來進(jìn)行限制的,即電機(jī)的總轉(zhuǎn)動(dòng)角度由輸入脈沖數(shù)確定,而電機(jī)的轉(zhuǎn)速由脈沖信號(hào)頻率確定。步進(jìn)電機(jī)的驅(qū)動(dòng)電路依據(jù)限制信號(hào)工作,限制信號(hào)由單片機(jī)產(chǎn)生。其基本原理作用如下:1.限制換相依次通電換相這一過程稱為脈沖安排。例如:三相步進(jìn)電機(jī)的三拍工作方式,其各相通電依次為A—B—C—D,通電限制脈沖必需嚴(yán)格依據(jù)這一依次分別限制A、B、C、D相的通斷。2.限制步進(jìn)電機(jī)的轉(zhuǎn)向假如給定工作方式正序換相通電,步進(jìn)電機(jī)正轉(zhuǎn),假如按反序通電換相,則電機(jī)就反轉(zhuǎn)。3.限制步進(jìn)電機(jī)的速度假如給步進(jìn)電機(jī)發(fā)一個(gè)限制脈沖,它就轉(zhuǎn)一步,再發(fā)一個(gè)脈沖,它會(huì)再轉(zhuǎn)一步。兩個(gè)脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)得越快。調(diào)整單片機(jī)發(fā)出的脈沖頻率,就可以對(duì)步進(jìn)電機(jī)進(jìn)行調(diào)速。步進(jìn)電動(dòng)機(jī)可分為3大類:表2-1步進(jìn)電機(jī)分類類別結(jié)構(gòu)步距力矩動(dòng)態(tài)性能反應(yīng)式步進(jìn)電動(dòng)機(jī)(VR)采納高導(dǎo)磁材料構(gòu)成齒狀轉(zhuǎn)子和定子小小較差永磁式步進(jìn)電動(dòng)機(jī)(PM)轉(zhuǎn)子采納多磁極圓筒形的永磁鐵,其外側(cè)配置齒狀定子吸引和排斥力產(chǎn)生轉(zhuǎn)動(dòng)大大好混合步進(jìn)電動(dòng)機(jī)(HB)這是PM和VR的復(fù)合產(chǎn)品,其轉(zhuǎn)子采納齒狀的稀土永磁材料,定子則為齒狀的突起結(jié)構(gòu)小大好2.1.2步進(jìn)電動(dòng)機(jī)的特性步進(jìn)電機(jī)轉(zhuǎn)動(dòng)運(yùn)用的是脈沖信號(hào),而脈沖是數(shù)字信號(hào),這恰是計(jì)算機(jī)所擅特長理的數(shù)據(jù)類型。從20世紀(jì)80年頭起先開發(fā)出了專用的IC驅(qū)動(dòng)電路,今日,在打印機(jī)、磁盤器等的OA裝置的位置限制中,步進(jìn)電機(jī)都是不行缺少的組成部分之一??傮w上說,步進(jìn)電機(jī)有如下優(yōu)點(diǎn):1.不須要反饋,限制簡(jiǎn)潔。2.與微機(jī)的連接、速度限制(啟停和反轉(zhuǎn))及驅(qū)動(dòng)電路的設(shè)計(jì)比較簡(jiǎn)潔。3.沒有角累積誤差。4.停止時(shí)也可保持轉(zhuǎn)距。5.沒有轉(zhuǎn)向器等機(jī)械部分,不須要保養(yǎng),故造價(jià)較低。6.即使沒有傳感器,也能精確定位。7.根椐給定的脈沖周期,能夠以隨意速度轉(zhuǎn)動(dòng)。但是,這種電機(jī)也有自身的缺點(diǎn):1.難以獲得較大的轉(zhuǎn)矩2.不宜用作高速轉(zhuǎn)動(dòng)3.在體積重量方面沒有優(yōu)勢(shì),能源利用率低。4.超過負(fù)載時(shí)會(huì)破壞同步,高速工作時(shí)會(huì)發(fā)出振動(dòng)和噪聲。2.1.3永磁步進(jìn)電機(jī)的限制原理在本設(shè)計(jì)以常用的永磁式步進(jìn)電機(jī)為例,用單片機(jī)限制步進(jìn)電機(jī)。圖2-1是CZ-2801型永磁步進(jìn)電機(jī)的外形圖,圖2-2是該電機(jī)的接線圖。圖2-1CZ-2801型永磁步進(jìn)電機(jī)外形圖圖2-2CZ-2801型永磁步進(jìn)電機(jī)接線圖從圖中可以看出,電機(jī)共有四組線圈,四組線圈的一個(gè)端點(diǎn)連在一起引出,這樣一共有5根引出線。要運(yùn)用步進(jìn)電機(jī)轉(zhuǎn)動(dòng),只要輪番給各引出端通電即可。將COM端標(biāo)識(shí)為C,只要AC、BC或/AC、/BC,輪番加電就能驅(qū)動(dòng)步進(jìn)電機(jī)運(yùn)轉(zhuǎn),加電的方式可以有多種,假如將COM端接正電源,那么只要用開關(guān)元件(如三極管),將A、B或/A、/B輪番接地。不難設(shè)計(jì)出限制電路,因其工作電壓為12V,因此用一塊開路輸出達(dá)林頓驅(qū)動(dòng)器(這里用ULN2003,關(guān)于ULN2003將在后面介紹)作為驅(qū)動(dòng),通過P1.0、P1.3來限制各線圈的接通與切斷。開機(jī)時(shí),P1.0、P1.3均為高電平,依次將P1.0、P1.2(或P1.1、P1.3反向)切換為低電平即可驅(qū)動(dòng)步進(jìn)電機(jī)運(yùn)行。假如要變更電機(jī)的轉(zhuǎn)動(dòng)速度只要變更兩次接通之間的時(shí)間。變更轉(zhuǎn)速,只要變更P1.0、P1.2(或P1.1、P1.3反向)輪番變低電平的時(shí)間即可達(dá)到要求,因?yàn)椴粫?huì)影響到其他功能的實(shí)現(xiàn),這個(gè)時(shí)間可以用延時(shí)來實(shí)現(xiàn),。這里以定時(shí)的方式來實(shí)現(xiàn)。下面首先計(jì)算一下定時(shí)時(shí)間。按要求,最低轉(zhuǎn)速為20轉(zhuǎn)/分,而上述步進(jìn)電機(jī)的步距角為7.5,即每48個(gè)脈沖為1周,即在最低轉(zhuǎn)速時(shí),要求為960脈沖/分,相當(dāng)于62.5ms/脈沖。而在最高轉(zhuǎn)速時(shí),要求為100轉(zhuǎn)/分,即48000脈沖/分,相當(dāng)于12.5ms/脈沖??梢粤谐鱿卤恚罕?-2步進(jìn)電機(jī)轉(zhuǎn)速與定時(shí)器定時(shí)常數(shù)關(guān)系轉(zhuǎn)速單步時(shí)間(ms)TH0TL02062.51F02159.5238095229B62256.8181818233742354.347826093C592452.08333333448025504C02648.0769230852EC2746.296296359552844.642857145F49…………9313.44086022CF9C9413.29787234D0209513.15789474D0A19613.02083333D1209712.88659794D19B9812.75510204D2149912.62626263D28B10012.5D30表中不僅計(jì)算出了TH0和TL0,而且還計(jì)算出了在這個(gè)定時(shí)常數(shù)下,真實(shí)的定時(shí)時(shí)間,可以依據(jù)這個(gè)計(jì)算值來估算真實(shí)速度與理論速度的誤差值。表中TH0和TL0是依據(jù)定時(shí)時(shí)間算出來的定時(shí)初值,這里用到的晶振是12.000M。有了上述表格,程序就不難實(shí)現(xiàn)了,運(yùn)用定時(shí)/計(jì)數(shù)器T0為定時(shí)器,定時(shí)時(shí)間到后切換輸出腳即可。2.2步進(jìn)電機(jī)限制系統(tǒng)的組成步進(jìn)電機(jī)限制系統(tǒng)共分為六個(gè)模塊:?jiǎn)纹瑱C(jī)最小系統(tǒng)模塊、鍵盤限制模塊、數(shù)碼顯示模塊、測(cè)速模塊、步進(jìn)電機(jī)驅(qū)動(dòng)模塊和電源模塊。1.單片機(jī)最小系統(tǒng)主要由復(fù)位電路和時(shí)鐘電路組成。復(fù)位電路為單片機(jī)系統(tǒng)供應(yīng)牢靠復(fù)位,使單片機(jī)能正常啟動(dòng)。時(shí)鐘電路采納外部時(shí)鐘方式,保證單片機(jī)個(gè)功能部件都是以時(shí)鐘頻率為基準(zhǔn),有條不紊地一拍一拍地工作。2.鍵盤限制模塊包括方向限制鍵、加速鍵和減速鍵、啟停鍵,分別與單片機(jī)的P2.0、p2.1、p2.2和P2.3相連。實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的限制。并且鍵盤上連接有發(fā)光二極管,以指示鍵盤狀態(tài)。3.數(shù)碼顯示模塊采納共陰極數(shù)碼管來動(dòng)態(tài)顯示步進(jìn)電機(jī)的實(shí)際轉(zhuǎn)動(dòng)速度。利用I/O口為數(shù)碼管的com端供應(yīng)低電平。二號(hào)單片機(jī)的P1口供應(yīng)數(shù)碼管的段選信號(hào),P2.6和P2.7限制數(shù)碼管的位選信號(hào)。4.測(cè)速模塊采納開關(guān)霍爾片對(duì)安放在步進(jìn)電機(jī)轉(zhuǎn)盤上的小磁片的磁信號(hào)進(jìn)行檢測(cè),步進(jìn)電機(jī)轉(zhuǎn)盤每次帶動(dòng)小磁片經(jīng)過霍爾片時(shí),其都將有脈沖信號(hào)從霍爾片輸出。單片機(jī)外部中斷口對(duì)信號(hào)進(jìn)行采集。5.步進(jìn)電機(jī)驅(qū)動(dòng)模塊選用七個(gè)NPN達(dá)林頓連接晶體管ULN2003為步進(jìn)電機(jī)供應(yīng)脈沖信號(hào),驅(qū)動(dòng)步進(jìn)電機(jī)轉(zhuǎn)動(dòng)。該模塊與單片機(jī)的P1.0—P1.3相連。6.電源模塊是通過將市電220V轉(zhuǎn)變?yōu)橹绷?2V和直流5V分別供應(yīng)驅(qū)動(dòng)模塊和單片機(jī)模塊。2.2.1單片機(jī)近年,由于CHMOS技術(shù)的進(jìn)步,大大地促進(jìn)了單片機(jī)的CMOS化。CMOS芯片除了低功耗特性之外,還具有功耗的可控性,使單片機(jī)可以工作在功耗精細(xì)管理狀態(tài)。這也是今后以80C51取代8051為標(biāo)準(zhǔn)MCU芯片的緣由。因?yàn)閱纹瑱C(jī)芯片多數(shù)是采納CMOS(金屬柵氧化物)半導(dǎo)體工藝生產(chǎn)。CMOS電路的特點(diǎn)是低功耗、高密度、低速度、低價(jià)格。采納雙極型半導(dǎo)體工藝的TTL電路速度快,但功耗和芯片面積較大。隨著技術(shù)和工藝水平的提高,又出現(xiàn)了HMOS(高密度、高速度MOS)和CHMOS工藝。CHMOS和HMOS工藝的結(jié)合。目前生產(chǎn)的CHMOS電路已達(dá)到LSTTL的速度,傳輸延遲時(shí)間小于2ns,它的綜合優(yōu)勢(shì)已在于TTL電路。因而,在單片機(jī)領(lǐng)域CMOS正在漸漸取代TTL電路。單片機(jī)是通過內(nèi)部總線把計(jì)算機(jī)的各主要部件接為一體,其內(nèi)部總線包括地址總線、數(shù)據(jù)總線和限制總線。其中,地址總線的作用是在進(jìn)行數(shù)據(jù)交換時(shí)供應(yīng)地址,CPU通過它們將地址輸出到存儲(chǔ)器或I/O接口;數(shù)據(jù)總線的作用是在CPU與存儲(chǔ)器或I/O接口之間,或存儲(chǔ)器與外設(shè)之間交換數(shù)據(jù);限制總線包括CPU發(fā)出的限制信號(hào)線和外部送入CPU的應(yīng)答信號(hào)線等??紤]到經(jīng)濟(jì)和牢靠性的要求,本設(shè)計(jì)中采納AT89C51單片機(jī),它宏晶科技設(shè)計(jì)生產(chǎn)的單時(shí)鐘/機(jī)器周期(1T)的單片機(jī),是高速/低功耗/超強(qiáng)抗干擾的新一代8051單片機(jī)。指令代碼完全兼容傳統(tǒng)8051,但速度快8-12倍。1.AT89C51單片機(jī)參數(shù):工作電壓:5.5V—3.8V/3.3VFlash程序存儲(chǔ)器字節(jié):4K定時(shí)器T0、T1:有中斷優(yōu)先級(jí):22.AT89C51單片機(jī)優(yōu)點(diǎn):超低功耗超強(qiáng)抗干擾,超強(qiáng)抗靜電輸入輸出口多,最多有40個(gè)I/O速度快,1個(gè)時(shí)鐘/機(jī)器周期,可用低頻率晶振2.2.2鍵盤限制電路鍵盤在單片機(jī)應(yīng)用系統(tǒng)中能實(shí)現(xiàn)向單片機(jī)輸入數(shù)據(jù)、傳送吩咐等功能,是人工干預(yù)單片機(jī)的主要手段。鍵盤實(shí)質(zhì)是一組按鍵開關(guān)的集合。鍵盤所用開關(guān)為機(jī)械彈性開關(guān),利用了機(jī)械觸點(diǎn)的合、斷作用。一個(gè)電壓信號(hào)在機(jī)械觸點(diǎn)的斷開、閉合過程中,都會(huì)產(chǎn)生抖動(dòng),一般為5—10ms;兩次抖動(dòng)之間為穩(wěn)定的閉合狀態(tài),時(shí)間由按鍵動(dòng)作所確定;第一次抖動(dòng)前和其次次抖動(dòng)后為斷開狀態(tài)。按鍵的閉合與否,反映在輸出電壓上就是呈現(xiàn)出高電平或低電平。通過對(duì)輸出電平的凹凸?fàn)顟B(tài)的檢測(cè),便可確認(rèn)按鍵按下與否。在本設(shè)計(jì)中,高電平表示按鍵斷開,低電平表示按鍵閉合狀體。并且,為了能直觀形象的表示按鍵閉合與否,還為每個(gè)按鍵相應(yīng)增加了發(fā)光二極管,按鍵斷開時(shí),發(fā)光二極管滅,當(dāng)有鍵閉合時(shí),相應(yīng)的發(fā)光二極管變亮。為了確保單片機(jī)對(duì)一次按鍵動(dòng)作只確認(rèn)一次按鍵,必需消退抖動(dòng)的影響。消退按鍵抖動(dòng)通常采納硬件、軟件兩種方法。由于硬件消抖電路設(shè)計(jì)困難,本設(shè)計(jì)中沒有采納,在此不再具體敘述;軟件消抖適合按鍵較多的狀況,便利簡(jiǎn)潔。其原理是在第一次檢測(cè)到有鍵按下時(shí),執(zhí)行一段延時(shí)10ms的子程序后在確認(rèn)該鍵電平是否仍保持閉合狀態(tài)電平,假如保持閉合狀態(tài)電平則確認(rèn)為真正有鍵按下,從而消退了抖動(dòng)的影響。其原理圖如圖2-3所示:圖2-3鍵盤限制模塊原理圖LED數(shù)碼顯示電路發(fā)光二極管LED是一種通電后能發(fā)光的半導(dǎo)體器件,其導(dǎo)電性質(zhì)與一般二極管類似。LED數(shù)碼顯示器就是由發(fā)光二極管組合而成的1種新型顯示器件。在單片機(jī)系統(tǒng)中應(yīng)用特別普遍。LED數(shù)碼顯示器是1種由LED發(fā)光二極管組合顯示字符的顯示器件。它運(yùn)用了8個(gè)LED發(fā)光二極管,其中7個(gè)用于顯示字符,1個(gè)用于顯示小數(shù)點(diǎn)。LED數(shù)碼顯示器有兩種連接方法:(1)共陽極接法。把發(fā)光二極管的陽極連在一起構(gòu)成公共陽極,運(yùn)用時(shí)公共陽極接+5V,每個(gè)發(fā)光二極管的陰極通過電阻與輸入端相連。當(dāng)陰極端輸入低電平常,段發(fā)光二極管就導(dǎo)通點(diǎn)亮,而輸入高電平常則不點(diǎn)亮。(2)共陰極接法。把發(fā)光二極管的陰極連在一起構(gòu)成公共陰極,運(yùn)用時(shí)公共陰極接地。每個(gè)發(fā)光二極管的陽極通過電阻與輸入端相連。當(dāng)陽極端輸入高電平常,段發(fā)光二極管就導(dǎo)通點(diǎn)亮,而輸入低電平常則不點(diǎn)亮。在本設(shè)計(jì)中所采納的是共陰極LED數(shù)碼顯示器,其內(nèi)部結(jié)構(gòu)如圖2-4所示:圖2-4LED數(shù)碼管結(jié)構(gòu)圖這里用四位一體數(shù)碼管SM420361K:型號(hào):SM420361K-12P類別:4位一體共陰規(guī)格:長×寬×高-30.1×14.1×7.3mm 管腳標(biāo)號(hào):12-9-8-6公共腳、A-11、B-7、C-4D-2、E-1、F-10、G-5、DP-3在本設(shè)計(jì)中采納數(shù)碼管動(dòng)態(tài)顯示轉(zhuǎn)速,數(shù)碼顯示電路通過交替向P2.6和P2.7輸出低電平,使得與這兩個(gè)端口連接的數(shù)碼管公共端交替為低電平,從而為數(shù)碼管供應(yīng)導(dǎo)通回路,通過對(duì)交替時(shí)間的限制實(shí)現(xiàn)數(shù)碼管在視覺上的不間斷顯示。通過P1口輸出段選信號(hào),限制了數(shù)碼管顯示的內(nèi)容。如圖2-5所示:圖2-5數(shù)碼管顯示電路測(cè)速電路介紹開關(guān)型霍爾傳感器的原理及應(yīng)用開關(guān)型霍爾傳感器可分為單穩(wěn)態(tài)和雙穩(wěn)態(tài),內(nèi)部均有5個(gè)部分,即由穩(wěn)壓源、霍爾電勢(shì)發(fā)生器、差分放大器、施密特觸發(fā)器以及輸出級(jí)組成。雙穩(wěn)態(tài)傳感器具有兩組對(duì)稱的施密特整形電路。圖2-6是單穩(wěn)態(tài)開關(guān)集成霍爾元件UGN3020的功能圖及輸出特性。NSSNSS圖2-6UGN3020功能特性曲線對(duì)于開關(guān)型傳感器的正值規(guī)定是:用磁鐵的S極接近傳感器的端面所形成的B值為正值。由圖2-6看出,當(dāng)B=0時(shí),V0為高電平;當(dāng)外磁場(chǎng)增至BOP時(shí),輸出V0由高電平轉(zhuǎn)為低電平。外磁場(chǎng)由BOP降至BrP時(shí),輸出V0由低電平反向,BrP被稱為釋放點(diǎn)。對(duì)于UGN3020,BOP=0.022T,BRP=0.0165T,VOL=80~150mV,VOH=4V,工作電壓為4.5V~24V。UGN3020可組成轉(zhuǎn)速計(jì)探頭。該探頭由霍爾元件UGN3020和磁鋼組成測(cè)量電路。將具有10個(gè)齒的圓盤固定于被測(cè)對(duì)象的旋轉(zhuǎn)主軸上。當(dāng)圓盤齒經(jīng)過測(cè)量磁路的間隙時(shí),霍爾元件輸出高電平,其他時(shí)間輸出為低電平;這樣圓盤每轉(zhuǎn)一周,電路輸出10個(gè)脈沖,脈沖經(jīng)過分頻后,用頻率計(jì)即可測(cè)出被測(cè)對(duì)象的實(shí)際轉(zhuǎn)速。本設(shè)計(jì)采納的測(cè)速電路原理圖如下圖所示:圖2-7測(cè)速電路2.2.5步進(jìn)電機(jī)驅(qū)動(dòng)電路本系統(tǒng)的設(shè)計(jì)目的為了高效限制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng),因此須要將單片機(jī)發(fā)出的脈沖轉(zhuǎn)化為步進(jìn)角度,才能限制步進(jìn)電機(jī)轉(zhuǎn)動(dòng),我們?cè)谶@里采納ULN2003為步進(jìn)電機(jī)供應(yīng)脈沖信號(hào)。ULN2003七NPN達(dá)林頓連接晶體管是低邏輯電平數(shù)字電路(如TTL,CMOS或PMOS/NMOS)和大電流高電壓要求的燈、繼電器、打印機(jī)錘和其他類似負(fù)載間的接口的志向器件。廣泛用于計(jì)算機(jī),工業(yè)和消費(fèi)類產(chǎn)品中。全部器件有集電極開路輸出和用于瞬變抑制的續(xù)流箝位二極管。ULN2003的設(shè)計(jì)與標(biāo)準(zhǔn)TTL系列兼容。它的管腳連接圖如圖2-8所示:圖2-8ULN2003管腳連接圖圖2-9ULN2003芯片內(nèi)部結(jié)構(gòu)其主要特性為:表2-3ULN2003主要特性表極限值(若無其他規(guī)定,Tamb=25℃)參數(shù)名稱符號(hào)數(shù)值單位輸入電壓VIN30V輸入電流IIN25mA功耗PD1W工作環(huán)境溫度Topr-20to+85℃貯存溫度Tstg-55to+150℃ULN2003芯片概述與特點(diǎn):ULN2003芯片是高耐壓、大電流達(dá)林頓陣列,由7組達(dá)林頓晶體管陣列和相應(yīng)的電阻網(wǎng)絡(luò)以及鉗位二極管網(wǎng)絡(luò)構(gòu)成,具有同時(shí)驅(qū)動(dòng)7組負(fù)載的實(shí)力,為單片雙極型大功率高速集成電路。功率電子電路大多要求具有大電流輸出實(shí)力,以便于驅(qū)動(dòng)各種類型的負(fù)載。功率驅(qū)動(dòng)電路是功率電子設(shè)備輸出電路的一個(gè)重要組成部分。ULN2003芯片高壓大電流達(dá)林頓晶體管陣列產(chǎn)品屬于可控大功率器件。步進(jìn)電機(jī)驅(qū)動(dòng)電路的工作過程是:首先從P1口輸出00000001B,由于單片機(jī)與ULN2003連接只用到了P1.0—P1.3,所以ULN2003與單片機(jī)連接的四個(gè)管腳中每時(shí)刻只有一個(gè)管腳處于導(dǎo)通狀態(tài)(采納單拍方式對(duì)步進(jìn)電機(jī)限制),其他管腳處于斷開狀態(tài)。這樣就使得與ULN2003連接的步進(jìn)電機(jī)只有一個(gè)引出端導(dǎo)通。該系統(tǒng)驅(qū)動(dòng)原理圖如圖2-10:圖2-10步進(jìn)電機(jī)驅(qū)動(dòng)原理圖2.2.6電源設(shè)計(jì)在此系統(tǒng)中因要用到兩路電源,一再考慮購買了一個(gè)輸出為溝通9V(電壓表實(shí)測(cè)電壓在12V左右)的適配器,然后通過4個(gè)IN4007(圖中未標(biāo)出)搭建的整流橋,分出兩路一路引出供驅(qū)動(dòng)器,另一路再經(jīng)LM7805降為5V,完全符合要求,同時(shí)避開了電路設(shè)計(jì)中電路板上存在的大電源干擾等問題。電路電源設(shè)計(jì)如下圖所示:圖2-11電源原理圖4.5系統(tǒng)外設(shè)接口鍵盤接口原理對(duì)于須要人工干預(yù)的單片機(jī)應(yīng)用系統(tǒng),鍵盤就成為人機(jī)聯(lián)系的必要手段,此時(shí)需配置適當(dāng)?shù)逆I盤輸入設(shè)備,微機(jī)所用鍵盤有全編碼鍵盤和非編碼鍵盤兩種,全編碼鍵盤能夠由硬件邏輯自動(dòng)供應(yīng)被按下鍵的編碼,此外,一般還具有去抖動(dòng)和多鍵、竄鍵等愛護(hù)功能。這種鍵盤運(yùn)用便利,但需較多的硬件、價(jià)格貴,一般的單片機(jī)應(yīng)用系統(tǒng)較少采納。鍵盤是由若干個(gè)鍵組成的開關(guān)矩陣,它是最簡(jiǎn)潔的單片微機(jī)協(xié)助設(shè)備。4×4的鍵盤結(jié)構(gòu)如圖所示,圖中行線通過電阻接+5V,當(dāng)鍵盤沒有鍵閉合時(shí),全部的行線(X0—X3)和列線(Y0—Y3)斷開,行線均呈高電平。當(dāng)鍵盤上某一鍵閉合時(shí),該鍵所對(duì)應(yīng)的行線和列線短路。例如9號(hào)鍵按下時(shí),行線X2和Y1短路,此時(shí)行線X2的電平由Y1確定。假如把行線接到微機(jī)的輸入口,列線接到微機(jī)輸出口。在微機(jī)限制下,先使列線Y0為低電平,其余三根Y1、Y2、Y3均為高電平。然后通過輸入口讀行線狀態(tài),假如4根行線均為高電平,說明在Y0這一列上沒有鍵閉合,假如讀出的行線狀態(tài)不全為高電平,則說明為低電平的那根行線與Y0相交的鍵處于閉合狀態(tài),若Y0這列上沒有鍵閉合,接著使列線Y1為低電平,其余三根列線Y0、Y2、Y3為高電平。用同樣的反復(fù)檢查這一列鍵上無鍵閉合。以次類推,用同樣方法檢查其余的兩根列線上有無鍵閉合。這種逐行逐列地檢查鍵盤狀態(tài)的過程稱為對(duì)鍵盤的一次掃描。目前,無論是按鍵或鍵盤大部分都是利用機(jī)械觸點(diǎn)的合、斷作用。機(jī)械觸點(diǎn)在閉合及斷開瞬間由于彈性影響,在閉合及斷開瞬間均有抖動(dòng)過程,從而使電壓信號(hào)也出現(xiàn)抖動(dòng),抖動(dòng)時(shí)間的長短與開關(guān)的機(jī)械特性有關(guān),一般為5—10ms。而微機(jī)對(duì)鍵盤進(jìn)行一次掃描僅需幾百微秒。這樣將會(huì)使鍵盤掃描產(chǎn)生錯(cuò)誤的推斷。為了保證CPU對(duì)鍵盤的一次閉合僅作一次輸入處理,必需去除抖動(dòng)影響。通常去抖動(dòng)影響有兩種方法,一是在硬件上實(shí)行在鍵盤端加Rs觸發(fā)器或單穩(wěn)態(tài)電路構(gòu)成去抖動(dòng)電路;另一種方法是在檢測(cè)到有鍵按下時(shí),執(zhí)行10ms左右的延時(shí)程序后,再確認(rèn)該鍵電平是否仍保持閉合狀態(tài)時(shí)的電平,若仍保持為閉合狀態(tài)電平,則說明該鍵的確處于閉合狀態(tài),從而去除了抖動(dòng)影響。鍵盤的掃描由鍵盤掃描限制程序來完成,在這個(gè)限制程序中應(yīng)主要解決下述任務(wù):(1)監(jiān)測(cè)有無按鍵按下(2)有鍵按下后,在無硬件去抖動(dòng)電路時(shí),應(yīng)用軟件延時(shí)的方法消退抖動(dòng)的影響;(3)有牢靠的、滿意要求的邏輯處理方法如鍵盤鎖定功能,即只處理一個(gè)鍵,其間任何一個(gè)按下又松開的鍵不產(chǎn)生影響。不管一次按鍵持續(xù)多長時(shí)間,僅執(zhí)行一次按鍵功能程序等。(4)輸出確定的鍵盤以滿意散轉(zhuǎn)程序的要求。鍵盤的限制要求在單片機(jī)應(yīng)用系統(tǒng)中,掃描鍵盤只是CPU的工作任務(wù)之一。在實(shí)際應(yīng)用中要想做到既能剛好響應(yīng)鍵盤操作,有不過多占用CPU的工作時(shí)間,就要依據(jù)應(yīng)用系統(tǒng)中CPU的忙閑狀況,鍵盤的運(yùn)用頻率等來適當(dāng)?shù)倪x擇鍵盤的限制方式。1.程序限制掃描方式這種方法是只有當(dāng)CPU空閑時(shí)才調(diào)用鍵盤掃描程序,查詢鍵盤并賜予相應(yīng)處理。在程序限制方式中,CPU的空閑時(shí)間須要支配鍵盤掃描程序,但有可能多數(shù)時(shí)間里CPU處于空掃描狀態(tài)。因此,這種限制方式并沒有充分提高CPU的工作效率。2.中斷限制方式中斷限制方式又分兩種:(1)定時(shí)限制方式CPU對(duì)鍵盤的掃描采納定時(shí)方式,即每隔肯定時(shí)間對(duì)鍵盤掃描一次,在這種方式中,通過利用單片機(jī)內(nèi)部的定時(shí)器,產(chǎn)生定時(shí)時(shí)間的定時(shí)中斷后,在中斷服務(wù)程序中對(duì)鍵盤進(jìn)行掃描。這種限制方式雖然也能比較剛好的響應(yīng)鍵入的吩咐或數(shù)據(jù),但與程序限制方式類似,不管鍵盤上有無鍵按下,CPU總要定時(shí)掃描鍵盤。而單片機(jī)應(yīng)用系統(tǒng)在工作時(shí),并不常常須要鍵輸入,因此CPU常常還是處于空掃描狀態(tài)。(2)外部中斷限制方式此種限制方式是只有在鍵盤有鍵按下時(shí),才會(huì)發(fā)出中斷申請(qǐng),CPU響應(yīng)中斷懇求后,在中斷服務(wù)程序中對(duì)鍵盤進(jìn)行掃描。LED顯示器接口原理LED顯示器是單片機(jī)應(yīng)用系統(tǒng)中常用的廉價(jià)輸出設(shè)備。它是由若干個(gè)發(fā)光二極管組成的,當(dāng)發(fā)光二極管導(dǎo)通時(shí),相應(yīng)的一個(gè)點(diǎn)或一段筆畫發(fā)亮。限制不同組合的二極管導(dǎo)通,就能顯示出各種字符。常用的八段顯示器的結(jié)構(gòu)如圖所示,八段發(fā)光管分別成為a、b、c、d、e、f、g、dp。LED顯示器可分為共陰極和陽極兩種結(jié)構(gòu)。二極管的陽極連在一起的稱為共陽極顯示器,陰極連在一起的稱為共陰極顯示器。有的顯示器顯示出的字符逼真,顯示的字符種類較多,但限制電路困難。筆畫式的八段顯示器與點(diǎn)陣式顯示器相比,顯示的字符種類少,字符形態(tài)有些失真,但限制簡(jiǎn)潔,運(yùn)用便利。以筆畫式共陰極顯示器為例,當(dāng)要顯示數(shù)字“0”時(shí),只要a、b、c、d、e、f,g、dp段亮。即a—f段的陰極加高電平“1”。g、dp段陽極加低電平“0”,公共陰極接低電平“0”,顯示器便顯示“0”。加到各段陽極上的電平不同,則可限制顯示器顯示出不同的字符和數(shù)字。若以a段對(duì)應(yīng)8圖4.6(a)共陰極(b)共陽極LED顯示器有靜態(tài)和動(dòng)態(tài)兩種顯示方式。動(dòng)態(tài)顯示方式,在需用多位LED顯示時(shí),為了簡(jiǎn)化電路降低成本,將各LED的段選線a、b、c、d、e、f、g、dp并聯(lián)在一起,輸出一個(gè)8位的并行I/O口限制,而每個(gè)LED的共陰極點(diǎn),分別輸出相應(yīng)的I/O口線限制。在這八位的LED動(dòng)態(tài)顯示電路中,只需兩個(gè)并行的8位I/O口,I/O(1)、I/O(2)。其中I/O(1)作段碼選碼接口。假設(shè)顯示器為共陰極型,那么當(dāng)位選接口I/O(2)的某位輸出低電平(其它7位均為高電平)時(shí),則與此位連接的顯示器便顯示與段選碼所對(duì)應(yīng)的字符。另外7位顯示塊雖然也同時(shí)接收到同一段碼,但由于位選線均為高電平,因此顯示器不顯示。這種工作方式是分時(shí)輪番選通顯示器的公共端,使8個(gè)顯示器輪番點(diǎn)亮。即各顯示器是由脈沖電流點(diǎn)亮的(點(diǎn)亮?xí)r間一般為1ms左右),每個(gè)顯示器雖然是分時(shí)輪番點(diǎn)亮,但由于發(fā)光管具有余輝特性及人眼具有視覺暫留作用,所以適當(dāng)選取點(diǎn)亮?xí)r間和間隔時(shí)間,看上去全部顯示器是同時(shí)點(diǎn)亮的,并不察覺有閃耀現(xiàn)象,這種顯示過程為動(dòng)態(tài)掃描顯示方式。明顯,此種顯示方式顯示器不宜太多,一般不超過8個(gè)。動(dòng)態(tài)顯示方式可以節(jié)約很多I/O口線,但付出的代價(jià)是CPU要用較多的時(shí)間去輸出段選碼和位選碼。3—8譯碼器:74LS138E1、E2、E3為數(shù)據(jù)允許輸入端,E1、E2低電平有效,E3高電平有效;A、B、C為譯碼器信號(hào)輸入端;Y0—Y7,為譯碼輸出信號(hào),低電平有效。圖4.774LS1383—8譯碼器引腳圖地址鎖存器:74LS3731D—8D為8個(gè)輸入端。1Q—8Q為8個(gè)輸出端。G為數(shù)據(jù)鎖存限制端;當(dāng)G為“1”時(shí),鎖存器鎖存輸入端;當(dāng)G由“1”變“0”時(shí),數(shù)據(jù)輸入鎖存器中。OE為輸出允許端;當(dāng)OE為“0”時(shí),三態(tài)門打開;當(dāng)OE為“1”時(shí),三態(tài)門關(guān)閉,輸出呈高阻狀態(tài)。在MCS-51單片機(jī)系統(tǒng)中,常采納74LS373作為地址鎖存器運(yùn)用,其連接方法如圖4.8所示。其中輸入端1D~8D接至單片機(jī)的P0口,輸出端供應(yīng)的是低8位地址,G端接至單片機(jī)的地址鎖存允許信號(hào)ALE。輸出允許端OE接地,表示輸出三態(tài)門始終打開。圖4.874LS373鎖存器5軟件設(shè)計(jì)5.1軟件設(shè)計(jì)流程圖單片機(jī)應(yīng)用系統(tǒng)的軟件設(shè)計(jì)是設(shè)計(jì)中最基本而且是最重要的一個(gè)環(huán)節(jié)。在設(shè)計(jì)中,綜合考慮了系統(tǒng)須要實(shí)現(xiàn)的功能和仿真試驗(yàn)系統(tǒng)環(huán)境。從而確定了本設(shè)計(jì)系統(tǒng)的具體任務(wù)細(xì)微環(huán)節(jié)及軟件結(jié)構(gòu)[14]。圖5.1外部(隨機(jī))中斷1圖5.2外部(隨機(jī))中斷2圖5.3主程序流程圖5.2設(shè)計(jì)相關(guān)程序ORG0000HDOJ6:LCALLX2LJMPDOJOJBACC.4,DOJ5ORG0003HLCALLX3LJMPINTADB79H,7EHORG0013HSJMPDOJ6LJMPINTBDOJ5:CJNEA,#16HORG0100HMOVADOJ0:SETBEASWAPASETBEX0ORLA,79HSETBEX1MOVR7,ASETBPX0;推斷電機(jī)參數(shù)SETBPX1MOVA,7EHCLRIT0CJNEA,#00HCLRIT1MOVA,7CHMOVSP,#53HCJNEA,#01H,DOJ2CALLX2DOJ1:MOVP1#03HCALLDELY0MOVP1,#03HCALLDELY0CALLDELY0CALLGGJ0CALLGGJ0MOVP1,#09HSJMPDOJ2CALLDELY0xing48:MOVA,7CHCALLGGJ0CJNEA,#00H,DOJ8MOVP1,#07Hdoj44:MOVP1,#OEHCALLDELY0CALLDELY0CALLGGJ0CALLGGJ0MOVP1,#06HMOVP1,#0CHCALLGGJ0CALLDELY0MOVP1#06HCALLGGJ0CALLDELY0MOVP1,#0DHCALLGGJ0DEL1Y:CALLDISCALLDELY0DJNZR5,DEL1YCALLGGJ0DJNZR2,DELY1MOVP1,#09HRETCALLDELY0INTA:CALLDLCALLGGJ0SETBP3.2SJMPDOJ1RETIDOJ2:MOVP1,#09HDL:MOVR1,#200CALLDELY0DEL2:MOVR2,#150CALLGGJ0CALLDELY0MOVP1,#0CHCALLGGJ0CALLDELY0SJMPDOJ44CALLGGJ0DOJ8:MOVP1,#06HMOVP1,#06HCALLDELY0CALLDELY0CALLGGJ0CALLGGJ0MOVP1,#07HCALLDELY0MOVP1,#0CHCALLGGJ0LCALLyanshi22MOVP1,#03HMOVP1,#06HCALLDELY0LCALLyanshi22CALLGGJ0MOVP1,#03HMOVP1,#0BHDEL3:MOVR3,#100CALLDELY0DJNZR2,$CALLGGJ0DJNZR1,DEL2MOVP1,#09HRETCALLDELY0INTB:CALLZFZCALLGGJ0OUT:SETBP3.3MOVP1,#0DHRETICALLDELY0ZFZ:MOVA,7CHCALLGGJ0CJNEA,#00H,DJ48ZFMOVP1,#0CHLCALLdj44zfCALLDELY0dj48zf:LCALLdj48zfzCALLGGJ0LCALLOUTMOVEP1,#0EHRETCALLDELY0L1:LCALLDJ44ZCALLGGJ0LCALLyanshi1SJMPDOJ8RETDELY0:MOVA,7DHL2:LCALLDJ44FSWAPALCALLyanshi1CLRCRETRRCAssss:LCALLdi48zRRCALCALLyanshi1MOVR2,Atttt:LCALLDJ48FDELY1:MOVR5,#01HLCALLyanshi1LCALLyanshi22RETdj44z:MOVP1,#03HMOVP1,#07HLCALLyanshi22LCALLyanshi22MOVP1,#06HMOVP1,#06HLCALLyanshi22LCALLyanshi22MOVP1,#0CHDJ48F:MOVP1,#06HLCALLyanshi22LCALLyanshi22MOVP1,#09HMOVP1,#07HLCALLyanshi22MOVA,R7DJ44F:MOVP1,#09HMOVP1,#03Hyanshi3:MOVR3,#100LCALLyanshi22DINZR3,$MOVP1,#0BH;******兩個(gè)周期(耗時(shí)2μs)DS5:MOVR1,ADJNZR1,yanshi2MOVP1,#09HRETLCALLyanshi22yanshi22:MOVR1,#5MOVP1,#0DHLCALLyanshi22LCALLyanshi22RETMOVP1,#0CHdj48z:MOVP1,#0EHLCALLyanshi22LCALLyanshi22MOVP1,#0EHMOVP1,#0CHLCALLyanshi22LCALLyanshi22RETMOVP1,#0DHyanshi1:MOVR1,#200LCALLyanshi22;*****延時(shí)子程序2—3.6秒MOVP1,#09H;****延時(shí)子程序1,實(shí)際耗時(shí)大于1sLCALLyanshi22;(100*100*50*2μs=1s)MOVP1,#0BHyanshi21:MOVR2,#100LCALLyanshi22yanshi23:MOVR3,#100CJNZR7,#00H,DDJ8DJNZR3$LCALLyanshi22DJNZR2,yanshi23DJNZR1,yanshi21;****存首位位選子;*******中斷結(jié)束MOVA,#10HGGJ0:CJNER7,#00H,GGJ1yanshi2:MOVR2,#150CJNER6,#00H,GGJ1;存動(dòng)態(tài)顯示緩沖區(qū)首地址AJMPDOJ4LEDS:MOV@R0,AGGJ1:DJNZR6,DOJ3;寄存器間接地址尋址:(R1)←(A)CJNZR7,#00H,DDJ8INCR0DOJ4:CALLDOJ7CJNER0,#7EH,LEDSSJMPDOJ4INCADDJ8:DJNZR7,DOJ3MOV@R0,AAJMPDOJ4RETDOJ3:CALLDOJ7X3:MOVR4,ARETMOVR0,50HMOVA,R6MOVA,@R0CALLPTDS5MOVR1,AMOVA,R7MOVA,R4CALLPTDS5MOV@R1,ACALLSSEECLRARETPOPDPHPTDS5:MOVR1,APOPDPLCALLPTDS6MOVCA,@A+DPTRMOVA,R1INCDPTRSWAPACJNEA,01H,X30PTDS6:ANLA,#0FHDECR1MOV@R0,ACLRAINCR0MOVCA,@A+DPTRRETX31:MOV@R0,A;*****顯示子程序INCDPTRLEDP:MOV50H,#7EHPUSHDPLPUSHDPH;~~~~~~~~~~~~~~鍵值表RETDB07H,04H,08H,05H,09H,06H,0AH,X30:DECR103AH,0BH,01H,00H,02H,0FH,MOVA,R103H,0EH,03AH,0CH,0DHSJMPX31DIS:PUSHDPLX2:MOVR6,#50HSETBRS1X0:ACALLXLEMOVR0,#7EH;六位顯示完?MOVR2,#20HJNBACC.5,XX0MOVR3,#00HDJNZR6,X0MOVDPTR,#LS0MOVR6,#20HLS2:MOVA,@R0MOVR0,#50HMOVCA,@A+DPTRMOVA,@R0MOVR1,#0DCHMOVR0,AMOV@R1,AMOVA@R0MOVA,R2MOVA,#10HINCR1MOV@R0,AMOVX@R1,AX1:ACALLXLELS1:DJNZR3,LS1JNBACC.5,XX1CLRC;五位顯示完了嗎?RRCADJNZR6,X1MOVR2,AMOVA,R7DECR0MOV@R0,AJNZLS2SJMPX2MOVX@R0,AXX1:MOVR6,ADECR0MOVA,MOV@R0,AMOVX@R0,AMOVA,R6POPDPLXX0:RETMOVR7,ARETDJNZR5,SSE2;***********字型表CLRRS1LS0:DB0C0H,0F9H,90H,0A4HRET0B0H,99H,92HXLE:ACALLDISDB82H,0F8H,80H,90H,88HXRLA,R383H,0C6HMOVR3,04HDB0A1H,86H,8EH,0FFH,0CH,MOVR4,02H89H,7FH,0BFHJZX10SSEE:SETBRS1MOVR2,#88HMOVR5,#05HMOVR4,#88HSSE2:MOV30H,#20HX10:DECR4MOV31H,#7EHMOVA,R4MOVR7,#06HXRLA,#82HSSE1:MOVR1,#0DDHJZX11MOVA,30HMOVA,R4MOVX@R1,AXRLA,#0EHMOVR0,31HJZX11MOVA,@R0MOVR4,#20HMOVDPTR,#DDFF

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論