步進(jìn)電機(jī)設(shè)計(jì)報(bào)告能力拓展訓(xùn)練(共25頁(yè))_第1頁(yè)
步進(jìn)電機(jī)設(shè)計(jì)報(bào)告能力拓展訓(xùn)練(共25頁(yè))_第2頁(yè)
步進(jìn)電機(jī)設(shè)計(jì)報(bào)告能力拓展訓(xùn)練(共25頁(yè))_第3頁(yè)
步進(jìn)電機(jī)設(shè)計(jì)報(bào)告能力拓展訓(xùn)練(共25頁(yè))_第4頁(yè)
步進(jìn)電機(jī)設(shè)計(jì)報(bào)告能力拓展訓(xùn)練(共25頁(yè))_第5頁(yè)
已閱讀5頁(yè),還剩21頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上課程設(shè)計(jì)任務(wù)書(shū)學(xué)生姓名: 專業(yè)班級(jí): 指導(dǎo)教師: 工作單位: 題 目: 基于電動(dòng)機(jī)的單片機(jī)仿真和C語(yǔ)言開(kāi)發(fā) 初始條件:本課程設(shè)計(jì),要求用使用Proteus仿真軟件進(jìn)行系統(tǒng)設(shè)計(jì)與仿真。 要求完成的主要任務(wù): (包括課程設(shè)計(jì)工作量及其技術(shù)要求,以及說(shuō)明書(shū)撰寫等具體要求)1、課程設(shè)計(jì)工作量:1周內(nèi)完成對(duì)系統(tǒng)的設(shè)計(jì)、仿真。2、技術(shù)要求:1)設(shè)計(jì)一種簡(jiǎn)單的(步進(jìn))電動(dòng)機(jī)(MOTOR)控制模塊,實(shí)現(xiàn)按鍵對(duì)步進(jìn)電機(jī)的啟動(dòng)、轉(zhuǎn)動(dòng)、停止或調(diào)速等控制。要求進(jìn)行電路仿真實(shí)驗(yàn),并使用C語(yǔ)言進(jìn)行程序的開(kāi)發(fā)。 2)要求學(xué)生主動(dòng)思考,自主發(fā)揮,實(shí)現(xiàn)系統(tǒng)的特色功能。3、查閱至少5篇參考文獻(xiàn)。按武漢理

2、工大學(xué)課程設(shè)計(jì)工作規(guī)范要求撰寫設(shè)計(jì)報(bào)告書(shū)。全文用A4紙打印,圖紙應(yīng)符合繪圖規(guī)范。提交報(bào)告的主要內(nèi)容:(使用Proteus 7.5 sp3)1) 題目2) 仿真所完成的主要功能和特色簡(jiǎn)介摘要(特別是自己擴(kuò)展的功能,根據(jù)特色功能評(píng)優(yōu))3) Proteus仿真的基本流程4) 所使用芯片以及引腳功能簡(jiǎn)介(需要提供對(duì)應(yīng)芯片DataSheet的下載鏈接)5) 設(shè)計(jì)方案與工作原理,給出仿真電路圖6) 實(shí)驗(yàn)記錄與結(jié)果分析時(shí)間安排:1) 2012 年 7 月 9 日, 查閱相關(guān)資料,學(xué)習(xí)設(shè)計(jì)原理。2) 2012 年 7 月 1011 日,方案選擇和電路設(shè)計(jì)仿真。3) 2012 年 7 月 12 日, 設(shè)計(jì)說(shuō)明書(shū)

3、撰寫。4) 2012 年 7 月 13 日 , 上交報(bào)告,同時(shí)進(jìn)行答辯。指導(dǎo)教師簽名: 年 月 日系主任(或責(zé)任教師)簽名: 年 月 日目錄1、概論   單片機(jī)集成度高,功能強(qiáng),可靠性高,體積小,功耗低,使用方便,價(jià)格低廉等一系列優(yōu)點(diǎn),目前已經(jīng)滲入到人們工作和生活的方方面面,幾乎無(wú)處不在,無(wú)所不為。單片機(jī)的應(yīng)用領(lǐng)域已經(jīng)從面向工業(yè)控制,通訊,交通,智能儀表等迅速發(fā)展到家用消費(fèi)產(chǎn)品,辦公自動(dòng)化,汽車電子,PC機(jī)外圍一記網(wǎng)絡(luò)通訊等廣大領(lǐng)域。    單片機(jī)有兩種基本結(jié)構(gòu)形式:一種是在通用微型計(jì)算機(jī)中廣泛采用的,將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器合用一個(gè)

