版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
山東職業(yè)學(xué)院特長(zhǎng)生課題設(shè)計(jì)論文延時(shí)軌道設(shè)計(jì)系別:電氣工程系專業(yè):應(yīng)用電子技術(shù)學(xué)生姓名:田偉杰、盛佳、吳晨晨指導(dǎo)教師:翟慶一日期:2023年3月目錄TOC\o"1-4"\h\u22769【摘要】36340一、引言311489二、步進(jìn)電機(jī)常見(jiàn)的控制方案與驅(qū)動(dòng)技術(shù)簡(jiǎn)介451812.1基于電子電路的控制4224692.2基于PLC的控制5128732.3基于單片機(jī)的控制615766三、步進(jìn)電機(jī)電機(jī)驅(qū)動(dòng)與原理6277953.1電機(jī)驅(qū)動(dòng)6185943.1.1主要特點(diǎn)698103.1.2性能與指標(biāo)6288923.2步進(jìn)電機(jī)特點(diǎn)7314543.3步進(jìn)電機(jī)原理88869四、AT89S52簡(jiǎn)介845694.1主要性能參數(shù)9104514.2功能特性概述9116664.3引腳功能說(shuō)明971734.4晶體振蕩器特性113468五、課程設(shè)計(jì)目的1110629六、系統(tǒng)功能1220060七、硬件設(shè)計(jì)思想和電路原理圖12220867.1系統(tǒng)總體設(shè)計(jì)與框圖12310207.2實(shí)際電路圖13181107.2.1電源電路13186027.2.2單片機(jī)最小系統(tǒng)設(shè)計(jì)1368317.2.3按鍵調(diào)節(jié)局部1556837.2.4LCD顯示局部159246八、系統(tǒng)軟件設(shè)計(jì)16147018.1程序流程設(shè)計(jì)16151038.2軟件設(shè)計(jì)1713753九、調(diào)試總結(jié)18152129.1操作控制:18112939.2分析與心得1827228附錄一:參考文獻(xiàn)1932152附錄二:程序20【摘要】本課程設(shè)計(jì)的內(nèi)容是利用51單片機(jī)、步進(jìn)電機(jī)驅(qū)動(dòng)、字符型LCD液晶顯示和鍵盤陣列到達(dá)控制步進(jìn)電機(jī)的啟動(dòng)、停止、正轉(zhuǎn)、反轉(zhuǎn)、時(shí)間和狀態(tài)顯示的目的,使步進(jìn)電機(jī)控制更加靈活。步進(jìn)電機(jī)采用WZM-2H042MH驅(qū)動(dòng)器,WZM-2H042MH具有過(guò)流、過(guò)壓、欠壓、短路、脫機(jī)〔EDA〕保護(hù)等優(yōu)點(diǎn)。利用LCD液晶顯示增設(shè)電機(jī)狀態(tài)顯示功能,各項(xiàng)數(shù)據(jù)更直觀。實(shí)測(cè)結(jié)果說(shuō)明,該控制系統(tǒng)到達(dá)了設(shè)計(jì)的要求。關(guān)鍵字:51單片機(jī)、LCD液晶顯示、步進(jìn)電機(jī)、WZM-2H042MH電機(jī)驅(qū)動(dòng)引言步進(jìn)電動(dòng)機(jī)又稱脈沖電動(dòng)機(jī)或階躍電動(dòng)機(jī),國(guó)外一般稱為Steppingmotor、Pulsemotor或Stepperservo,其應(yīng)用開(kāi)展已有約80年的歷史。步進(jìn)電機(jī)是一種把電脈沖信號(hào)變成直線位移或角位移的控制電機(jī),其位移速度與脈沖頻率成正比,位移量與脈沖數(shù)成正比。步進(jìn)電機(jī)在結(jié)構(gòu)上也是由定子和轉(zhuǎn)子組成,可以對(duì)旋轉(zhuǎn)角度和轉(zhuǎn)動(dòng)速度進(jìn)行高精度控制。當(dāng)電流流過(guò)定子繞組時(shí),定子繞組產(chǎn)生一矢量磁場(chǎng),該矢量場(chǎng)會(huì)帶動(dòng)轉(zhuǎn)子旋轉(zhuǎn)一角度,使得轉(zhuǎn)子的一對(duì)磁極磁場(chǎng)方向與定子的磁場(chǎng)方向一著該磁場(chǎng)旋轉(zhuǎn)一個(gè)角度。因此,控制電機(jī)轉(zhuǎn)子旋轉(zhuǎn)實(shí)際上就是以一定的規(guī)律控制定子繞組的電流來(lái)產(chǎn)生旋轉(zhuǎn)的磁場(chǎng)。每來(lái)一個(gè)脈沖電壓,轉(zhuǎn)子就旋轉(zhuǎn)一個(gè)步距角,稱為一步。根據(jù)電壓脈沖的分配方式,步進(jìn)電機(jī)各相繞組的電流輪流切換,在供應(yīng)連續(xù)脈沖時(shí),就能一步一步地連續(xù)轉(zhuǎn)動(dòng),從而使電機(jī)旋轉(zhuǎn)。步進(jìn)電機(jī)每轉(zhuǎn)一周的步數(shù)相同,在不丟步的情況下運(yùn)行,其步距誤差不會(huì)長(zhǎng)期積累。在非超載的情況下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號(hào)的頻率和脈沖數(shù),而不受負(fù)載變化的影響,同時(shí)步進(jìn)電機(jī)只有周期性的誤差而無(wú)累積誤差,精度高,步進(jìn)電動(dòng)機(jī)可以在寬廣的頻率范圍內(nèi)通過(guò)改變脈沖頻率來(lái)實(shí)現(xiàn)調(diào)速、快速起停、正反轉(zhuǎn)控制等,這是步進(jìn)電動(dòng)機(jī)最突出的優(yōu)點(diǎn)。正是由于步進(jìn)電機(jī)具有突出的優(yōu)點(diǎn),所以成了機(jī)電一體化的關(guān)鍵產(chǎn)品之一,廣泛應(yīng)用在各種自動(dòng)化控制系統(tǒng)中。隨著微電子和計(jì)算機(jī)技術(shù)的開(kāi)展,步進(jìn)電機(jī)的需求量與日俱增,在各個(gè)國(guó)民經(jīng)濟(jì)領(lǐng)域都有應(yīng)用。比方在數(shù)控系統(tǒng)中就得到廣泛的應(yīng)用。目前世界各國(guó)都在大力開(kāi)展數(shù)控技術(shù),我國(guó)的數(shù)控系統(tǒng)也取得了很大的開(kāi)展,我國(guó)已經(jīng)能夠自行研制開(kāi)發(fā)適合我國(guó)數(shù)控機(jī)床開(kāi)展需要的各種檔次的數(shù)控系統(tǒng)。雖然與興旺國(guó)家相比,我們我國(guó)的數(shù)控技術(shù)方面整體開(kāi)展水平還比擬低,但已經(jīng)在我國(guó)占有非常重要的地位,并起了很大的作用。除了在數(shù)控系統(tǒng)中得到廣泛的應(yīng)用,近年來(lái)由于微型計(jì)算機(jī)方面的快速開(kāi)展,使步進(jìn)電機(jī)的控制發(fā)生了革命性變革。優(yōu)點(diǎn)明顯的步進(jìn)電機(jī)被廣泛應(yīng)用在電子計(jì)算機(jī)的許多外圍設(shè)備中,例如打印機(jī),紙帶輸送機(jī)構(gòu),卡片閱讀機(jī),主動(dòng)輪驅(qū)動(dòng)機(jī)構(gòu)和存儲(chǔ)器存取機(jī)構(gòu)等,步進(jìn)電機(jī)也在軍用儀器,通信和雷達(dá)設(shè)備,攝影系統(tǒng),光電組合裝置,閥門控制,數(shù)控機(jī)床,電子鐘,醫(yī)療設(shè)備及自動(dòng)繪圖儀,數(shù)字控制系統(tǒng),工具機(jī)控制,程序控制系統(tǒng)以及許多航天工業(yè)的系統(tǒng)中得到應(yīng)用。因而,對(duì)于步進(jìn)電機(jī)控制的研究也就顯得尤為重要了。為了得到良好的控制性能,對(duì)步進(jìn)電機(jī)的控制的研究就一直沒(méi)有停止過(guò),許多重大的技術(shù)得以實(shí)現(xiàn)。上世紀(jì)80年代以后,由于微型計(jì)算機(jī)以多功能的姿態(tài)出現(xiàn),步進(jìn)電動(dòng)機(jī)的控制方式變得更加靈活多樣。原來(lái)的步進(jìn)電機(jī)控制系統(tǒng)采用分立元件的控制回路,或者集成電路,不僅調(diào)試安裝復(fù)雜,要消耗大量元器件,而且一旦定型之后,要改變控制方案就一定要重新設(shè)計(jì)電路,不利于系統(tǒng)的改良升級(jí)?;谖⑿蛦纹瑱C(jī)的控制系統(tǒng)那么通過(guò)軟件來(lái)控制步進(jìn)電機(jī),能夠更好地發(fā)揮步進(jìn)電機(jī)的潛力。因此,用微型單片機(jī)控制步進(jìn)電機(jī)己經(jīng)成為了一種必然的趨勢(shì),也符合數(shù)字化的時(shí)代開(kāi)展要求。還比方為了適應(yīng)一些領(lǐng)域中高精度定位和運(yùn)行平穩(wěn)性的要求,出現(xiàn)的步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)技術(shù),就包括振蕩器、環(huán)行分配器控制的細(xì)分驅(qū)動(dòng)、基于單片機(jī)斬波恒流驅(qū)動(dòng)、基于單片機(jī)的直流電壓驅(qū)動(dòng)三種常見(jiàn)驅(qū)動(dòng)方式,除上述三種步進(jìn)電機(jī)的驅(qū)動(dòng)方案之外,目前報(bào)道的驅(qū)動(dòng)方案還有根據(jù)匯編語(yǔ)言或C語(yǔ)言進(jìn)行軟件開(kāi)發(fā),通過(guò)串行或并行通行的方式實(shí)現(xiàn)pc機(jī)與步進(jìn)電機(jī)控制器之間的數(shù)據(jù)通信,最終實(shí)現(xiàn)由PC機(jī)直接控制步進(jìn)電機(jī)的方法。二、步進(jìn)電機(jī)常見(jiàn)的控制方案與驅(qū)動(dòng)技術(shù)簡(jiǎn)介2.1基于電子電路的控制步進(jìn)電機(jī)受電脈沖信號(hào)控制,電脈沖信號(hào)的產(chǎn)生、分配、放大全靠電子元器件的動(dòng)作來(lái)實(shí)現(xiàn)。由于脈沖控制信號(hào)的驅(qū)動(dòng)能力一般都很弱,因此必須有功率放大驅(qū)動(dòng)電路。步進(jìn)電機(jī)與控制電路、功率放大驅(qū)動(dòng)電路組成一體,構(gòu)成步進(jìn)電機(jī)驅(qū)動(dòng)系統(tǒng)。此種控制電路設(shè)計(jì)簡(jiǎn)單,功能強(qiáng)大,可實(shí)現(xiàn)一般步進(jìn)電機(jī)的細(xì)分任務(wù)。這個(gè)系統(tǒng)由三局部組成:脈沖信號(hào)產(chǎn)生電路、脈沖信號(hào)分配電路、功率放大驅(qū)動(dòng)電路。系統(tǒng)組成如圖1所示。圖1基于電子電路控制系統(tǒng)此種方案即可為開(kāi)環(huán)控制,也可閉環(huán)控制。開(kāi)環(huán)時(shí),其平穩(wěn)性好,本錢低,設(shè)計(jì)簡(jiǎn)單,但未能實(shí)現(xiàn)高精度細(xì)分。采用閉環(huán)控制,即能實(shí)現(xiàn)高精度細(xì)分,實(shí)現(xiàn)無(wú)級(jí)調(diào)速。閉環(huán)控制是不斷直接或間接地檢測(cè)轉(zhuǎn)子的位置和速度,然后通過(guò)反應(yīng)和適當(dāng)?shù)奶幚?,自?dòng)給出脈沖鏈,使步進(jìn)電機(jī)每一步響應(yīng)控制信號(hào)的命令,從而只要控制策略正確電機(jī)不可能輕易失步[4]。該方案多通過(guò)一些大規(guī)模集成電路來(lái)控制其脈沖輸出頻率和脈沖輸出數(shù),功能相對(duì)較單一,如需改變控制方案,必須需重新設(shè)計(jì),因此靈活性不高。2.2基于PLC的控制PLC也叫可編程控制器,是一種工業(yè)上用的計(jì)算機(jī)。PLC作為新一代的工業(yè)控制器,由于具有通用性好、實(shí)用性強(qiáng)、硬件配套齊全、編程簡(jiǎn)單易學(xué)和可靠性高等優(yōu)點(diǎn)而廣泛應(yīng)用于各行業(yè)的自動(dòng)控制系統(tǒng)中。步進(jìn)電機(jī)控制系統(tǒng)有PLC、環(huán)形分配器和功率驅(qū)動(dòng)電路組成??刂葡到y(tǒng)采用PLC來(lái)產(chǎn)生控制脈沖。通過(guò)PLC編程輸出一定數(shù)量的方波脈沖,控制步進(jìn)電機(jī)的轉(zhuǎn)角進(jìn)而控制伺服機(jī)構(gòu)的進(jìn)給量,同時(shí)通過(guò)編程控制脈沖頻率來(lái)控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度,進(jìn)而控制伺服機(jī)構(gòu)的進(jìn)給速度。環(huán)形脈沖分配器將PLC輸出的控制脈沖按步進(jìn)電機(jī)的通電順序分配到相應(yīng)的繞組。PLC控制的步進(jìn)電機(jī)可以采用軟件環(huán)形分配器,也可采用硬件環(huán)形分配器。采用軟件環(huán)形分配器占用PLC資源較多,特別是步進(jìn)電機(jī)繞組相數(shù)大于4時(shí),對(duì)于大型生產(chǎn)線應(yīng)該予以考慮。采用硬件環(huán)形分配器,雖然硬件結(jié)構(gòu)稍微復(fù)雜些,但可以節(jié)省PLC資源,目前市場(chǎng)有多種專用芯片可以選用。步進(jìn)電機(jī)功率驅(qū)動(dòng)電路將PLC輸出的控制脈沖放大,到達(dá)比擬大的驅(qū)動(dòng)能力,來(lái)驅(qū)動(dòng)步進(jìn)電機(jī)。采用軟件來(lái)產(chǎn)生控制步進(jìn)電機(jī)的環(huán)型脈沖信號(hào),并用PLC中的定時(shí)器來(lái)產(chǎn)生速度脈沖信號(hào),這樣就可以省掉專用的步進(jìn)電機(jī)驅(qū)動(dòng)器,降低硬件本錢。但由于PLC的掃描周期一般為但由于PLC的掃描周期一般為幾毫秒到幾十毫秒,相應(yīng)的頻率只能到達(dá)幾百赫茲,因此,受到PLC工作方式的限制及其掃描周期的影響,步進(jìn)電機(jī)不能在高頻下工作,無(wú)法實(shí)現(xiàn)高速控制。并且在速度較高時(shí),由于受到掃描周期的影響,相應(yīng)的控制精度就降低了。2.3基于單片機(jī)的控制采用單片機(jī)來(lái)控制步進(jìn)電機(jī),實(shí)現(xiàn)了軟件與硬件相結(jié)合的控制方法。用軟件代替環(huán)形分配器,到達(dá)了對(duì)步進(jìn)電機(jī)的最正確控制。系統(tǒng)中采用單片機(jī)接口線直接去控制步進(jìn)電機(jī)各相驅(qū)動(dòng)線路。由于單片機(jī)的強(qiáng)大功能,還可設(shè)計(jì)大量的外圍電路,鍵盤作為一個(gè)外部中斷源,設(shè)置了步進(jìn)電機(jī)正轉(zhuǎn)、反轉(zhuǎn)、檔次、停止等功能,采用中斷和查詢相結(jié)合的方法來(lái)調(diào)用中斷效勞程序,完成對(duì)步進(jìn)電機(jī)的最正確控制,顯示器及時(shí)顯示正轉(zhuǎn)、反轉(zhuǎn)速度等狀態(tài)。環(huán)形分配器其功能由單片機(jī)系統(tǒng)實(shí)現(xiàn),采用軟件編程的方法實(shí)現(xiàn)脈沖的分配。本方案有以下優(yōu)點(diǎn):(1)單片機(jī)軟件編程可以使復(fù)雜的控制過(guò)程實(shí)現(xiàn)自動(dòng)控制和精確控制,防止了失步、振蕩等對(duì)控制精度的影響;(2)用軟件代替環(huán)形分配器,通過(guò)對(duì)單片機(jī)的設(shè)定,用同一種電路實(shí)現(xiàn)了多相步進(jìn)電機(jī)的控制和驅(qū)動(dòng),大大提高了接口電路的靈活性和通用性;(3)單片機(jī)的強(qiáng)大功能使顯示電路、鍵盤電路、復(fù)位電路等外圍電路有機(jī)的組合,大大提高系統(tǒng)的交互性[5]。基于以上優(yōu)點(diǎn),本次設(shè)計(jì)采用基于單片機(jī)的控制方案。三、步進(jìn)電機(jī)電機(jī)驅(qū)動(dòng)與原理3.1電機(jī)驅(qū)動(dòng)3.1.1主要特點(diǎn)24-40V直流供電,適應(yīng)最惡劣電網(wǎng)環(huán)境H極雙極恒相流細(xì)分驅(qū)動(dòng)獨(dú)創(chuàng)的速度自適應(yīng)電路,自動(dòng)尋優(yōu)細(xì)分電流方便選擇2-128細(xì)分15種運(yùn)行模式過(guò)流、過(guò)壓、欠壓、短路保護(hù)脫機(jī)〔ENA〕保護(hù)功能性能與指標(biāo)WZM-2H042MH為一款等角度恒力矩細(xì)分驅(qū)動(dòng)器,特別適合于大批量低本錢用途,同時(shí)具有許多極富價(jià)值的優(yōu)越功能。驅(qū)動(dòng)器電壓直流24-40V,適配電流為3A以下,外徑42、57MM的二相混合式步進(jìn)電機(jī)。此驅(qū)動(dòng)器內(nèi)部采用美國(guó)先進(jìn)技術(shù),此電路可以使電機(jī)調(diào)整運(yùn)行力矩大,電機(jī)發(fā)熱和噪音明顯改善,高速性能,有較大提高,驅(qū)動(dòng)器發(fā)熱小;步進(jìn)脈沖停止超過(guò)100ms,驅(qū)動(dòng)器電流自動(dòng)減半。電氣指標(biāo)環(huán)境指標(biāo)說(shuō)明最小值典型值最大值供電電壓〔VDC〕2024V400.9-3.0邏輯輸入電流〔mA〕710160-200脈沖低電平時(shí)間〔US〕2.5--驅(qū)動(dòng)器WZM-2H042MH細(xì)分表驅(qū)動(dòng)器WZM-2H042MH電流表電流、細(xì)分撥碼開(kāi)關(guān)設(shè)定驅(qū)動(dòng)器WZM-2H042MH細(xì)分表驅(qū)動(dòng)器WZM-2H042MH電流表八位撥碼開(kāi)關(guān)功能設(shè)定電流選擇撥動(dòng)開(kāi)關(guān)123電流值〔A〕(峰值)ONONON0.90AOFFONON1.20AONOFFON1.50AOFFOFFON1.80AONONOFF2.10AOFFONOFF2.40AONOFFOFF2.70AOFFOFFOFF3.00A細(xì)分選擇撥動(dòng)開(kāi)關(guān)5678步數(shù)/圈OFFONONON400ONOFFONON800OFFOFFONON1600ONONOFFON3200OFFONOFFON6400ONOFFOFFON12800OFFOFFOFFON25600ONONONOFF1000OFFONONOFF2000ONOFFONOFF4000OFFOFFONOFF5000ONONOFFOFF8000OFFONOFFOFF10000ONOFFOFFOFF20000OFFOFFOFFOFF25000電流選擇開(kāi)關(guān):SW1、SW2、SW3;電流選擇開(kāi)關(guān):SW1、SW2、SW3;靜態(tài)半流或全流選擇:SW4、ON全流、OFF半流;細(xì)分選擇開(kāi)關(guān):SW5、SW6、SW7、SW8;具體可參照面板絲印說(shuō)明。開(kāi)關(guān)翻開(kāi)為0〔OFF=0〕,閉合為1〔ON=1〕。3.2步進(jìn)電機(jī)特點(diǎn)1.精度高一般的步進(jìn)電機(jī)的精度為步進(jìn)角的3-5%,且不累積??稍趯拸V的頻率范圍內(nèi)通過(guò)改變脈沖頻率來(lái)實(shí)現(xiàn)調(diào)速,快速起停、正反轉(zhuǎn)控制及制動(dòng)等,這是步進(jìn)電動(dòng)機(jī)最突出的優(yōu)點(diǎn)2.過(guò)載性好其轉(zhuǎn)速不受負(fù)載大小的影響,不像普通電機(jī),當(dāng)負(fù)載加大時(shí)就會(huì)出現(xiàn)速度下降的情況,所以步進(jìn)電機(jī)使用在對(duì)速度和位置都有嚴(yán)格要求的場(chǎng)合;3.控制方便步進(jìn)電機(jī)是以“步〞為單位旋轉(zhuǎn)的,數(shù)字特征比擬明顯,這樣就給計(jì)算機(jī)控制帶來(lái)了很大的方便,反過(guò)來(lái),計(jì)算機(jī)的出現(xiàn)也為步進(jìn)電機(jī)開(kāi)辟了更為廣闊的使用市場(chǎng);4.整機(jī)結(jié)構(gòu)簡(jiǎn)單傳統(tǒng)的機(jī)械速度和位置控制結(jié)構(gòu)比擬復(fù)雜,調(diào)整困難,使用步進(jìn)電機(jī)后,使得整機(jī)的結(jié)構(gòu)變得簡(jiǎn)單和緊湊。3.3步進(jìn)電機(jī)原理下列圖是一種四相可變磁阻型的步進(jìn)電機(jī)結(jié)構(gòu)示意圖。這種電機(jī)定子上有八個(gè)凸齒,每一個(gè)齒上有一個(gè)線圈。線圈繞組的連接方式,是對(duì)稱齒上的兩個(gè)線圈進(jìn)行反相連接,如圖中所示。八個(gè)齒構(gòu)成四對(duì),所以稱為四相步進(jìn)電機(jī)。圖二電機(jī)原理圖它的工作過(guò)程是這樣的:當(dāng)有一相繞組被鼓勵(lì)時(shí),磁通從正相齒,經(jīng)過(guò)軟鐵芯的轉(zhuǎn)子,并以最短的路徑流向負(fù)相齒,而其他六個(gè)凸齒并無(wú)磁通。為使磁通路徑最短,在磁場(chǎng)力的作用下,轉(zhuǎn)子被強(qiáng)迫移動(dòng),使最近的一對(duì)齒與被鼓勵(lì)的一相對(duì)準(zhǔn)。在圖(A)中A相是被鼓勵(lì),轉(zhuǎn)子上大箭頭所指向的那個(gè)齒,與正向的A齒對(duì)準(zhǔn)。從這個(gè)位置再對(duì)B相進(jìn)行鼓勵(lì),如圖1中的(B),轉(zhuǎn)子向反時(shí)針轉(zhuǎn)過(guò)15°。假設(shè)是D相被鼓勵(lì),如圖中的(C),那么轉(zhuǎn)子為順時(shí)針轉(zhuǎn)過(guò)15°。下一步是C相被鼓勵(lì)。因?yàn)镃相有兩種可能性:A—B—C—D或A—D—C—B。一種為反時(shí)針轉(zhuǎn)動(dòng);另一種為順時(shí)針轉(zhuǎn)動(dòng)。但每步都使轉(zhuǎn)子轉(zhuǎn)動(dòng)15°。電機(jī)步長(zhǎng)(步距角)是步進(jìn)電機(jī)的主要性能指標(biāo)之一,不同的應(yīng)用場(chǎng)合,對(duì)步長(zhǎng)大小的要求不同。改變控制繞組數(shù)(相數(shù))或極數(shù)(轉(zhuǎn)子齒數(shù)),可以改變步長(zhǎng)的大小。它們之間的相互關(guān)系,可由下式計(jì)算:Lθ=360P×N式中:Lθ為步長(zhǎng);P為相數(shù);N為轉(zhuǎn)子齒數(shù)。在圖1中,步長(zhǎng)為15°,表示電機(jī)轉(zhuǎn)一圈需要24步。四、AT89S52簡(jiǎn)介AT89S52是美國(guó)ATMEL公司生產(chǎn)的低功耗,高性能CMOS8位單片機(jī),片內(nèi)含4kbytes的可系統(tǒng)編程的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)8051指令系統(tǒng)及引腳。它集Flash程序存儲(chǔ)器既可在線編程〔ISP〕也可用傳統(tǒng)方法進(jìn)行編程及通用8位微處理器于單片芯片中,功能強(qiáng)大。4.1主要性能參數(shù)·與MCS-51產(chǎn)品指令系統(tǒng)完全兼容·4k字節(jié)在系統(tǒng)編程〔ISP〕Flash閃速存儲(chǔ)器·4.0-5.5V的工作電壓范圍·全靜態(tài)工作模式:0Hz-33MHz·三級(jí)程序加密鎖·128×8字節(jié)內(nèi)部RAM·32個(gè)可編程I/O口線·2個(gè)16位定時(shí)/計(jì)數(shù)器·6個(gè)中斷源·全雙工串行UART通道·低功耗空閑和掉電模式·中斷可從空閑模喚醒系統(tǒng)·看門狗〔WDT〕及雙數(shù)據(jù)指針·掉電標(biāo)識(shí)和快速編程特性·靈活的在系統(tǒng)編程〔ISP字節(jié)或頁(yè)寫模式〕4.2功能特性概述AT89S51提供以下標(biāo)準(zhǔn)功能:4k字節(jié)Flash閃速存儲(chǔ)器,128字節(jié)內(nèi)部RAM,32個(gè)I/O口線,看門狗〔WDT〕,兩個(gè)數(shù)據(jù)指針,兩個(gè)16位定時(shí)/計(jì)數(shù)器,一個(gè)5向量?jī)杉?jí)中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片內(nèi)振蕩器及時(shí)鐘電路。同時(shí),AT89S51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的工作,但允許RAM,定時(shí)/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個(gè)硬件復(fù)位。4.3引腳功能說(shuō)明圖三AT89S52該設(shè)計(jì)使用到的單片機(jī)芯片對(duì)應(yīng)管腳名稱位置等如圖的引腳功能圖詳細(xì)說(shuō)明?!CC:電源電壓·GND:地·RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。WDT溢出將使該引腳輸出高電平,設(shè)置SFRAUXR的DISRT0位〔地址8EH〕可翻開(kāi)或關(guān)閉該功能。DISRT0位缺為RESET輸出高電平翻開(kāi)狀態(tài)?!LE/PROG:當(dāng)訪問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE〔地址鎖存允許〕輸出脈沖用于鎖存地址的低8位字節(jié)。即使不訪問(wèn)外部存儲(chǔ)器,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ALE脈沖。對(duì)F1ash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖〔PROG〕。如必要,可通過(guò)對(duì)特殊功能存放器〔SFR〕區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只一條M0VX和M0VC指令A(yù)LE才會(huì)被激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE無(wú)效?!SEN:程序儲(chǔ)存允許〔PSEN〕輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89S51由外部程序存儲(chǔ)器取指令〔或數(shù)據(jù)〕時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖。當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器,沒(méi)有兩次有效的PSEN信號(hào)?!A/VPP:外部訪問(wèn)允許。欲使CPU僅訪問(wèn)外部程序存儲(chǔ)器〔地址為0000H-FFFFH〕,EA端必須保持低電平〔接地〕。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平〔接Vcc端〕,CPU那么執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。F1ash存儲(chǔ)器編程時(shí),該引腳加上+12V的編程電壓Vpp?!TALl:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端?!TAL2:振蕩器反相放大器的輸出端?!ご鎯?chǔ)器結(jié)構(gòu):MCS-51單片機(jī)內(nèi)核采用程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器空間分開(kāi)的結(jié)構(gòu),均具64KB外部程序和數(shù)據(jù)的尋址空間?!こ绦虼鎯?chǔ)器:如果EA引腳接地〔GND〕,全部程序均執(zhí)行外部存儲(chǔ)器。在AT89S51,假設(shè)EA接至Vcc〔電源+〕,程序首先執(zhí)行地址從0000H-0FFFH〔4KB〕內(nèi)部程序存儲(chǔ)器,再執(zhí)行地址為1000H-FFFFH〔60KB〕的外部程序存儲(chǔ)器?!?shù)據(jù)存儲(chǔ)器:AT89S52的具128字節(jié)的內(nèi)部RAM,這128字節(jié)可利用直接或間接尋址方式訪問(wèn),堆棧操作可利用間接尋址方式進(jìn)行,128字節(jié)均可設(shè)置為堆棧區(qū)空間。4.4晶體振蕩器特性AT89S52一個(gè)用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個(gè)放大器與作為反應(yīng)元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器。外接石英晶體〔或陶瓷諧振器〕及電容Cl、C2接在放大器的反應(yīng)回路構(gòu)成并聯(lián)振蕩電路。對(duì)外接電容Cl、C2雖然沒(méi)十分嚴(yán)格的要求,但電容容量的大小會(huì)輕微影響振蕩頻率的上下、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性。如果使用石英晶體,我們推薦電容使用30pF±10pF,而如使用陶瓷諧振器建議選擇40pF±10pF。用戶也可以采用外部時(shí)鐘。這種情況下,外部時(shí)鐘脈沖接到XTAL1端,即內(nèi)部時(shí)鐘發(fā)生器的輸入端,XTAL2那么懸空。由于外部時(shí)鐘信號(hào)是通過(guò)一個(gè)2分頻觸發(fā)器后作為內(nèi)部時(shí)鐘信號(hào)的,所以對(duì)外部時(shí)鐘信號(hào)的占空比沒(méi)有特殊要求,但最小高電平持續(xù)時(shí)間和最大的低電平持續(xù)時(shí)間應(yīng)符合產(chǎn)品技術(shù)條件的要求。五、課程設(shè)計(jì)目的1.制作基于AT89S52單片機(jī)控制步進(jìn)電機(jī)延時(shí)軌道。2.通過(guò)本次課程設(shè)計(jì)加深對(duì)單片機(jī)課程的全面認(rèn)識(shí)和掌握。3.鍛煉通過(guò)自學(xué)與自己探索的方式解決問(wèn)題的能力。4.通過(guò)此次課程設(shè)計(jì)將單片機(jī)軟硬件結(jié)合起來(lái)對(duì)程序進(jìn)行編輯,校驗(yàn),鍛煉實(shí)踐能力和理論聯(lián)系實(shí)際的能力。5.鍛煉團(tuán)隊(duì)分工合作與協(xié)調(diào)能力。六、系統(tǒng)功能本設(shè)計(jì)采用單片機(jī)AT89S52來(lái)作為整個(gè)步進(jìn)電機(jī)控制系統(tǒng)的運(yùn)動(dòng)控制核心部件,采用了電機(jī)驅(qū)動(dòng)及其外圍電路構(gòu)成了整個(gè)系統(tǒng)的驅(qū)動(dòng)局部,再加上作為執(zhí)行部件的步進(jìn)電機(jī)來(lái)構(gòu)成了一個(gè)根本的步進(jìn)電機(jī)控制系統(tǒng)。系統(tǒng)的具體功能和要求如下:1.單片機(jī)最小系統(tǒng)板的設(shè)計(jì);2.實(shí)現(xiàn)步進(jìn)電機(jī)的啟動(dòng)、停止、正轉(zhuǎn)、反轉(zhuǎn)控制;3.驅(qū)動(dòng)電路可提供電壓為12V,電流為0.3A的驅(qū)動(dòng)信號(hào);4.步進(jìn)電機(jī)的運(yùn)行時(shí)間由LCD液晶顯示;5.鍵盤掃描電路的設(shè)計(jì)七、硬件設(shè)計(jì)思想和電路原理圖7.1系統(tǒng)總體設(shè)計(jì)與框圖獨(dú)立按鍵模塊電機(jī)驅(qū)動(dòng)模塊AT89S52獨(dú)立按鍵模塊電機(jī)驅(qū)動(dòng)模塊AT89S52步進(jìn)電機(jī)5V穩(wěn)壓模塊LCD顯示模塊5V穩(wěn)壓模塊LCD顯示模塊圖四設(shè)計(jì)框圖電路系統(tǒng)結(jié)構(gòu)如下圖,系統(tǒng)選用AT89S52單片機(jī)為控制核心,外部擴(kuò)展1602驅(qū)動(dòng)芯片用以實(shí)現(xiàn)時(shí)間顯示功能,電機(jī)驅(qū)動(dòng)模塊控制步進(jìn)電機(jī)運(yùn)行,設(shè)獨(dú)立按鍵方便操作和控制。單片機(jī)最小系統(tǒng)作為整個(gè)系統(tǒng)的控制核心,它主要負(fù)責(zé)產(chǎn)生控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的脈沖,通過(guò)單片機(jī)的軟件編程代替環(huán)形脈沖分配器輸出控制步進(jìn)電機(jī)的脈沖信號(hào),步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的角度大小與單片機(jī)輸出的脈沖數(shù)成正比步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的速度與輸出的脈沖頻率成正比,而步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的的方向與輸出的脈沖順序有關(guān)。單片機(jī)將會(huì)把電機(jī)運(yùn)行時(shí)間通過(guò)LCD顯示出來(lái)。電機(jī)驅(qū)動(dòng)模塊負(fù)責(zé)將單片機(jī)發(fā)給步進(jìn)電機(jī)的信號(hào)功率放大,從而驅(qū)動(dòng)電機(jī)工作。獨(dú)立按鍵作為一個(gè)外部中斷源,和單片機(jī)端口連接,通過(guò)它設(shè)置了電機(jī)的正轉(zhuǎn),反轉(zhuǎn)。采用了中斷和查詢相結(jié)合的方法來(lái)調(diào)用中斷效勞程序,完成了對(duì)步進(jìn)電機(jī)的最正確的及時(shí)的控制。7.2實(shí)際電路圖7.2.1電源電路:MIC29302是我們最常用到的穩(wěn)壓芯片了,它的使用方便,用很簡(jiǎn)單的電路即可以輸入一個(gè)直流穩(wěn)壓電源,它的輸出電壓為可調(diào)輸出可調(diào)電壓1.25V-26V,性能比擬穩(wěn)定。穩(wěn)壓電路為輸入12V,電路輸出5V。單片機(jī)最小系統(tǒng)設(shè)計(jì)采用AT89S51單片機(jī)構(gòu)成了控制系統(tǒng)的核心,其根本模塊就主要包括復(fù)位電路和晶體震蕩電路。在本設(shè)計(jì)當(dāng)中,單片機(jī)的P0口、P1口、P2口、P3口全部參與系統(tǒng)工作,單片機(jī)最小系統(tǒng)的接線如下圖:R2上拉電阻:因?yàn)锳T89系列單片機(jī)P0口內(nèi)部沒(méi)有集成上拉電阻,內(nèi)部是漏極開(kāi)路型〔作I/O口用時(shí)〕。所以它叫做準(zhǔn)雙向口而不叫雙向口。如果你想讓它輸出高電平的話,必須要通過(guò)上拉電阻接VCC。提高P0口的驅(qū)動(dòng)能力。單片機(jī)時(shí)鐘電路:?jiǎn)纹瑱C(jī)復(fù)位電路:7.2.3按鍵調(diào)節(jié)局部:通過(guò)按鍵來(lái)調(diào)節(jié)單片機(jī),進(jìn)而控制導(dǎo)軌運(yùn)動(dòng)。7.2.4LCD顯示局部:通過(guò)單片機(jī)控制導(dǎo)軌,LCD顯示時(shí)間信息。八、系統(tǒng)軟件設(shè)計(jì)8.1程序流程設(shè)計(jì)本系統(tǒng)的軟件設(shè)計(jì)主要分為系統(tǒng)初始化、延時(shí)子程序、按鍵響應(yīng)程序,LCD管顯示程序,控制脈沖輸出幾局部,事實(shí)上每一局部都是緊密相關(guān)的,每個(gè)功能模塊對(duì)于整體設(shè)計(jì)都是非常重要,單片機(jī)AT89S52通過(guò)軟件編程才能使系統(tǒng)真正的運(yùn)行起來(lái),軟件設(shè)計(jì)的好壞也直接決定了系統(tǒng)的運(yùn)行質(zhì)量。程序流程圖的設(shè)計(jì)遵循自頂向下的原那么,即從主體遂逐步細(xì)分到每一個(gè)模塊的流程。開(kāi)始程序初始化程序初始化串口是否傳送數(shù)據(jù)否是調(diào)用子程序結(jié)束結(jié)束圖五程序主流程圖開(kāi)始電機(jī)是否工作電機(jī)是否工作否是正反轉(zhuǎn)正反轉(zhuǎn)反正處理電機(jī)處理電機(jī)處理電機(jī)顯示時(shí)間顯示時(shí)間顯示時(shí)間是否停機(jī)是否停機(jī)是否停機(jī)否否是是停止圖六電機(jī)驅(qū)動(dòng)程序流程圖8.2軟件設(shè)計(jì)根據(jù)要求,可以將程序分為以下幾個(gè)部份:鍵盤輸入程序設(shè)計(jì)本系統(tǒng)使用的鍵盤較少,因此采用獨(dú)立式鍵盤接口設(shè)計(jì)。獨(dú)立式鍵盤適用于按鍵數(shù)量較少的場(chǎng)合。獨(dú)立鍵盤工作原理:通過(guò)上拉電阻接到+5V上。無(wú)按鍵,處于高電平狀態(tài),有鍵按下電平為低。在消除抖動(dòng)影響上是可以采用了軟件消抖方法:在第一次檢測(cè)到有鍵按下時(shí),執(zhí)行一段延時(shí)子程序后〔約5ms〕,再確認(rèn)電平是否仍保持閉合狀態(tài)電平,如果保持閉合狀態(tài)電平,那么確認(rèn)真正有鍵按下,進(jìn)行相應(yīng)處理工作,消除了抖動(dòng)的影響?!?〕步進(jìn)電機(jī)運(yùn)行步數(shù)控制程序此方案采用單相和雙相交差通電處理方式。此方法具有運(yùn)行速度穩(wěn)定,運(yùn)行步數(shù)準(zhǔn)確無(wú)誤等優(yōu)點(diǎn)。九、調(diào)試總結(jié)9.1操作控制:本電路經(jīng)調(diào)試符合題目要求,各項(xiàng)技術(shù)指標(biāo)均到達(dá)設(shè)計(jì)的目的。具體操作控制方法如下:1、當(dāng)電機(jī)啟動(dòng)按鈕時(shí),步進(jìn)電機(jī)根據(jù)制定默認(rèn)狀態(tài)開(kāi)始轉(zhuǎn)動(dòng);2、當(dāng)電機(jī)再停止按鈕時(shí),步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng);3、當(dāng)電機(jī)正反按鈕時(shí),步進(jìn)電機(jī)反轉(zhuǎn);4、當(dāng)電機(jī)再正反按鈕時(shí),步進(jìn)電機(jī)正轉(zhuǎn);5、設(shè)定一定時(shí)間,讓電機(jī)運(yùn)動(dòng)。9.2分析與心得在本次設(shè)計(jì)的過(guò)程中,我們發(fā)現(xiàn)很多的問(wèn)題,給我的感覺(jué)就是很難,很不順手,看似很簡(jiǎn)單的電路,要?jiǎng)邮职阉o設(shè)計(jì)出來(lái),是很難的一件事,主要原因是我們沒(méi)有經(jīng)常動(dòng)手設(shè)計(jì)過(guò)電路,還有資料的查找也是一大難題,這就要求我們?cè)谝院蟮膶W(xué)習(xí)中,應(yīng)該注意到這一點(diǎn),更重要的是我們要學(xué)會(huì)把從書本中學(xué)到的知識(shí)和實(shí)際的電路聯(lián)系起來(lái),這不管是對(duì)我們以后就業(yè)還是學(xué)習(xí),都會(huì)起到很大的促進(jìn)和幫助,我相信,通過(guò)這次的課題設(shè)計(jì),在以后的學(xué)習(xí)中我會(huì)更加努力,力爭(zhēng)把這門課學(xué)好,學(xué)精。同時(shí),通過(guò)本次課題設(shè)計(jì),穩(wěn)固了我們學(xué)習(xí)過(guò)的專業(yè)知識(shí),也使我們把理論與實(shí)踐從真正意義上相結(jié)合了起來(lái);考驗(yàn)了我們借助互聯(lián)網(wǎng)絡(luò)搜集、查閱相關(guān)文獻(xiàn)資料和組織材料的綜合能力;從中可以自我測(cè)驗(yàn),認(rèn)識(shí)到自己哪方面有欠缺、缺乏,以便于在日后的學(xué)習(xí)中得以改良、提高;通過(guò)使用Protel99SE軟件、keil軟件也讓我們了解到計(jì)算機(jī)輔助設(shè)計(jì)的智能化,有利于提高工作效率。題目是非常重要的,要選擇一個(gè)好的題目,就要滿足適合我們這組制作,并且也要考慮到自身能力,還有就是容易找到相關(guān)的參考資料等條件。只有符合以上所說(shuō)的條件才能做出一個(gè)好的設(shè)計(jì),所以我們就選擇了《基于AT89s52單片機(jī)的液晶顯示》的設(shè)計(jì)課程。我們查找了大量這方面的相關(guān)參考資料,如《C語(yǔ)言程序設(shè)計(jì)》,《AT89s52原理及應(yīng)用手冊(cè)》等,還查閱了各種所需芯片的管腳資料。在這些參考資料的根底上設(shè)想了幾個(gè)設(shè)計(jì)方案,并且確定了最后的設(shè)計(jì)方案。當(dāng)確定了最終的設(shè)計(jì)方向以后,我們就開(kāi)始著手完善它的理論方案。根據(jù)設(shè)計(jì)方案的內(nèi)容我們畫出了具體的原理圖,進(jìn)行邏輯分析和理論計(jì)算,然后去電子市場(chǎng)根據(jù)設(shè)計(jì)要求購(gòu)置了大量所需的原器件,準(zhǔn)備好了設(shè)計(jì)所需的一切材料。在焊接問(wèn)題上,我們也出了很多問(wèn)題。首先,你必須知道那個(gè)電路版哪幾條線是通的,這樣對(duì)布線和擺放都有好處。再者,焊接的時(shí)候,注意焊錫焊接的邏輯對(duì)不對(duì),這里我們犯了很多錯(cuò)誤,比方說(shuō)2個(gè)觸點(diǎn)本來(lái)是不連的,但是不小心就會(huì)焊接起來(lái),花了我們很多時(shí)間找錯(cuò)誤。最后一定要仔細(xì)地檢查一翻焊點(diǎn),導(dǎo)線以及芯片的管腳的連線,這一點(diǎn)是相當(dāng)重要的!有了這次難忘的經(jīng)歷,我覺(jué)得自己充實(shí)了許多,學(xué)到了很多東西,更重要的是我們學(xué)會(huì)了如何協(xié)同合作,學(xué)會(huì)了遇到問(wèn)題應(yīng)該如何解決。這將在我們以后的學(xué)習(xí)和工作中起著重要的作用。附錄一:參考文獻(xiàn)[1]《AT89s52原理及應(yīng)用手冊(cè)》馬潮詹衛(wèi)前耿德根編清華大學(xué)出版社[2]《C語(yǔ)言程序設(shè)計(jì)》譚浩強(qiáng)編清華大學(xué)出版社[3]《AVR單片機(jī)C語(yǔ)言開(kāi)發(fā)入門指導(dǎo)》沈文Eaglelee詹衛(wèi)前編清華大學(xué)出版社。[4]《AVR單片機(jī)嵌入式系統(tǒng)原理與應(yīng)用實(shí)踐》馬潮編北京航空航天大學(xué)出版社[5]《單片機(jī)原理與接口》李茂奎[6]電子資料AT89s52數(shù)據(jù)手冊(cè)[7]網(wǎng)站資料附錄二:程序#include<REGX51.H>#defineucharunsignedchar#defineuintunsignedint//#define mc400 //400需要的脈沖數(shù)//#definezc14 //周長(zhǎng)unsignedlongintT=0;//一個(gè)脈沖的周期unsignedlongintT2=0,T3=0,T4=0;sbitrs=P0^5; //定義寫指令\數(shù)據(jù)sbitrw=P0^6; // 定義讀\寫端口sbite=P0^7; //定義使能信號(hào)引腳sbitpwm=P0^0;//pwm輸出端sbitfx=P0^1; //控制轉(zhuǎn)的方向sbits0=P1^0; //選擇鍵sbits1=P1^1; //數(shù)+sbits2=P1^2; //數(shù)—sbits3=P1^3; //確認(rèn)鍵sbits4=P1^4; //退出鍵sbits5=P1^5; //反向鍵uintshi=0,fen=0,miao=0,v=0;uintchuzhi=0,count=0,j=0;ucharmm=0,nn=0,aa=0;//"0123456789abcdef"ucharcodetable1[]="yanchidaogui";ucharcodetable2[]="00:00:00"; /*********************延時(shí)函數(shù)******************************/voiddelay(uintz){uintx,y;for(x=z;x>0;x--) for(y=110;y>0;y--);}/************************寫指令***********************/voidwrite_com(ucharcom){ rs=0; //指令 rw=0; // 寫入 e=0; P2=com; delay(5); e=1; //允許 delay(5); e=0;}/*************************寫數(shù)據(jù)********************/voidwrite_date(uchardate){ rs=1; //數(shù)據(jù) rw=0; //寫入 e=0; P2=date; delay(5); e=1; //允許 delay(5); e=0;}/**********************LCD初始化***************/voidinit(){charnum; P0=0XFC; P1=0Xff;write_com(0x38); write_com(0x0c); //顯示控制 write_com(0x01); //清零 write_com(0x06); //地址加1字符不移動(dòng) write_com(0x80); //第一行的地址 for(num=0;num<16;num++) write_date(table1[num]); delay(5);write_com(0xc0); //第二行的地址 for(num=0;num<16;num++) write_date(table2[num]); delay(5);}/****把對(duì)應(yīng)的數(shù)進(jìn)行別離***************/voidwrite_sfm(ucharadd,uchardate){ucharshi,ge; //對(duì)應(yīng)的一個(gè)數(shù)別離開(kāi)來(lái)分別送入對(duì)應(yīng)地址顯示shi=date/10;ge=date%10;write_com(0xc0+add); //第二行的首地址write_date(0x30+shi);//寫數(shù)據(jù)write_date(0x30+ge);}/*********************按鍵處理******************************/voidkeyscan(){ if(s0==0){ delay(5); if(s0==0) { mm++; while(!s0); if(mm==4) { mm=1; } if(mm==1) //調(diào)秒 { write_com(0xc0+10); //第二行 write_com(0x0f); } if(mm==2) //調(diào)分 { write_com(0xc0+7); } if(mm==3) //調(diào)時(shí) { write_com(0xc0+4); } }} if(mm!=0){ if(s1==0) { delay(5); if(s1==0) { while(!s1); if(mm==1) { miao++; if(miao==60) miao=0; write_sfm(10,miao); write_com(0xc0+10);//第二行 } if(mm==2) { fen++; if(fen==60) fen=0; write_sfm(7,fen); write_com(0xc0+7); } if(mm==3) { shi++; if(shi==24) shi=0; write_sfm(4,shi); write_com(0xc0+4); } } } if(s2==0) { delay(10); if(s2==0) { delay(5); while(!s2); if(mm==1) { miao--; if(miao==-1) miao=59; write_sfm(10,miao); write_com(0xc0+10);//第二行 } if(mm==2) { fen--; if(fen==-1) fen=59; write_sfm(7,fen); write_com(0xc0+7); } if(mm==3) { shi--; if(shi==-1) shi=23; write_sfm(4,shi); write_com(0xc0+4); } } } }}/*********************顯示函數(shù)***********************/voidxianshi(){ T2=((unsignedlongint)(shi*60+fen)*60+(unsignedlongint)miao); //原先設(shè)的初值 if(shi!=0||fen!=0||miao!=0||v==0) { T=(((unsignedlongint)(shi*60+fen)*60+(unsignedlongint)miao)*10000)/54+((((unsignedlongint)(shi*60+fen)*60+(unsignedlongint)miao)*10000)%54); //6 //T=((shi*3600+fen*60+miao)*1000-1200)*1000/(3000*2); } if(T>=50000) { chuzhi=10000; //初值定為10ms j=T/10000; //循環(huán)數(shù) } if(T<50000) { chuzhi=T; j=0; } TMOD=0x01;//定時(shí)器0工作方式1 ET0=1; TR0=0; if(T==0) { EA=0; } if(T!=0) { EA=1; TH0=(65536-chuzhi)>>8; TL0=(65536-chuzhi)<<8; } }voidxianshi1(){unsignedcharj; T3=((unsignedlongint)(shi*60+fen)*60+(unsignedlongint)miao); //現(xiàn)在的時(shí)間值 delay(68); j++; if(j=
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版設(shè)備砂石料購(gòu)銷與設(shè)備性能優(yōu)化協(xié)議3篇
- 二零二五年度人事部人才與專家工作辦公室員工福利保障合同3篇
- 二零二五年度圖書館圖書修復(fù)與保護(hù)工程合同
- 個(gè)體物流配送員勞動(dòng)協(xié)議格式(2024年版)一
- 二零二五版木材進(jìn)口關(guān)稅減免申請(qǐng)服務(wù)合同4篇
- 二零二五年度土地利用現(xiàn)狀變更測(cè)量合同
- 二零二五年度城市公共充電樁運(yùn)營(yíng)管理合同4篇
- 二零二五版大數(shù)據(jù)中心項(xiàng)目合作協(xié)議4篇
- 2025年度美容院連鎖加盟區(qū)域代理權(quán)及市場(chǎng)獨(dú)占協(xié)議
- 2025年度企業(yè)培訓(xùn)項(xiàng)目財(cái)務(wù)結(jié)算合同范本4篇
- 2024生態(tài)環(huán)境相關(guān)法律法規(guī)考試試題
- 有砟軌道施工工藝課件
- 兩辦意見(jiàn)八硬措施煤礦安全生產(chǎn)條例宣貫學(xué)習(xí)課件
- 40篇短文搞定高中英語(yǔ)3500單詞
- 人教版高中數(shù)學(xué)必修二《第九章 統(tǒng)計(jì)》同步練習(xí)及答案解析
- 兒科護(hù)理安全警示教育課件
- 三年級(jí)下冊(cè)口算天天100題
- 國(guó)家中英文名稱及代碼縮寫(三位)
- 人員密集場(chǎng)所消防安全培訓(xùn)
- 液晶高壓芯片去保護(hù)方法
- 拜太歲科儀文檔
評(píng)論
0/150
提交評(píng)論