版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 《機(jī)電系統(tǒng)課程設(shè)計(jì)》說(shuō)明書(shū)</p><p> 題目 單片機(jī)控制步進(jìn)電機(jī)正反轉(zhuǎn) </p><p> 年 級(jí) 10 專 業(yè) </p><p> 班 級(jí) 學(xué) 號(hào) </p><p> 學(xué)生姓名
2、 </p><p> 設(shè)計(jì)時(shí)間 2011.11.07~2011.11.25 </p><p> 指導(dǎo)教師 </p><p> 機(jī)械工程學(xué)院機(jī)電工程系</p><p><b> 課程設(shè)計(jì)成績(jī)?cè)u(píng)定</b></p>
3、;<p> 課程名稱: 《機(jī)電系統(tǒng)課程設(shè)計(jì)》 </p><p> 學(xué)生姓名: 班級(jí) YZ02101 學(xué)號(hào): 45 </p><p><b> 答辯記錄表</b></p><p><b> 成績(jī)?cè)u(píng)定表</b></p><p&
4、gt; 《機(jī)電系統(tǒng)》課程設(shè)計(jì)任務(wù)書(shū)</p><p> 姓名 班級(jí) 學(xué)號(hào) </p><p> 設(shè)計(jì)題目 單片機(jī)控制步進(jìn)電機(jī)(軟件設(shè)計(jì)) </p><p><b> 設(shè)計(jì)任務(wù):
5、</b></p><p> (1)開(kāi)始通電時(shí),步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng)。</p><p> ?。?) 單片機(jī)分別接有按鈕開(kāi)關(guān)K1、K2和K3用來(lái)控制步進(jìn)電機(jī)的轉(zhuǎn)向,要求如下:</p><p> ① 當(dāng)按下K1時(shí),步進(jìn)電機(jī)正轉(zhuǎn);</p><p> ?、?當(dāng)按下K2時(shí),步進(jìn)電機(jī)反轉(zhuǎn);</p><p> ③ 當(dāng)按下
6、K3時(shí),步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng)。</p><p> ?。?)正轉(zhuǎn)采用1相激磁方式,反轉(zhuǎn)采用1~2相激磁方式。</p><p><b> 設(shè)計(jì)工作量:</b></p><p><b> ?。?)算法的確定</b></p><p> ?。?)畫(huà)程序工作流程度</p><p><
7、b> ?。?)時(shí)序表的繪制</b></p><p> (4)匯編程序的編寫(xiě)</p><p><b> 指導(dǎo)教師 </b></p><p> 設(shè)計(jì)時(shí)2011年11月7日~2011年11月25日</p><p><b> 目 錄</b></p><
8、p><b> 第1章</b></p><p> 緒論………………………………………………………………5</p><p> 1.1 單片機(jī)的發(fā)展及應(yīng)用</p><p> 1.2 電動(dòng)機(jī)的基礎(chǔ)知識(shí)</p><p> 1.3 匯編語(yǔ)言的介紹及應(yīng)用</p><p> 第2章 硬件電路描述
9、…………………………………………12</p><p> 2.1 確定元器件的型號(hào)</p><p> 2.1.1 AT89C51單片機(jī)</p><p> 2.1.2 ULN2003芯片</p><p><b> 2.2 步進(jìn)電機(jī)</b></p><p> 2.2.1 永磁式步進(jìn)電機(jī)<
10、/p><p> 2.2.2 步進(jìn)電機(jī)原理以及原理圖</p><p> 第3章 程序設(shè)計(jì)………………………………………………16</p><p><b> 3.1 編程</b></p><p><b> 3.2 流程圖</b></p><p><b> 3.3
11、詳細(xì)程序</b></p><p><b> 3.3.1代碼注解</b></p><p><b> 3.3.2程序分析</b></p><p> 致謝……………………………………………………………..22</p><p> 參考文獻(xiàn)………………………………………………………..23
12、</p><p> 附錄……………………………………………………………..24</p><p><b> 第1章 緒論</b></p><p> 1.1單片機(jī)的發(fā)展及應(yīng)用</p><p> 1.1.1單片機(jī)的簡(jiǎn)介</p><p> 單片微型計(jì)算機(jī)簡(jiǎn)稱單片機(jī),是典型的嵌入式微控制器(Mic
13、rocontroller Unit),常用英文字母的縮寫(xiě)MCU表示單片機(jī),它最早是被用在工業(yè)控制領(lǐng)域。單片機(jī)由芯片內(nèi)僅有CPU的專用處理器發(fā)展而來(lái)。最早的設(shè)計(jì)理念是通過(guò)將大量外圍設(shè)備和CPU集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成進(jìn)復(fù)雜的而對(duì)體積要求嚴(yán)格的控制設(shè)備當(dāng)中。INTEL的Z80是最早按照這種思想設(shè)計(jì)出的處理器,從此以后,單片機(jī)和專用處理器的發(fā)展便分道揚(yáng)鑣。 </p><p> 早期的單片機(jī)都是8
14、位或4位的。其中最成功的是INTEL的8031,因?yàn)楹?jiǎn)單可靠而性能不錯(cuò)獲得了很大的好評(píng)。此后在8031上發(fā)展出了MCS51系列單片機(jī)系統(tǒng)?;谶@一系統(tǒng)的單片機(jī)系統(tǒng)直到現(xiàn)在還在廣泛使用。隨著工業(yè)控制領(lǐng)域要求的提高,開(kāi)始出現(xiàn)了16位單片機(jī),但因?yàn)樾詢r(jià)比不理想并未得到很廣泛的應(yīng)用。90年代后隨著消費(fèi)電子產(chǎn)品大發(fā)展,單片機(jī)技術(shù)得到了巨大提高。隨著INTEL i960系列特別是后來(lái)的ARM系列的廣泛應(yīng)用,32位單片機(jī)迅速取代16位單片機(jī)的高端地位
15、,并且進(jìn)入主流市場(chǎng)。而傳統(tǒng)的8位單片機(jī)的性能也得到了飛速提高,處理能力比起80年代提高了數(shù)百倍。目前,高端的32位單片機(jī)主頻已經(jīng)超過(guò)300MHz,性能直追90年代中期的專用處理器,而普通的型號(hào)出廠價(jià)格跌落至1美元,最高端的型號(hào)也只有10美元。當(dāng)代單片機(jī)系統(tǒng)已經(jīng)不再只在裸機(jī)環(huán)境下開(kāi)發(fā)和使用,大量專用的嵌入式操作系統(tǒng)被廣泛應(yīng)用在全系列的單片機(jī)上。而在作為掌上電腦和手機(jī)核心處理的高端單片機(jī)甚至可以直接使用專用的Windows和Linux操作系
16、統(tǒng)。 </p><p> 單片機(jī)比專用處理器更適合應(yīng)用于嵌入式系統(tǒng),因此它得到了最多的應(yīng)用。事實(shí)上單片機(jī)是世界上數(shù)量最多的計(jì)算機(jī)?,F(xiàn)代人類生活中所用的幾乎每件電子和機(jī)械產(chǎn)品中都會(huì)集成有單片機(jī)。手機(jī)、電話、計(jì)算器、家用電器、電子玩具、掌上電腦以及鼠標(biāo)等電腦配件中都配有1-2部單片機(jī)。而個(gè)人電腦中也會(huì)有為數(shù)不少的單片機(jī)在工作。汽車上一般配備40多部單片機(jī),復(fù)雜的工業(yè)控制系統(tǒng)上甚至可能有數(shù)百臺(tái)單片機(jī)在同時(shí)工作!單片機(jī)
17、的數(shù)量不僅遠(yuǎn)超過(guò)PC機(jī)和其他計(jì)算的總和,甚至比人類的數(shù)量還要多。 </p><p> 單片機(jī)又稱單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。相當(dāng)于一個(gè)微型的計(jì)算機(jī),和計(jì)算機(jī)相比,單片機(jī)只缺少了I/O設(shè)備。概括的講:一塊芯片就成了一臺(tái)計(jì)算機(jī)。它的體積小、質(zhì)量輕、價(jià)格便宜、為學(xué)習(xí)、應(yīng)用和開(kāi)發(fā)提供了便利條件。同時(shí),學(xué)習(xí)使用單片機(jī)是了解計(jì)算機(jī)原理與結(jié)構(gòu)的最佳選擇。 </p&
18、gt;<p> 單片機(jī)內(nèi)部也用和電腦功能類似的模塊,比如CPU,內(nèi)存,并行總線,還有和硬盤作用相同的存儲(chǔ)器件,不同的是它的這些部件性能都相對(duì)我們的家用電腦弱很多,不過(guò)價(jià)錢也是低的,一般不超過(guò)10元即可......用它來(lái)做一些控制電器一類不是很復(fù)雜的工作足矣了。我們現(xiàn)在用的全自動(dòng)滾筒洗衣機(jī)、排煙罩、VCD等等的家電里面都可以看到它的身影!......它主要是作為控制部分的核心部件。 </p><p>
19、; 它是一種在線式實(shí)時(shí)控制計(jì)算機(jī),在線式就是現(xiàn)場(chǎng)控制,需要的是有較強(qiáng)的抗干擾能力,較低的成本,這也是和離線式計(jì)算機(jī)的(比如家用PC)的主要區(qū)別。 </p><p> 單片機(jī)是靠程序運(yùn)行的,并且可以修改。通過(guò)不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的獨(dú)特的一些功能,這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的。一個(gè)不是很復(fù)雜的功能要是用美國(guó)50年代開(kāi)發(fā)的74系列,或者60年代的CD4000系列
20、這些純硬件來(lái)搞定的話,電路一定是一塊大PCB板!但是如果要是用美國(guó)70年代成功投放市場(chǎng)的系列單片機(jī),結(jié)果就會(huì)有天壤之別!只因?yàn)閱纹瑱C(jī)的通過(guò)你編寫(xiě)的程序可以實(shí)現(xiàn)高智能,高效率,以及高可靠性! </p><p> 由于單片機(jī)對(duì)成本是敏感的,所以目前占統(tǒng)治地位的軟件還是最低級(jí)匯編語(yǔ)言,它是除了二進(jìn)制機(jī)器碼以上最低級(jí)的語(yǔ)言了,既然這么低級(jí)為什么還要用呢?很多高級(jí)的語(yǔ)言已經(jīng)達(dá)到了可視化編程的水平為什么不用呢?原因很簡(jiǎn)單,
21、就是單片機(jī)沒(méi)有家用計(jì)算機(jī)那樣的CPU,也沒(méi)有像硬盤那樣的海量存儲(chǔ)設(shè)備。一個(gè)可視化高級(jí)語(yǔ)言編寫(xiě)的小程序里面即使只有一個(gè)按鈕,也會(huì)達(dá)到幾十K的尺寸!對(duì)于家用PC的硬盤來(lái)講沒(méi)什么,可是對(duì)于單片機(jī)來(lái)講是不能接受的。 單片機(jī)在硬件資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計(jì)算機(jī)上的操作系統(tǒng)和應(yīng)用軟件拿到家用PC上來(lái)運(yùn)行,家用PC的也是承受不了的。 </p><p> 可以說(shuō),二
22、十世紀(jì)跨越了三個(gè)“電”的時(shí)代,即電氣時(shí)代、電子時(shí)代和現(xiàn)已進(jìn)入的電腦時(shí)代。不過(guò),這種電腦,通常是指?jìng)€(gè)人計(jì)算機(jī),簡(jiǎn)稱PC機(jī)。它由主機(jī)、鍵盤、顯示器等組成。還有一類計(jì)算機(jī),大多數(shù)人卻不怎么熟悉。這種計(jì)算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)(亦稱微控制器)。顧名思義,這種計(jì)算機(jī)的最小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡(jiǎn)單運(yùn)算和控制。因?yàn)樗w積小,通常都藏在被控機(jī)械的“肚子”里。它在整個(gè)裝置中,起著有如人類頭腦的作用,它出了毛病,整個(gè)裝置就癱瘓了?,F(xiàn)在
23、,這種單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實(shí)時(shí)工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。各種產(chǎn)品一旦用上了單片機(jī),就能起到使產(chǎn)品升級(jí)換代的功效,常在產(chǎn)品名稱前冠以形容詞——“智能型”,如智能型洗衣機(jī)等?,F(xiàn)在有些工廠的技術(shù)人員或其它業(yè)余電子開(kāi)發(fā)者搞出來(lái)的某些產(chǎn)品,不是電路太復(fù)雜,就是功能太簡(jiǎn)單且極易被仿制。究其原因,可能就卡在產(chǎn)品未使用單片機(jī)或其它可編程邏輯器件上。</p><p> 1.1.2單片機(jī)的應(yīng)用<
24、;/p><p> 目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒(méi)有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過(guò)程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統(tǒng),錄像機(jī)、攝像機(jī)、全自動(dòng)洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開(kāi)單片機(jī)。更不用說(shuō)自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械以及各種智能機(jī)械了。因此,單片機(jī)的學(xué)習(xí)
25、、開(kāi)發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。 </p><p> 單片機(jī)廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過(guò)程控制等領(lǐng)域</p><p> 1.1.3單片機(jī)的程序語(yǔ)言和軟件</p><p> 1機(jī)器語(yǔ)言(Machine Language)</p><p> 2匯編語(yǔ)言 (Ass
26、emble)</p><p> 3高級(jí)語(yǔ)言 (High Level Language)</p><p><b> 機(jī)器語(yǔ)言:</b></p><p> 單片機(jī)應(yīng)用系統(tǒng)只使用機(jī)器語(yǔ)言(指令的二進(jìn)制代碼,又稱指令代碼)。機(jī)器語(yǔ)言指令組成的程序稱目標(biāo)程序。</p><p> MCS-51兩個(gè)寄存器相加的機(jī)器語(yǔ)言指令:
27、00101000</p><p> 匯編語(yǔ)言: </p><p> 與機(jī)器語(yǔ)言指令一一對(duì)應(yīng)的英文單詞縮寫(xiě),稱為指令助記符。匯編語(yǔ)言編寫(xiě)的程序稱為匯編語(yǔ)言程序。</p><p> MCS-51兩個(gè)寄存器相加匯編語(yǔ)言指令:ADD A,R0</p><p><b> 高級(jí)語(yǔ)言:</b>
28、;</p><p> 高級(jí)語(yǔ)言源程序C-51、C、PL/M51等。</p><p> 簡(jiǎn)單——控制程序不太長(zhǎng)。</p><p> 復(fù)雜——多種多樣的控制對(duì)象,少有現(xiàn)成程序借鑒。</p><p> 簡(jiǎn)單系統(tǒng)——不含管理和開(kāi)發(fā)功能。</p><p> 復(fù)雜系統(tǒng)——實(shí)時(shí)系統(tǒng),需要監(jiān)控系統(tǒng)</p>&l
29、t;p> ?。ㄉ踔翆?shí)時(shí)多任務(wù)操作系統(tǒng))。</p><p> 1.2 電動(dòng)機(jī)的基礎(chǔ)知識(shí)</p><p> 1.2.1 電動(dòng)機(jī)的簡(jiǎn)介</p><p> 電動(dòng)機(jī)(Motors)是把電能轉(zhuǎn)換成機(jī)械能的一種設(shè)備。它是利用通電線圈(也就是定子繞組)產(chǎn)生旋轉(zhuǎn)磁場(chǎng)并作用于轉(zhuǎn)子鼠籠式式閉合鋁框形成磁電動(dòng)力旋轉(zhuǎn)扭矩。電動(dòng)機(jī)按使用電源不同分為直流電動(dòng)機(jī)和交流電動(dòng)機(jī),電力系統(tǒng)中
30、的電動(dòng)機(jī)大部分是交流電機(jī),可以是同步電機(jī)或者是異步電機(jī)(電機(jī)定子磁場(chǎng)轉(zhuǎn)速與轉(zhuǎn)子旋轉(zhuǎn)轉(zhuǎn)速不保持同步速)。電動(dòng)機(jī)主要由定子與轉(zhuǎn)子組成,通電導(dǎo)線在磁場(chǎng)中受力運(yùn)動(dòng)的方向跟電流方向和磁感線(磁場(chǎng)方向)方向有關(guān)。電動(dòng)機(jī)工作原理是磁場(chǎng)對(duì)電流受力的作用,使電動(dòng)機(jī)轉(zhuǎn)動(dòng)。</p><p> 1.2.2 電動(dòng)機(jī)的分類</p><p> 1.按工作電源分類 根據(jù)電動(dòng)機(jī)工作電源的不同,可分為直流電動(dòng)機(jī)和
31、交流電動(dòng)機(jī)。其中交流電動(dòng)機(jī)還分為單相電動(dòng)機(jī)和三相電動(dòng)機(jī)。</p><p> 2.按結(jié)構(gòu)及工作原理分類 電動(dòng)機(jī)按結(jié)構(gòu)及工作原理可分為直流電動(dòng)機(jī),異步電動(dòng)機(jī)和同步電動(dòng)機(jī)。同步電動(dòng)機(jī)還可分為永磁同步電動(dòng)機(jī)、磁阻同步電動(dòng)機(jī)和磁滯同布電動(dòng)機(jī)。異步電動(dòng)機(jī)可分為感應(yīng)電動(dòng)機(jī)和交流換向器電動(dòng)機(jī)。感應(yīng)電動(dòng)機(jī)又分為三相異步電動(dòng)機(jī)、單相異步電動(dòng)機(jī)和罩極異步電動(dòng)機(jī)等。交流換向器電動(dòng)機(jī)又分為單相串勵(lì)電動(dòng)機(jī)、交直流兩用電動(dòng)機(jī)和推斥電
32、動(dòng)機(jī)。</p><p> 3.按啟動(dòng)與運(yùn)行方式分類 電動(dòng)機(jī)按起動(dòng)與運(yùn)行方式可分為電容起動(dòng)式單相異步電動(dòng)機(jī)、電容運(yùn)轉(zhuǎn)式單相異步電動(dòng)機(jī)、電容起動(dòng)運(yùn)轉(zhuǎn)式單相異步電動(dòng)機(jī)和分相式單相異步電動(dòng)機(jī)?! ?lt;/p><p> 1.2 步進(jìn)電機(jī)的分類及應(yīng)用</p><p> 1.2.1 步進(jìn)電機(jī)的分類</p><p> 步進(jìn)電機(jī)是一種感應(yīng)電機(jī),它
33、的工作原理是利用電子電路,將直流電變成分時(shí)供電的,多相時(shí)序控制電流,用這種電流為步進(jìn)電機(jī)供電,步進(jìn)電機(jī)才能正常工作,驅(qū)動(dòng)器就是為步進(jìn)電機(jī)分時(shí)供電的,多相時(shí)序控制器 </p><p> 雖然步進(jìn)電機(jī)已被廣泛地應(yīng)用,但步進(jìn)電機(jī)并不能象普通的直流電機(jī),交流電機(jī)在常規(guī)下使用。它必須由雙環(huán)形脈沖信號(hào)、功率驅(qū)動(dòng)電路等組成控制系統(tǒng)方可使用。因此用好步進(jìn)電機(jī)卻非易事,它涉及到機(jī)械、電機(jī)、電子及計(jì)算機(jī)等許多專業(yè)知識(shí)。 </
34、p><p> 步進(jìn)電機(jī)作為執(zhí)行元件,是機(jī)電一體化的關(guān)鍵產(chǎn)品之一, 廣泛應(yīng)用在各種自動(dòng)化控制系統(tǒng)中。隨著微電子和計(jì)算機(jī)技術(shù)的發(fā)展,步進(jìn)電機(jī)的需求量與日俱增,在各個(gè)國(guó)民經(jīng)濟(jì)領(lǐng)域都有應(yīng)用。 </p><p> 步進(jìn)電機(jī)是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機(jī)構(gòu)。通俗一點(diǎn)講:當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度(即步進(jìn)角)。您可以通過(guò)控制脈沖個(gè)數(shù)來(lái)控制角位移量,
35、從而達(dá)到準(zhǔn)確定位的目的;同時(shí)您可以通過(guò)控制脈沖頻率來(lái)控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。 </p><p> 步進(jìn)電機(jī)分三種:永磁式(PM) ,反應(yīng)式(VR)和混合式(HB)永磁式步進(jìn)一般為兩相,轉(zhuǎn)矩和體積較小,步進(jìn)角一般為7.5度 或15度;反應(yīng)式步進(jìn)一般為三相,可實(shí)現(xiàn)大轉(zhuǎn)矩輸出,步進(jìn)角一般為1.5度,但噪聲和振動(dòng)都很大。在歐美等發(fā)達(dá)國(guó)家80年代已被淘汰;混合式步進(jìn)是指混合了永磁式和反應(yīng)式的優(yōu)點(diǎn)。
36、它又分為兩相和五相:兩相步進(jìn)角一般為1.8度而五相步進(jìn)角一般為 0.72度。這種步進(jìn)電機(jī)的應(yīng)用最為廣泛。 </p><p> 現(xiàn)在比較常用的步進(jìn)電機(jī)包括反應(yīng)式步進(jìn)電機(jī)(VR)、永磁式步進(jìn)電機(jī)(PM)、混合式步進(jìn)電機(jī)(HB)和單相式步進(jìn)電機(jī)等。 </p><p> 永磁式步進(jìn)電機(jī)一般為兩相,轉(zhuǎn)矩和體積較小,步進(jìn)角一般為7.5度 或15度; </p><p> 永
37、磁式步進(jìn)電動(dòng)機(jī)輸出力矩大,動(dòng)態(tài)性能好,但步距角大。 </p><p> 反應(yīng)式步進(jìn)電機(jī)一般為三相,可實(shí)現(xiàn)大轉(zhuǎn)矩輸出,步進(jìn)角一般為1.5度,但噪聲和振動(dòng)都很大。反應(yīng)式步進(jìn)電機(jī)的轉(zhuǎn)子磁路由軟磁材料制成,定子上有多相勵(lì)磁繞組,利用磁導(dǎo)的變化產(chǎn)生轉(zhuǎn)矩。 </p><p> 反應(yīng)式步進(jìn)電動(dòng)機(jī)結(jié)構(gòu)簡(jiǎn)單,生產(chǎn)成本低,步距角小,但動(dòng)態(tài)性能差。 </p><p> 混合式步進(jìn)電
38、動(dòng)機(jī)綜合了反應(yīng)式、永磁式步進(jìn)電動(dòng)機(jī)兩者的優(yōu)點(diǎn),它的步距角小,出力大,動(dòng)態(tài)性能好,是目前性能最高的步進(jìn)電動(dòng)機(jī)。它有時(shí)也稱作永磁感應(yīng)子式步進(jìn)電動(dòng)機(jī)。它又分為兩相和五相:兩相步進(jìn)角一般為1.8度而五相步進(jìn)角一般為 0.72度。這種步進(jìn)電機(jī)的應(yīng)用最為廣泛。</p><p> 1.2.2 步進(jìn)電動(dòng)機(jī)的應(yīng)用</p><p> 步進(jìn)電動(dòng)機(jī)多用于數(shù)控車床和機(jī)器人系統(tǒng)中。在現(xiàn)代工業(yè),特別是航空、航天、電
39、子等領(lǐng)域中,要求完成的工作量大,任務(wù)復(fù)雜,精度高,利用人工操作不僅勞動(dòng)強(qiáng)度大,生產(chǎn)效率低,且難以達(dá)到所要求的精度,還有一些工作環(huán)境是對(duì)人體健康有害的或人類無(wú)法到達(dá)的,這就需要數(shù)控機(jī)床和機(jī)器人來(lái)完成這些工作。另外,在計(jì)算機(jī)外設(shè)和辦公室自動(dòng)化設(shè)備中也大量運(yùn)用步進(jìn)電機(jī),如磁盤驅(qū)動(dòng)、打印機(jī)、繪圖儀和復(fù)印機(jī)等</p><p> 1.3匯編語(yǔ)言簡(jiǎn)介及應(yīng)用</p><p> 1.3.1匯編語(yǔ)言簡(jiǎn)介&
40、lt;/p><p> 匯編語(yǔ)言是一種功能很強(qiáng)的程序設(shè)計(jì)語(yǔ)言,也是利用計(jì)算機(jī)所有硬件特性并能直接控制硬件的語(yǔ)言。匯編語(yǔ)言,作為一門語(yǔ) </p><p><b> 匯編語(yǔ)言</b></p><p> 言,對(duì)應(yīng)于高級(jí)語(yǔ)言的編譯器,需要一個(gè)“匯編器”來(lái)把匯編語(yǔ)言原文件匯編成機(jī)器可執(zhí)行的代碼。高級(jí)的匯編器如MASM,TASM等等為我們寫(xiě)匯編程序提供了很
41、多類似于高級(jí)語(yǔ)言的特征,比如結(jié)構(gòu)化、抽象等。在這樣的環(huán)境中編寫(xiě)的匯編程序,有很大一部分是面向匯編器的偽指令,已經(jīng)類同于高級(jí)語(yǔ)言?,F(xiàn)在的匯編環(huán)境已經(jīng)如此高級(jí),即使全部用匯編語(yǔ)言來(lái)編寫(xiě)windows的應(yīng)用程序也是可行的,但這不是匯編語(yǔ)言的長(zhǎng)處。匯編語(yǔ)言的長(zhǎng)處在于編寫(xiě)高效且需要對(duì)機(jī)器硬件精確控制的程序。</p><p><b> 循環(huán)組織方式</b></p><p>
42、1.3.2匯編語(yǔ)言應(yīng)用</p><p> 匯編語(yǔ)言作為最基本的編程語(yǔ)言之一,匯編語(yǔ)言雖然應(yīng)用的范圍不算很廣,但重要性卻勿庸置疑,因?yàn)樗軌蛲瓿稍S多其它 </p><p> 語(yǔ)言所無(wú)法完成的功能。就拿Linux內(nèi)核來(lái)講,雖然絕大部分代碼是用C語(yǔ)言編寫(xiě)的,但仍然不可避免地在某些關(guān)鍵地方使用了匯編代碼,其中主要是在Linux的啟動(dòng)部分。由于這部分代碼與硬件的關(guān)系非常密切,即使是C語(yǔ)言也會(huì)有些
43、力不從心,而匯編語(yǔ)言則能夠很好揚(yáng)長(zhǎng)避短,最大限度地發(fā)揮硬件的性能。 </p><p> 1.70%以上的系統(tǒng)軟件是用匯編語(yǔ)言編寫(xiě)的。 </p><p> 2.某些快速處理、位處理、訪問(wèn)硬件設(shè)備等高效程序是用匯編語(yǔ)言編寫(xiě)的。 </p><p> 3.某些高級(jí)繪圖程序、視頻游戲程序是用匯編語(yǔ)言編寫(xiě)的。 </p><p> 匯編語(yǔ)言是理解整
44、個(gè)計(jì)算機(jī)系統(tǒng)的最佳起點(diǎn)和最有效途徑,人們經(jīng)常認(rèn)為匯編語(yǔ)言的應(yīng)用范圍很小,而忽視它的重要性。其實(shí)匯編語(yǔ)言對(duì)每一個(gè)希望學(xué)習(xí)計(jì)算機(jī)科學(xué)與技術(shù)的人來(lái)說(shuō)都是非常重要的,是不能不學(xué)習(xí)的語(yǔ)言。所有可編程計(jì)算機(jī)都向人們提供機(jī)器指令,通過(guò)機(jī)器指令人們能夠使用機(jī)器的邏輯功能。所有程序,不論用何種語(yǔ)言編制,都必須轉(zhuǎn)成機(jī)器指令,運(yùn)用機(jī)器的邏輯功能,其功能才能得以實(shí)現(xiàn)。機(jī)器的邏輯功能,軟件系統(tǒng)功能構(gòu)筑其上,硬件系統(tǒng)功能運(yùn)行于下。匯編語(yǔ)言直接描述機(jī)器指令,比機(jī)器指
45、令容易記憶和理解。通過(guò)學(xué)習(xí)和使用匯編語(yǔ)言,能夠感知、體會(huì)、理解機(jī)器的邏輯功能,向上為理解各種軟件系統(tǒng)的原理,打下技術(shù)理論基礎(chǔ);向下為掌握硬件系統(tǒng)的原理,打下實(shí)踐應(yīng)用基礎(chǔ)。學(xué)習(xí)匯編語(yǔ)言,向上可以理解軟件,向下能夠感知硬件,是我們理解整個(gè)計(jì)算機(jī)系統(tǒng)的最佳起點(diǎn)。</p><p> 第2章 硬件電路描述</p><p> 2.1確定元器件的型號(hào)</p><p> 2.
46、1.1 AT89C51 單片機(jī)</p><p> AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯
47、片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且廉價(jià)的方案。</p><p> 圖2.1 AT89C51單片機(jī)</p><p> 2.1.2 ULN2003芯片</p><p> 單片機(jī)的輸出電流太小,不能直接連接步進(jìn)電機(jī),需要加驅(qū)動(dòng)電路。對(duì)于電流小于0.5
48、A的步進(jìn)電機(jī),可以采用ULN2003類的驅(qū)動(dòng)IC.</p><p> 如圖2.2所示為ULN2003系列驅(qū)動(dòng)器引腳圖,圖左邊1-7引腳為輸入端,接單片機(jī)輸入端,引腳8接地;右側(cè)10-16引腳為輸入端,接步進(jìn)電機(jī),引腳9接電源+5V,該驅(qū)動(dòng)器可提供最高0.5A的電流。</p><p> 圖2.2 ULN2003</p><p><b> 2.2 步進(jìn)電
49、機(jī)</b></p><p> 2.2.1 永磁式步進(jìn)電機(jī)</p><p> 選取35BY48S03型步進(jìn)電機(jī),內(nèi)部接線圖如下:</p><p> 從圖2.4中可以看出,電機(jī)共有四組線圈,四組線圈的一個(gè)端點(diǎn)連在一起引出,這樣一共有5根引出線。要使用步進(jìn)電機(jī)轉(zhuǎn)動(dòng),只要輪流給各引出端通電即可。將COM端標(biāo)識(shí)為C,只要AC、C、BC、
50、 C,輪流加電就能驅(qū)動(dòng)步進(jìn)電機(jī)運(yùn)轉(zhuǎn),加電的方式可以有多種,如果將COM端接正電源,那么只要用開(kāi)關(guān)元件(如三極管),將A、 、B、 輪流接地。</p><p> 圖2.4 永磁型步進(jìn)電機(jī)結(jié)構(gòu)原理圖</p>
51、;<p> 2.2.2 步進(jìn)電機(jī)原理以及原理圖 </p><p> 圖2.2所示。K1、K2和K3按鈕開(kāi)關(guān)分別接在單片機(jī)的P3.2~P3.4</p><p> 引腳上,作為控制信號(hào)的輸入端,輸入端直接采用ULN2003驅(qū)動(dòng)電路控制步進(jìn)電機(jī)的轉(zhuǎn)向。</p><p> 圖2.2 ULN2003</p><p><b&g
52、t; 第3章 程序設(shè)計(jì)</b></p><p><b> 設(shè)計(jì)目的</b></p><p> 本程序通過(guò)K1、K2和K3三個(gè)按鈕開(kāi)關(guān)控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng)和改變轉(zhuǎn)向,電動(dòng)機(jī)使用1-2相激磁,我將通過(guò)匯編語(yǔ)言,編寫(xiě)程序以實(shí)現(xiàn)步進(jìn)電機(jī)的實(shí)驗(yàn)?zāi)康模幊虝r(shí)采用制表的方法。正轉(zhuǎn)和反轉(zhuǎn)的脈沖信號(hào)頻率是相通的故,正轉(zhuǎn)使用1相激磁法,但由于使用激磁方式不一樣,反轉(zhuǎn)使用了
53、1-2相激磁法,故反轉(zhuǎn)速度為正轉(zhuǎn)的一半。從而來(lái)控制步進(jìn)電機(jī)接受一定的脈沖信號(hào),實(shí)現(xiàn)連續(xù)的正轉(zhuǎn)或反轉(zhuǎn)運(yùn)動(dòng)。</p><p><b> 編程的步驟</b></p><p><b> ?。ㄒ唬┓治鰡?wèn)題 </b></p><p><b> ?。ǘ┐_定算法</b></p><p>
54、 (三)畫(huà)程序流程圖 </p><p><b> ?。ㄋ模┚帉?xiě)程序 </b></p><p><b> ?。ㄎ澹┥蠙C(jī)調(diào)試 </b></p><p><b> 3.1 編程</b></p><p> 編程采用制表的方法,步進(jìn)電機(jī)正轉(zhuǎn)采用1相激磁方式,時(shí)序如表所示</p&
55、gt;<p> 表3-1 1相激磁方式正轉(zhuǎn)時(shí)序</p><p> 步進(jìn)電機(jī)反轉(zhuǎn)采用1-2相激磁方式,時(shí)序如表</p><p> 表3-2 1-2相激磁反轉(zhuǎn)時(shí)序</p><p><b> 3.2 流程圖</b></p><p> 匯編語(yǔ)言程序具有4種結(jié)構(gòu)形式,即順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和子程序結(jié)
56、構(gòu)。 根據(jù)本次設(shè)計(jì)課題,選用分支結(jié)構(gòu): 程序分支是通過(guò)條件轉(zhuǎn)移指令實(shí)現(xiàn)的,即根據(jù)條件對(duì)程序的執(zhí)行進(jìn)行判斷,滿足條件則進(jìn)行程序轉(zhuǎn)移,不滿足條件就順序執(zhí)行程序。程序設(shè)計(jì)流程如圖所示:</p><p><b> 3.3 詳細(xì)程序</b></p><p> 01 K1 EQU P3.2 ;設(shè)定P3.2以K1表示&
57、lt;/p><p> 02 K2 EQU P3.3 ;設(shè)定P3.3以K2表示</p><p> 03 K3 EQU P3.4 ;設(shè)定P3.4以K3表示</p><p><b> 04 </b></p><p> 05
58、 STOP: MOV P0,#OFFH ;步進(jìn)電機(jī)停止</p><p> 06 LOOP: JNB K1,Z_M2 ;是否按K1,是則正傳</p><p> 07 JNB K2,F_M2 ;是否按K2,是則反轉(zhuǎn)</p><p> 08
59、 JNB K3,STOP1 ;是否按K3,是則停止</p><p> 09 JMP LOOP ;跳轉(zhuǎn)至LOOP處</p><p><b> 10</b></p><p> 11 STOP1: ACALL DELAY
60、 ;按K3的消除抖動(dòng)</p><p> 12 JNB K3,$ ;K3放開(kāi)否</p><p> 13 ACALL DELAY ;放開(kāi)消除抖動(dòng)</p><p> 14 JMP STOP ;電機(jī)
61、停止</p><p><b> 15</b></p><p> 16 Z_M2: ACALL DELAY ;按K1的消除抖動(dòng)</p><p> 17 JNB K1,$ ;K1放開(kāi)否</p><p> 18
62、 ACALL DELAY ;放開(kāi)消除抖動(dòng)</p><p> 19 JMP Z_M ;轉(zhuǎn)至Z_M處</p><p><b> 20</b></p><p> 21 F_M2: ACALL DELAY ;按K2的消
63、除抖動(dòng) </p><p> 22 JNB K2,$ ;K2放開(kāi)否</p><p> 23 ACALL DELAY ;放開(kāi)消除抖動(dòng)</p><p> 24 JMP F_M ;轉(zhuǎn)至F_M處,循環(huán)<
64、/p><p> 25 ;正轉(zhuǎn)子程序 </p><p> 26 Z_M: MOV R0,#00H ;正轉(zhuǎn)到TABLE取碼指針初值</p><p> 27 Z_M1: MOV A,R0 ;到TABLE取碼</p><p> 28 MOV
65、 DPTR,#TABLE ;存表</p><p> 29 MOVC A,@A+DPTR ;取表代碼</p><p> 30 JZ Z_M ;是否取到結(jié)束碼?</p><p> 31 MOV P0,A
66、 ;輸出至P0,正轉(zhuǎn)</p><p> 32 JNB K3,STOP1 ;是否按K3,是則停止運(yùn)轉(zhuǎn) </p><p> 33 JNB K2,F_M2 ;是否按K2,是則反轉(zhuǎn)</p><p> 34 ACALL DE
67、LAY ;步進(jìn)電機(jī)轉(zhuǎn)速</p><p> 35 INC R0 ;取下一個(gè)碼</p><p> 36 JMP Z_M1 ;轉(zhuǎn)至Z_M處,循環(huán)</p><p> 37 RET</p><
68、;p> 38 ;反轉(zhuǎn)子程序</p><p> 39 F_M: MOV R0,#05 ;反轉(zhuǎn)到TABLE取碼指針初值</p><p> 40 F_M1: MOV A,R0 ;到TABLE取碼</p><p> 41 MOV DPTR,#T
69、ABLE ;存表</p><p> 42 MOVC A,@A+DPTR ;取表代碼</p><p> 43 JZ F_M ;是否取到結(jié)束碼?</p><p> 44 MOV P0,A ;
70、輸出至P0,反轉(zhuǎn)</p><p> 45 JNB K3,STOP1 ;是否按K3,是則停止運(yùn)轉(zhuǎn)</p><p> 46 JNB K1,Z_M2 ;是否按K1,是則正轉(zhuǎn)</p><p> 47 ACALL DELAY
71、 ;步進(jìn)電機(jī)轉(zhuǎn)速</p><p> 48 INC R0 ;取下一個(gè)碼</p><p> 49 JMP F_M1 ;轉(zhuǎn)至F_M1處,循環(huán)</p><p> 50 RET</p><p><b>
72、 51</b></p><p> 52 DELAY: MOV R6,#40 ;延時(shí)時(shí)間20ms</p><p> 53 D1: MOV R7,#248</p><p> 54 DJNZ R7,$</p><p> 55
73、 DJNZ R6,D1</p><p> 56 RET</p><p> 57 ;控制碼表</p><p><b> 58 TABLE</b></p><p> 59 DB 0FCH, OF9H, 0F3H, 0F6H ;正轉(zhuǎn)</p&
74、gt;<p> 60 DB 00H ;正轉(zhuǎn)結(jié)束碼</p><p> 61 DB 0F7H, 0F3H, 0FBH, 0F9H ;反轉(zhuǎn)</p><p> 62 DB 0FDH, 0FCH, 0FEH, 0F6H</p>
75、<p> 63 DB 00H ;反轉(zhuǎn)結(jié)束碼</p><p><b> 64</b></p><p> 65 END ;程序結(jié)束</p><p> 3.3.1 代碼注解<
76、;/p><p><b> 主要標(biāo)號(hào)說(shuō)明</b></p><p> LOOP: 按鍵掃描</p><p> STOP1: K3鍵消除抖動(dòng)</p><p> Z_M2: K1鍵消除抖動(dòng)</p><p> F_M2: K2鍵消除抖動(dòng)</p><p> Z_M:
77、 反轉(zhuǎn)子程序</p><p> F_M: 正轉(zhuǎn)子程序</p><p> DELAY: 延時(shí)子程序</p><p> TABLE: 控制碼表</p><p> 3.3.2 程序分析</p><p> 01~03: 將P3.2、P3.3、P3.4引腳分別用K1、K2、K3表示。</p>
78、;<p> 05: 使步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng)。</p><p> 06~09: 對(duì)按鍵掃描。當(dāng)按鍵開(kāi)關(guān)未按下時(shí),相應(yīng)引腳為高電平;當(dāng)開(kāi)關(guān)按下時(shí),相應(yīng)引腳為低電平。所以通過(guò)循環(huán)檢測(cè)按鍵開(kāi)關(guān)所連接的引腳電平的高低,就可以判斷出開(kāi)關(guān)狀態(tài)。</p><p> 11: 按K3時(shí),調(diào)延時(shí)子程序,延時(shí)一小段時(shí)間來(lái)消除按鍵時(shí)的抖動(dòng)。</p><p> 12: 按鍵未
79、開(kāi)放時(shí),程序?qū)⒃诖说却?,只有按鍵開(kāi)放后,程序才會(huì)向下運(yùn)行。</p><p> 13:按鍵放開(kāi)時(shí),調(diào)延時(shí)子程序,延時(shí)一小段時(shí)間來(lái)消除按鍵放開(kāi)時(shí)的抖動(dòng)。</p><p> 14: 當(dāng)確定K3按鍵被按下又被放開(kāi)后,才認(rèn)定是一次有效按鍵,程序?qū)⑻D(zhuǎn)到STOP處,執(zhí)行停機(jī)語(yǔ)句,使電機(jī)停止轉(zhuǎn)動(dòng)。</p><p> 16~19: 與上述11-14行語(yǔ)句原理相同,是對(duì)K1鍵按
80、下和放開(kāi)時(shí)消除抖動(dòng)的處理,并跳轉(zhuǎn)到Z_M處,執(zhí)行正傳子程序。</p><p> 21~24: 對(duì)按K2鍵時(shí)消除抖動(dòng)的處理,并跳轉(zhuǎn)到Z_M處,執(zhí)行反轉(zhuǎn)子程序。</p><p> 26: 正轉(zhuǎn)子程序開(kāi)始,將R0賦值為0,使取表指針指向表TABLE的第一個(gè)碼位置。</p><p> 27: 將R0值送入累加器A。</p><p> 28:
81、將編制的電機(jī)控制碼表TABLE存入特殊寄存器DPTR。</p><p> 29: 從特殊寄存器DPTR中取出第一個(gè)控制碼。</p><p> 30: 檢查是否取到結(jié)束碼,結(jié)束碼為00H。如果取到結(jié)束碼00H,JZ指令會(huì)使程序跳轉(zhuǎn)到標(biāo)號(hào)Z_M處,從第一個(gè)碼開(kāi)始讀?。蝗绻〉降牟皇墙Y(jié)束碼00H,程序向下運(yùn)行。</p><p> 31: 將取到的數(shù)據(jù)由P0端輸出。&
82、lt;/p><p> 32: 檢查是否按K3,是則停止運(yùn)轉(zhuǎn)。</p><p> 33: 檢查是否按K2,是則反轉(zhuǎn)。</p><p> 34: 調(diào)用延時(shí)子程序。此處調(diào)用延時(shí)子程序與前邊調(diào)用的不同,前邊調(diào)用延時(shí)子程序是為了消除按鍵的抖動(dòng)。</p><p> 此處調(diào)用延時(shí)子程序是電機(jī)運(yùn)轉(zhuǎn)兩步之間的間隔時(shí)間,決定電機(jī)的轉(zhuǎn)速,延時(shí)時(shí)間長(zhǎng),送入電機(jī)的
83、脈沖信號(hào)頻率低,電機(jī)轉(zhuǎn)速慢;延時(shí)時(shí)間短,送入電機(jī)的脈沖信號(hào)頻率高,電機(jī)轉(zhuǎn)速快。所以在此處改變延時(shí)時(shí)間就可以改變電機(jī)轉(zhuǎn)速。</p><p> 35: 使R0的值為1,取下一個(gè)碼。</p><p> 36:跳轉(zhuǎn)到Z_M處,開(kāi)始新的循環(huán)。</p><p> 37:正轉(zhuǎn)子程序返回。</p><p> 39~50:反轉(zhuǎn)子程序。其中,第39行語(yǔ)句
84、將R0賦值為5,是為了取碼時(shí)從反轉(zhuǎn)控制碼中第一個(gè)碼開(kāi)始讀取。</p><p> 52~56:延時(shí)子程序,延時(shí)的時(shí)間為20ms。</p><p> 58~63:步進(jìn)電機(jī)激磁信號(hào)編碼表。其中第59行為電機(jī)正轉(zhuǎn)一相激磁碼;第60行為正轉(zhuǎn)結(jié)束碼;第61、62行為反轉(zhuǎn)1-2激磁碼;第63行為反轉(zhuǎn)結(jié)束碼。</p><p><b> 65:程序結(jié)束。</b&
85、gt;</p><p><b> 參考文獻(xiàn)</b></p><p> 《單片機(jī)應(yīng)用技術(shù)》 北京理工大學(xué)出版社 倪志蓮 </p><p> 《單片機(jī)實(shí)訓(xùn)教程》 北京大學(xué)出版社 張營(yíng)輝、貢雪梅</p><p> 《單片機(jī)原理與應(yīng)用設(shè)計(jì)》 電子工業(yè)出版社 張毅剛、彭
86、喜元</p><p> 《基于Proteus的單片機(jī)應(yīng)用技術(shù)》 電子工業(yè)出版社 江世明</p><p> 《51單片機(jī)開(kāi)發(fā)入門與典型實(shí)例》 人民郵電出版社 王守中、聶元銘</p><p> 《開(kāi)發(fā)技術(shù)實(shí)例單片機(jī)》 機(jī)械工業(yè)出版社 張?jiān)?王建軍 </p><p> 《單片機(jī)設(shè)計(jì)案例時(shí)間教程》
87、 北京郵電大學(xué)出版社 王慶利 袁建敏</p><p> 《匯編語(yǔ)言程序設(shè)計(jì)》 清華大學(xué)出版社 王爽</p><p><b> 致謝詞</b></p><p> 在本文完成之際,無(wú)論我的設(shè)計(jì)是否能夠真的投入使用,這里面每一個(gè)控件的繪制,每一行語(yǔ)句的調(diào)試,每一段文本的輸入之中都有我辛勤的汗水。半年的設(shè)計(jì)時(shí)間雖然短暫,我卻
88、從中學(xué)到了很多的東西。我由衷地感謝關(guān)懷、教誨、幫助、支持和鼓勵(lì)我完成學(xué)業(yè)的老師、朋友和親人.。在這次課程設(shè)計(jì)的撰寫(xiě)過(guò)程中,我得到了許多人的幫助。</p><p> 課程設(shè)計(jì)是對(duì)我們知識(shí)運(yùn)用能力的一次全面的考核,也是對(duì)我們進(jìn)行科學(xué)研究基本功的訓(xùn)練,培養(yǎng)我們綜合運(yùn)用所學(xué)知識(shí)獨(dú)立地分析問(wèn)題和解決問(wèn)題的能力,為以后撰寫(xiě)專業(yè)學(xué)術(shù)論文和工作打下良好的基礎(chǔ)。</p><p> 特別感謝我的導(dǎo)師xx老
89、師,三個(gè)星期以來(lái)他在學(xué)習(xí)、科研上一直對(duì)我悉心指導(dǎo),嚴(yán)格要求、熱情鼓勵(lì),為我創(chuàng)造了很多鍛煉提高的機(jī)會(huì)。X老師洞察全局、高屋建瓴,為我的課程設(shè)計(jì)的順利完成指出了很好的方向,老師們淵博的知識(shí)、寬廣無(wú)私的胸懷、夜以繼日的工作態(tài)度、對(duì)事業(yè)的執(zhí)著追求、誨人不倦的教師風(fēng)范和對(duì)問(wèn)題的敏銳觀察力,都將使我畢生受益。</p><p> 在此我謹(jǐn)向我的導(dǎo)師以及在畢業(yè)設(shè)計(jì)過(guò)程中給予我很大幫助的老師、同學(xué)們致以最誠(chéng)摯的謝意!</p
90、><p> 附錄(匯編語(yǔ)言常用指令)</p><p><b> 數(shù)據(jù)傳送指令集 </b></p><p><b> MOV</b></p><p> 功能: 把源操作數(shù)送給目的操作數(shù)</p><p> 語(yǔ)法: MOV 目的操作數(shù),源操作數(shù)</p><
91、p> 格式: MOV r1,r2</p><p><b> MOV r,m</b></p><p><b> MOV m,r</b></p><p> MOV r,data</p><p><b> 位運(yùn)算指令集 </b></p><p>
92、; AND,OR,XOR,NOT,TEST</p><p> 功能: 執(zhí)行BIT與BIT之間的邏輯運(yùn)算</p><p> 語(yǔ)法: AND r/m,r/m/data OR r/m,r/m/data XOR r/m,r/m/data TEST r/m,r/m/data NOT r/m</p><p> 影響標(biāo)志: C,O,P,Z,S(其中C與O兩個(gè)標(biāo)志會(huì)被設(shè)為0
93、) NOT指令不影響任何標(biāo)志位</p><p><b> JMP</b></p><p> 功能: 跳往指定地址執(zhí)行</p><p> 語(yǔ)法: JMP 地址</p><p><b> LOOP</b></p><p><b> 功能: 循環(huán)指令集</
94、b></p><p> 語(yǔ)法: LOOP 地址</p><p><b> LOOPE(Z)</b></p><p> 地址 LOOPNE(Z) 地址</p><p><b> 標(biāo)志位: 無(wú)</b></p><p><b> CALL,RET</
95、b></p><p> 功能: 子程序調(diào)用,返回指令</p><p> 語(yǔ)法: CALL 地址 RET RET n</p><p><b> 標(biāo)志位: 無(wú)</b></p><p> REP,REPE,REPNE</p><p> 功能: 重復(fù)前綴指令集</p><
96、;p> 語(yǔ)法: REP 指令S REPE 指令S REPNE 指令S</p><p> 標(biāo)志位: 依指令S而定</p><p> 5)控制轉(zhuǎn)移指令:用來(lái)控制程序的執(zhí)行流程。 </p><p> 控制轉(zhuǎn)移指令類型 指 令 說(shuō) 明</p><p> 無(wú)條件轉(zhuǎn)移指令 JMP(段間和段內(nèi)轉(zhuǎn)移)</p><p&
97、gt; 條件轉(zhuǎn)移指令 JZ(結(jié)果為0(或相等)則轉(zhuǎn)移)、JS(結(jié)果為負(fù)則轉(zhuǎn)移)、JNS(結(jié)果為正則轉(zhuǎn)移)、JO(溢出則轉(zhuǎn)移)、JNO(不溢出則轉(zhuǎn)移)、JP(奇偶位為1則轉(zhuǎn)移)、JNP(奇偶位為0則轉(zhuǎn)移)</p><p> 循環(huán)指令 LOOP(循環(huán)指令)、LOOPPZ/LOOPE(當(dāng)為0或相等時(shí)循環(huán)指令)、LOOPNZ/LOOPNE(當(dāng)不為0或不相等時(shí)循環(huán)指令)</p><p> 子程
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)--單片機(jī)控制步進(jìn)電機(jī)
- 單片機(jī)課程設(shè)計(jì)-單片機(jī)控制步進(jìn)電機(jī)
- 單片機(jī)-控制步進(jìn)電機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--步進(jìn)電機(jī)控制
- 單片機(jī)課程設(shè)計(jì)報(bào)告——單片機(jī)控制步進(jìn)電機(jī)
- 單片機(jī)課程設(shè)計(jì)---步進(jìn)電機(jī)控制
- 單片機(jī)課程設(shè)計(jì)步進(jìn)電機(jī)控制設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)-步進(jìn)電機(jī)的控制
- 單片機(jī)課程設(shè)計(jì)--步進(jìn)電機(jī)角度控制
- 單片機(jī)課程設(shè)計(jì)---步進(jìn)電機(jī)控制 (2)
- 單片機(jī)課程設(shè)計(jì)——單片機(jī)控制步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--步進(jìn)電機(jī)
- 單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的步進(jìn)電機(jī)控制
- 單片機(jī)課程設(shè)計(jì)-步進(jìn)電機(jī)的控制
- 單片機(jī)課程設(shè)計(jì)---步進(jìn)電機(jī)
- 單片機(jī)課程設(shè)計(jì)報(bào)告--步進(jìn)電機(jī)控制設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)-步進(jìn)電機(jī)
- 基于單片機(jī)的步進(jìn)電機(jī)控制單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--步進(jìn)電機(jī)控制系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)--步進(jìn)電機(jī)控制器
評(píng)論
0/150
提交評(píng)論