4、存儲(chǔ)器空間的結(jié)構(gòu),成為普林斯機(jī)構(gòu)。另一種是將程序存儲(chǔ)器個(gè)數(shù)據(jù)存儲(chǔ)器截然分開(kāi),分別尋址的結(jié)構(gòu),一般需要較大的程序存儲(chǔ)器,目前單片機(jī)以采用程序存儲(chǔ)器截然分開(kāi)的結(jié)構(gòu)多。本課題討論的占空比可調(diào)的信號(hào)發(fā)生器的核心是目前應(yīng)用極為廣泛的51系列單片機(jī)。Proteus是英國(guó)Labcenter electronics公司出版的EDA(該軟件總 代理為廣州風(fēng)標(biāo)電子技術(shù)有限公司)。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。雖 然目前國(guó)內(nèi)推廣剛起步,但已受到單片機(jī)愛(ài)好者、從事單片機(jī)教學(xué)的教師、致力于單片機(jī)開(kāi)發(fā)應(yīng)用的科技工作者的青睞。Proteus是世界

5、上著名的EDA工具 (), 從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是目前世界上唯一將電路仿真軟件、PCB 設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、 AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持 IAR、Keil和MPLAB等多種。Proteus軟件具有其它EDA工具軟件(例:multisim)的功能。這些功能是: 1原理布圖 2PCB

6、自動(dòng)或人工布線 3SPICE電路仿真 革命性的特點(diǎn) 1互動(dòng)的電路仿真 用戶甚至可以實(shí)時(shí)采用諸如RAM,ROM,鍵盤,馬達(dá),LED,LCD,AD/DA,部分SPI器件,部分IIC器件。 2仿真處理器及其外圍電路 可以仿真51系列、AVR、PIC、ARM、等常用主流單片機(jī)。還可以直接在基于原理圖的虛擬原型 上編程,再配合顯示及輸出,能看到運(yùn)行后輸入輸出的效果。配合的虛擬邏輯分析儀、示波器等,Proteus建立了完備的電子設(shè)計(jì)開(kāi)發(fā)環(huán)境。2、設(shè)計(jì)原理和方法2.1設(shè)計(jì)原理 步進(jìn)電機(jī)控制是一個(gè)比較精確的控制,本次選擇用AT89C51單片機(jī)來(lái)控制ULN2003A驅(qū)動(dòng)器來(lái)驅(qū)動(dòng)四相步進(jìn)電機(jī),使步進(jìn)電機(jī)能夠有規(guī)律

7、的進(jìn)行起動(dòng)、正轉(zhuǎn)、反轉(zhuǎn)、設(shè)置、停止等功能,同時(shí)顯示當(dāng)前運(yùn)行狀態(tài)。單片機(jī)采并受到按鍵的控制,通過(guò)掃面按鍵的狀態(tài)來(lái)控制步進(jìn)電機(jī)工作。啟動(dòng)/暫停鍵和控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的啟動(dòng)或暫停,正轉(zhuǎn)/反轉(zhuǎn)鍵控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)方向,八拍/四拍鍵、加速鍵和減速鍵一起控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度。下面是步進(jìn)電機(jī)控制原理框圖: ULN2003A驅(qū)動(dòng)器鍵盤控制AT89C51單片機(jī)步進(jìn)電機(jī) 圖2.1 步進(jìn)電機(jī)控制原理框圖2.2步進(jìn)電機(jī)的工作原理該步進(jìn)電機(jī)為一四相步進(jìn)電機(jī),采用單極性直流電源供電。只要對(duì)步進(jìn)電機(jī)的各相繞組按合適的時(shí)序通電,就能使步進(jìn)電機(jī)步進(jìn)轉(zhuǎn)動(dòng)。圖1是該四相反應(yīng)式步進(jìn)電機(jī)工作原理示意圖。圖1 四相步進(jìn)電機(jī)步進(jìn)示意圖開(kāi)始

8、時(shí),開(kāi)關(guān)SB接通電源,SA、SC、SD斷開(kāi),B相磁極和轉(zhuǎn)子0、3號(hào)齒對(duì)齊,同時(shí),轉(zhuǎn)子的1、4號(hào)齒就和C、D相繞組磁極產(chǎn)生錯(cuò)齒,2、5號(hào)齒就和D、A相繞組磁極產(chǎn)生錯(cuò)齒。當(dāng)開(kāi)關(guān)SC接通電源,SB、SA、SD斷開(kāi)時(shí),由于C相繞組的磁力線和1、4號(hào)齒之間磁力線的作用,使轉(zhuǎn)子轉(zhuǎn)動(dòng),1、4號(hào)齒和C相繞組的磁極對(duì)齊。而0、3號(hào)齒和A、B相繞組產(chǎn)生錯(cuò)齒,2、5號(hào)齒就和A、D相繞組磁極產(chǎn)生錯(cuò)齒。依次類推,A、B、C、D四相繞組輪流供電,則轉(zhuǎn)子會(huì)沿著A、B、C、D方向轉(zhuǎn)動(dòng)當(dāng)開(kāi)關(guān)SC接通電源,SB、SA、SD斷開(kāi)時(shí),由于C相繞組的磁力線和1、4號(hào)齒之間磁力線的作用,使轉(zhuǎn)子轉(zhuǎn)動(dòng),1、4號(hào)齒和C相繞組的磁極對(duì)齊。而0、

9、3號(hào)齒和A、B相繞組產(chǎn)生錯(cuò)齒,2、5號(hào)齒就和A、D相繞組磁極產(chǎn)生錯(cuò)齒。依次類推,A、B、C、D四相繞組輪流供電,則轉(zhuǎn)子會(huì)沿著A、B、C、D方向轉(zhuǎn)動(dòng)。四相步進(jìn)電機(jī)按照通電順序的不同,可分為單四拍、雙四拍、八拍三種工作方式。單四拍與雙四拍的步距角相等,但單四拍的轉(zhuǎn)動(dòng)力矩小。八拍工作方式的步距角是單四拍與雙四拍的一半,因此,八拍工作方式既可以保持較高的轉(zhuǎn)動(dòng)力矩又可以提高控制精度。單四拍、雙四拍與八拍工作方式的電源通電時(shí)序與波形分別如圖2.a、b、c所示:a單四拍 b.雙四拍 c.八拍圖2.步進(jìn)電機(jī)工作時(shí)序波形圖步進(jìn)電機(jī)常用的驅(qū)動(dòng)方式是全電壓驅(qū)動(dòng),即在電機(jī)移步與鎖步時(shí)都加載額定電壓。為了防止電機(jī)過(guò)流及

10、改善驅(qū)動(dòng)特性,需加限流電阻。由于步進(jìn)電機(jī)鎖步時(shí),限流電阻要消耗掉大量的功率,故限流電阻要有較大的功率容量,并且開(kāi)關(guān)管也要有較高的負(fù)載能力。步進(jìn)電機(jī)的另一種驅(qū)動(dòng)方式是高低壓驅(qū)動(dòng),即在電機(jī)移步時(shí),加額定或超過(guò)額定值的電壓,以便在較大的電流驅(qū)動(dòng)下,使電機(jī)快速移步;而在鎖步時(shí),則加低于額定值的電壓,只讓電機(jī)繞組流過(guò)鎖步所需的電流值。這樣,既可以減少限流電阻的功率消耗 ,又可以提高電機(jī)的運(yùn)行速度,但這種驅(qū)動(dòng)方式的電路要復(fù)雜一些。驅(qū)動(dòng)脈沖的分配可以使用硬件方法,即用脈沖分配器實(shí)現(xiàn)?,F(xiàn)在 ,脈沖分配器已經(jīng)標(biāo)準(zhǔn)化、芯片化 ,市場(chǎng)上可以買到。但硬件方法結(jié)構(gòu)復(fù)雜,成本也較高。3、芯片介紹3.1 AT89C51介紹

11、AT89C51是一種帶4K字節(jié)FLASH(FPEROMFlash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱。AT89C51是一種帶2K字節(jié)閃存可編程可擦除的 單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出 管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多提供了一種靈活性高且價(jià)廉的方案。

12、引腳排列如圖3.1所示。圖3.1 AT89C51引腳圖3.2 LM032L介紹LM032L采用標(biāo)準(zhǔn)的14腳接口,其中:第1腳:VSS為地電源第2腳:VDD接5V正電源第3腳:V0為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:R/W為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和RW共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平RW為低電平時(shí)可以寫入數(shù)據(jù)。第6

13、腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。引腳圖如圖3.2所示。圖3.2 LM032L引腳圖4、系統(tǒng)硬件電路設(shè)計(jì)4.1系統(tǒng)硬件電路設(shè)計(jì)圖系統(tǒng)硬件電路原理圖如下圖4.1所示,5個(gè)獨(dú)立按鍵分別與單片機(jī)相連接控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度、方向、啟動(dòng)和停止。當(dāng)有按鍵按下時(shí),鍵盤掃描程序就會(huì)辨認(rèn)出所按下的鍵來(lái)改變步進(jìn)電機(jī)的工作方式。通過(guò)單片機(jī)的P0口連接到LCD032L的數(shù)據(jù)段,顯示步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度、轉(zhuǎn)動(dòng)方向和八拍四拍工作。使用ULN2003A驅(qū)動(dòng)器驅(qū)動(dòng)步進(jìn)電機(jī),接入單片機(jī)的P10P13端口。圖4.1 系統(tǒng)硬件電路設(shè)計(jì)圖4.2系統(tǒng)硬件電路模塊4.

14、2.1鍵盤接口電路小鍵盤如圖4.2.1所示,總共有5個(gè)按鍵。啟動(dòng)/暫停鍵接端口P3.0,控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的啟動(dòng)或暫停。正轉(zhuǎn)/反轉(zhuǎn)鍵接端口P3.1,控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)方向。八拍/四拍鍵接外部中斷,控制步進(jìn)電機(jī)的工作方式。加速鍵和減速鍵分別接外部中斷1和定時(shí)器0,控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度。通過(guò)程序?qū)崟r(shí)掃描鍵盤,并判斷當(dāng)鍵盤被按下后轉(zhuǎn)到鍵盤處理子程序中。圖4.2.1 鍵盤接口電路4.2.2 LCD顯示電路LCD選取的是LM032L為20*2的液晶,與單片機(jī)的連接電路如下。其中VSS、VDD接+5V電源,VEE接地。D0D7接單片機(jī)的P0口。圖4.2.2 顯示部分電路 4.2.3 驅(qū)動(dòng)電路 P1口低四位

15、輸出經(jīng)過(guò)非門接入U(xiǎn)LN2003A驅(qū)動(dòng)器,來(lái)驅(qū)動(dòng)步進(jìn)電機(jī),如下圖4.2.3所示: 圖4.2.3 步進(jìn)電機(jī)驅(qū)動(dòng)電路5、系統(tǒng)軟件仿真5.1 步進(jìn)電機(jī)轉(zhuǎn)速控制仿真按下加速鍵,控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度,直到液晶顯示器顯示SPEED(n/min):040和AL:0.9,這個(gè)過(guò)程中明顯看出步進(jìn)電機(jī)轉(zhuǎn)速逐漸增加,如圖5.1所示 圖5.1.1 同理,按減速鍵的時(shí)候,液晶顯示器SPEED(n/min)顯示的數(shù)字逐漸變小,步進(jìn)電機(jī)轉(zhuǎn)動(dòng)速度也越來(lái)越慢??刂撇竭M(jìn)電機(jī)轉(zhuǎn)動(dòng)速度能很好的實(shí)現(xiàn),符合要求。 當(dāng)然,八拍/四拍鍵是控制步進(jìn)電機(jī)工作方式的,其作用也是控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度。其中八拍工作方式控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的速度,是四拍

16、工作方式的兩倍。當(dāng)在八拍工作方式下,控制加速鍵,使液晶顯示器顯示SPEED(n/min):040和AL:1.8。如圖5.1.2所示 圖5.1.2當(dāng)再次按下八拍/四拍鍵,使步進(jìn)電機(jī)的工作方式為四拍,此時(shí)液晶顯示器顯示SPEED(n/min):020和AL:0.9。如圖5.1.2所示圖5.1.2可以明顯看出,八拍工作方式控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的速度,是四拍工作方式的兩倍。5.2步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)方向仿真 步進(jìn)電機(jī)轉(zhuǎn)動(dòng)方向初始狀態(tài)為順時(shí)針?lè)较?,液晶顯示器顯示STATE:ZZ,如圖5.2.1所示 圖 5.2.1 當(dāng)按下正轉(zhuǎn)/反轉(zhuǎn)鍵的時(shí)候,電動(dòng)機(jī)轉(zhuǎn)動(dòng)方向?yàn)槟鏁r(shí)針?lè)较颍壕э@示器顯示STATE:FZ,如圖5.2.2

17、所示 圖5.2.2 再次按下正轉(zhuǎn)/反轉(zhuǎn)鍵,電動(dòng)機(jī)轉(zhuǎn)動(dòng)方向改為順時(shí)針?lè)较?,從此可以看出,可以很好的控制電?dòng)機(jī)的順時(shí)針和逆時(shí)針轉(zhuǎn)動(dòng),符合設(shè)計(jì)要求。5.3步進(jìn)電機(jī)的啟動(dòng)和停止功能 當(dāng)按下啟動(dòng)/暫停鍵,步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng),且液晶顯示器顯示PAUSE,如下圖5.3所示圖5.3.1當(dāng)再次按下按下啟動(dòng)/暫停鍵,步進(jìn)電機(jī)又接著轉(zhuǎn)動(dòng),液晶顯示器顯示和停止之前的內(nèi)容一樣。如圖5.3.2所示圖5.3.2由此看出,本設(shè)計(jì)可以很好的控制步進(jìn)電機(jī)的啟動(dòng)和停止功能,符合設(shè)計(jì)要求。6、源程序#include<reg52.h>#define uchar unsigned char#define uint unsign

18、ed intsbit lcdrs=P20; /讀寫選擇端sbit lcdrw=P21; /數(shù)據(jù)/命令選擇端sbit lcden=P22; /使能端uchar Speedchar="SPEED(n/min):"uchar Statechar="STATE:"uchar Anglechar="AL:"uchar STATE_CW="ZZ"uchar STATE_CCW="FZ"uchar Angle1="0.9"uchar Angle2="1.8"uchar

19、SPEED3="000"uchar QT="PAUSE"uchar code table1=0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9;/八拍正轉(zhuǎn)uchar code table2=0xf9,0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0xf1;/八拍反轉(zhuǎn)、uchar code table3=0xf6,0xfc,0xf9,0xf3;/四拍正轉(zhuǎn)uchar code table4=0xf3,0xf9,0xfc,0xf6;/四拍反轉(zhuǎn)uint RunSpeed=70;uint i=0;uint a=5;ucha

20、r flag=0; /運(yùn)行狀態(tài),正轉(zhuǎn)/反轉(zhuǎn)(0/1)uchar angle=0; /步距角狀態(tài),八拍/四拍(0/1)uchar pause=0; /啟動(dòng)/暫停(0/1) void delay(uint z)/延時(shí)1MS uint x,y; for(x=z;x>0;x-) for(y=110;y>0;y-); void write_com(uchar com) / 寫指令 lcdrs=0; P0=com; delay(5); lcden=1; delay(5); lcden=0;void write_data(uchar date) / 寫數(shù)據(jù) lcdrs=1; P0=date; d

21、elay(5); lcden=1; delay(5); lcden=0;void init()/初始化 lcdrw=0; lcden=0; write_com(0x01);/顯示清屏 write_com(0x38);/顯示模式設(shè)置 write_com(0x0c); /設(shè)置開(kāi)顯示,不顯示光標(biāo) write_com(0x06); / 字符時(shí)整體不移動(dòng) /*LCD狀態(tài)顯示 */void Showstate5() write_com(0x80+0x0d); for(i=0;i<3;i+) write_data(SPEEDi); delay(1); void Showstate4() write_c

22、om(0xc9+0x03); if(angle=0) for(i=0;i<3;i+) write_data(Angle1i); delay(1); else for(i=0;i<3;i+) write_data(Angle2i); delay(1); void Showstate3() write_com(0xc0+0x06); if(flag=0) for(i=0;i<2;i+) write_data(STATE_CWi); delay(1); else for(i=0;i<2;i+) write_data(STATE_CCWi); delay(1); void Sh

23、owstate2() write_com(0x01); write_com(0x80); for(i=0;i<5;i+) write_data(QTi); delay(1); void Showstate1() write_com(0x01); write_com(0x80); for(i=0;i<13;i+) write_data(Speedchari); delay(1); Showstate5(); write_com(0xc0); for(i=0;i<6;i+) write_data(Statechari); delay(1); Showstate3(); write

24、_com(0xc9); for(i=0;i<3;i+) write_data(Anglechari); delay(1); Showstate4();/*脈沖延時(shí)程序 */void clock(uint delay) for(;delay>0;delay-) for(i=0;i<220;i+);/* 速度顯示轉(zhuǎn)化子程序 */void DoSpeed(uint speed) SPEED0=(200*6/speed/100)+48; SPEED1=(200*6/speed%100/10)+48; SPEED2=(200*6/speed%10)+48;/* 鍵盤掃描程序 */voi

25、d keyscan() uchar key; key=P3; key=key&0xff; if(key!=0xff) delay(5); key=P3;key=key&0xff;if(key!=0xff) switch(key) case 0xfe: if(pause=0) pause=1; Showstate2(); else pause=0; Showstate1(); break; case 0xfd: if(flag=0) flag=1;else flag=0;Showstate3();break;case 0xfb: if(angle=0) angle=1; DoSp

26、eed(RunSpeed/2); Showstate5(); else angle=0; DoSpeed(RunSpeed); Showstate5(); Showstate4();break;case 0xf7: if(RunSpeed>=15) RunSpeed=RunSpeed-a; if(angle=0) DoSpeed(RunSpeed); Showstate5(); else DoSpeed(RunSpeed/2); Showstate5(); break; case 0xef: if(RunSpeed<=100) RunSpeed=RunSpeed+a; if(ang

27、le=0) DoSpeed(RunSpeed); Showstate5(); else DoSpeed(RunSpeed/2); Showstate5(); break; while(key!=0xff) key=P3; key=key&0xff; /* 脈沖輸出子程序 */void pulse() uint j; if(!pause) if(flag=0)&&(angle=0) for(j=0;j<8;j+) P1=table1j; clock(RunSpeed); if(flag=1)&&(angle=0) for(j=0;j<8;j+)

28、 P1=table2j; clock(RunSpeed); if(flag=0)&&(angle=1) for(j=0;j<4;j+) P1=table3j; clock(RunSpeed); if(flag=1)&&(angle=1) for(j=0;j<4;j+) P1=table4j; clock(RunSpeed); else P1=0x00;/* 主函數(shù) */void main() init(); DoSpeed(RunSpeed); Showstate1(); while(1) keyscan(); pulse(); 7、心得體會(huì)本次課題的設(shè)計(jì)題目是基于電動(dòng)機(jī)的單片機(jī)仿真和C語(yǔ)言開(kāi)發(fā),主要實(shí)現(xiàn)步進(jìn)電機(jī)的轉(zhuǎn)速控制,轉(zhuǎn)動(dòng)方向控制,以及其啟動(dòng)和停止功能等。之前對(duì)步進(jìn)電機(jī)幾乎不了解,經(jīng)過(guò)一個(gè)星期的學(xué)習(xí)、設(shè)計(jì)、仿真、調(diào)試,最終得出結(jié)果,基本完成設(shè)計(jì)要求。本課程設(shè)計(jì)是關(guān)于單片機(jī)的運(yùn)用和擴(kuò)展,所以在這次課程設(shè)計(jì)中最直接的獲益便是讓我們都更好的掌握單片機(jī)這項(xiàng)技能,對(duì)單片機(jī)原理這個(gè)課程有了更全觀的了解,在鞏固了理論知識(shí)的同時(shí),還能付諸實(shí)踐,提高我們的動(dòng)手能力。在學(xué)習(xí)單片機(jī)原理這門課程時(shí)所用到的編程語(yǔ)言是匯編語(yǔ)言,但這次課設(shè)要求使用C語(yǔ)言開(kāi)發(fā),參考一些書(shū)籍資料,學(xué)習(xí)運(yùn)用C語(yǔ)言來(lái)編寫單片機(jī)控制程序,幸好有C語(yǔ)言基礎(chǔ),所

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論