四相八拍步進電機調(diào)速_第1頁
四相八拍步進電機調(diào)速_第2頁
四相八拍步進電機調(diào)速_第3頁
四相八拍步進電機調(diào)速_第4頁
四相八拍步進電機調(diào)速_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 I目錄目錄引言 .1第 1 章 緒論 .21.1 步進電機的概述.21.1.1 步進電機的特點.21.1.2 步進電機的工作原理簡述 .21.2 四相八拍步進電機 .21.2.1 四相步進電機工作原理.21.2.2 八拍得工作方式.41.3 單片機概述 .41.3.1 單片機原理簡述.41.3.2 8031 單片機 .51.4 總體方案設(shè)計.51.4.1 系統(tǒng)的組成.51.4.2 系統(tǒng)的工作原理.6第 2 章 系統(tǒng)軟件設(shè)計 .72.1 顯示子程序的設(shè)計 .72.2 鍵盤子程序的設(shè)計.82.3 正反轉(zhuǎn)程序流程圖.112.3.1

2、 正反轉(zhuǎn)程序流程圖.112.3.2 轉(zhuǎn)速快慢程序流程圖.142.4 定時中斷流程圖.172.5 語音報警系統(tǒng).192.6 主程序設(shè)計.20參考文獻.23致謝 .24中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 0引言步進電機是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件。在非超載的情況下,電機的轉(zhuǎn)速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù),而不受負載變化的影響,即給電機加一個脈沖信號,電機則轉(zhuǎn)過一個步距角。這一線性關(guān)系的存在,加上步進電機只有周期性的誤差而無累積誤差等特點。使得在速度、位置等控制領(lǐng)域用步進電機來控制變的非常的簡單。步進電機的調(diào)速一般是改變輸入步進電機

3、的脈沖的頻率來實現(xiàn)步進電機的調(diào)速,因為步進電機每給一個脈沖就轉(zhuǎn)動一個固定的角度,這樣就可以通過控制步進電機的一個脈沖到下一個脈沖的時間間隔來改變脈沖的頻率,延時的長短來具體控制步進角來改變電機的轉(zhuǎn)速,從而實現(xiàn)步進電機的調(diào)速。在本設(shè)計方案中采用單片機內(nèi)部的定時器改變脈沖的頻率從而實現(xiàn)對步進電機的轉(zhuǎn)速進行控制,實現(xiàn)電機調(diào)速與正反轉(zhuǎn)的功能。關(guān)鍵詞關(guān)鍵詞: 步進電機, 單片機, 調(diào)速系統(tǒng)中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 1第 1 章 緒論1.11.1 步進電機的概述步進電機的概述1.1.1 步進電機的特點1) 一般步進電機的精度為步進角的 3-5%,且不累積。2)

4、步進電機外表允許的溫度高。步進電機溫度過高首先會使電機的磁性材料退磁,從而導致力矩下降乃至于失步,因此電機外表允許的最高溫度應(yīng)取決于不同電機磁性材料的退磁點;一般來講,磁性材料的退磁點都在攝氏 130 度以上,有的甚至高達攝氏 200度以上,所以步進電機外表溫度在攝氏 80-90 度完全正常。3)步進電機的力矩會隨轉(zhuǎn)速的升高而下降。當步進電機轉(zhuǎn)動時,電機各相繞組的電感將形成一個反向電動勢;頻率越高,反向電動勢越大。在它的作用下,電機隨頻率(或速度)的增大而相電流減小,從而導致力矩下降。4)步進電機低速時可以正常運轉(zhuǎn),但若高于一定速度就無法啟動,并伴有嘯叫聲。步進電機有一個技術(shù)參數(shù):空載啟動頻率

5、,即步進電機在空載情況下能夠正常啟動的脈沖頻率,如果脈沖頻率高于該值,電機不能正常啟動,可能發(fā)生丟步或堵轉(zhuǎn)。在有負載的情況下,啟動頻率應(yīng)更低。如果要使電機達到高速轉(zhuǎn)動,脈沖頻率應(yīng)該有加速過程,即啟動頻率較低,然后按一定加速度升到所希望的高頻(電機轉(zhuǎn)速從低速升到高速)。 1.1.2 步進電機的工作原理簡述 步進電機是一種用電脈沖進行控制 ,將電脈沖信號轉(zhuǎn)換成相位移的電機 ,其機械位移和轉(zhuǎn)速分別與輸入電機繞組的脈沖個數(shù)和脈沖頻率成正比 ,每一個脈沖信號可使步進電機旋轉(zhuǎn)一個固定的角度.脈沖的數(shù)量決定了旋轉(zhuǎn)的總角度 ,脈沖的頻率決定了電機運轉(zhuǎn)的速度.當步進驅(qū)動器接收到一個脈沖信號,它就驅(qū)動步進電機按設(shè)

6、定的方向轉(zhuǎn)動一個固定的角度(稱為“步距角”),它的旋轉(zhuǎn)是以固定的角度一步一步運行的??梢酝ㄟ^控制脈沖個數(shù)來控制角位移量,從而達到準確定位的目的;同時可以通過控制脈沖頻率來控制電機轉(zhuǎn)動的速度和加速度,從而達到調(diào)速的目的。1.21.2 四相八拍步進電機四相八拍步進電機1.2.1 四相步進電機工作原理圖 1.5 是該四相反應(yīng)式步進電機工作原理示意圖。中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 2圖 1.5 四相步進電機步進示意圖開始時,開關(guān) SB 接通電源,SA、SC、SD 斷開,B 相磁極和轉(zhuǎn)子 0、3 號齒對齊,同時,轉(zhuǎn)子的 1、4 號齒就和 C、D 相繞組磁極產(chǎn)生錯齒

7、,2、5 號齒就和 D、A 相繞組磁極產(chǎn)生錯齒。 當開關(guān) SC 接通電源,SB、SA、SD 斷開時,由于 C 相繞組的磁力線和 1、4 號齒之間磁力線的作用,使轉(zhuǎn)子轉(zhuǎn)動,1、4 號齒和 C 相繞組的磁極對齊。而 0、3 號齒和 A、B 相繞組產(chǎn)生錯齒,2、5 號齒就和 A、D 相繞組磁極產(chǎn)生錯齒。依次類推,A、B、C、D 四相繞組輪流供電,則轉(zhuǎn)子會沿著 A、B、C、D 方向轉(zhuǎn)動。四相步進電機按照通電順序的不同,可分為單四拍、雙四拍、八拍三種工作方式。單四拍與雙四拍的步距角相等,但單四拍的轉(zhuǎn)動力矩小。八拍工作方式的步距角是單四拍與雙四拍的一半,因此,八拍工作方式既可以保持較高的轉(zhuǎn)動力矩又可以提高

8、控制精度。單四拍、雙四拍與八拍工作方式的電源通電時序與波形分別如圖 1-6.a、b、c 所示:a 單四拍 b 雙四拍 c 八拍中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 3圖 1.6 步進電機工作時序波形圖1.2.2 八拍得工作方式單雙八拍工作方式:A-AB-B-BC-C-CD-D-DA (即一個脈沖,轉(zhuǎn) 3.75 度)八拍運行時步距角為 =360 度/(50*8)=0.9 度(俗稱半步)。1.31.3 單片機單片機概述概述1.3.1 單片機原理簡述單片機(SINGLE-CHIP MICROCOMPUTER)是把微型計算機主要部分都集成在一塊芯片上的單芯片微型計算機。

9、圖 1.7 中表示單片機的典型結(jié)構(gòu)圖。由于單片機的高度集成化,縮短了系統(tǒng)內(nèi)的信號傳送距離,優(yōu)化了結(jié)構(gòu)配置,大大地提高了系統(tǒng)的可靠性及運行速度,同時它的指令系統(tǒng)又很適合于工業(yè)控制的要求,所以單片機在工業(yè)過程及設(shè)備控制中得到了廣泛的應(yīng)用。圖 1.7 典型單片機結(jié)構(gòu)圖 單片機在進行實時控制和實時數(shù)據(jù)處理時,需要與外界交換信息。人們需要通過人機對話,了解系統(tǒng)的工作情況和進行控制。單片機芯片與其它 CPU 比較,功能雖然要強得多,但由于芯片結(jié)構(gòu)、引腳數(shù)目的限制,片內(nèi) ROM、RAM、I/O 口等不能很多,在構(gòu)成實際的應(yīng)用系統(tǒng)時需要加以擴展,以適應(yīng)不同的工作情況。單片機應(yīng)用系統(tǒng)的構(gòu)成基本上如圖 1.8 所

10、示。中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 4圖 1.8 單片機的應(yīng)用系統(tǒng)單片機應(yīng)用系統(tǒng)根據(jù)系統(tǒng)擴展和系統(tǒng)配置的狀況,可以分為最小應(yīng)用系統(tǒng)、最小功耗系統(tǒng)、典型應(yīng)用系統(tǒng)。本設(shè)計是設(shè)計一款最小應(yīng)用系統(tǒng),最小應(yīng)用系統(tǒng)是指能維持單片機運行的最簡單配置的系統(tǒng)。這種系統(tǒng)成本低廉、結(jié)構(gòu)簡單,常用來構(gòu)成簡單的控制系統(tǒng),如開關(guān)量的輸入/輸出控制、時序控制等。對于片內(nèi)有 ROM/EPROM 的芯片來說,最小應(yīng)用系統(tǒng)即為配有晶體振蕩器、復位電路和電源的單個芯片;對與片內(nèi)沒有 ROM/EPROM芯片來說,其最小應(yīng)用系統(tǒng)除了應(yīng)配置上述的晶振、復位電路和電源外,還應(yīng)配備 EPROM或 EEP

11、ROM 作為程序存儲器使用1.3.2 8031 單片機8031 單片機具有體積小,重量輕,價格低,耗電少,電源單一,抗干擾能力強,可靠性高,面向控制,控制功能強,運行速度快等特點。所以本次調(diào)速設(shè)計芯片采用 8031來控制。8031 單片機內(nèi)部組成:1 個 8 位微處理器 CPU;128 字節(jié)的數(shù)據(jù)存儲器(RAM);32 條I/O 位線(四個 8 位口 P0,P1,P2,P3);2 個定時器;1 個具有 5 個中斷源,2 個優(yōu)先級的中斷嵌套機構(gòu);1 個全雙工的串行通信端口,特許功能寄存器以及一個震蕩和時鐘電路。各部分通過芯片內(nèi)部總線連接。8031 單片機的硬件機構(gòu)特點:8031 單片機無內(nèi)部存儲

12、器(ROM),有數(shù)據(jù)存儲器(RAM);輸入/輸出(I/O)端口:它具有一個全雙的串行口,該串行口由兩根 I/O 位線構(gòu)成,有四種工作方式,可通過編程選定,且 8031 還有 32 個 I/O 位線。中斷與堆棧:8031 單片機有 5 個中斷源,分為 2 級優(yōu)先,每個中斷源的優(yōu)先級是可以編程的。它的堆棧位置也是可以編程的,堆棧深度可以達到 128 字節(jié)。定時/計數(shù)器與寄存區(qū):8031 單片機有 2 個 16 位定時/計數(shù)器,通過編程可以實現(xiàn)四種工作模式。8031 單片機在內(nèi)部 RAM中設(shè)置了四個通用工作寄存器區(qū),共 32 個寄存器,以適應(yīng)多種終端或子程序嵌套的要求。中北大學信息商務(wù)學院課程設(shè)計說

13、明書中北大學信息商務(wù)學院課程設(shè)計說明書 5指令系統(tǒng):8031 單片機指令系統(tǒng)功能大,指令段,執(zhí)行速度快。外接晶振的頻率為128MHZ 時,大部分指令執(zhí)行時間為 1M。1.41.4 總體方案設(shè)計總體方案設(shè)計1.4.1 系統(tǒng)的組成本系統(tǒng)主要組成部分為:主機芯片 8031,轉(zhuǎn)速測量采集系統(tǒng),步進電機的驅(qū)動系統(tǒng),8279 擴展外部中斷子系統(tǒng),報警系統(tǒng)等多部分系統(tǒng)原理圖鍵盤顯示器82798031光電耦合A/D 轉(zhuǎn)換器步進電機圖 1.10 系統(tǒng)原理框圖1.4.2 系統(tǒng)的工作原理系統(tǒng)的工作原理如下:有主機芯片 8031 發(fā)出指令至步進電機的驅(qū)動和隔離電路,步進電機啟動,通過 8031 的內(nèi)部中斷來實現(xiàn)步進電

14、機的加速運轉(zhuǎn)。電機的轉(zhuǎn)速通過光電傳感器,傳輸?shù)讲蓸颖3蛛娐返?A/D 轉(zhuǎn)換器,轉(zhuǎn)換成數(shù)字信號,存到主機芯片 8031 進行處理,在傳輸?shù)?8279 到 LED 顯示器。如果轉(zhuǎn)速超過規(guī)定速度,通過 8031 發(fā)出指令到報警電路報警。單片機控制步進電機工作是,電機在幾十伏,甚至一百幅的高壓條件下工作,而單片機則在 5V 的低壓條件下工作,一旦步進電機的電壓竄到單片機部分,竟會引起單片機損壞;或者步進電機部分的有關(guān)信號干擾單片機,也會引起系統(tǒng)工作失誤。故單片機與不進電極之間的硬件接口一般需要進行電壓隔離;對于四相步進電機,需要四路控制電路,每一路控制步進電機的一相;有時需要步進電機以不同的速度工作,

15、不適應(yīng)不同的目的,硬件接口中將包括工作頻率發(fā)生器。中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 6第 2 章 系統(tǒng)軟件設(shè)計2.12.1 顯示子程序的設(shè)計顯示子程序的設(shè)計 圖 2.1 顯示程序流程圖中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 78279 的初始化程序如下: INIT: MOV DPTR,#7FFFH ;置 8279 命令/狀態(tài)口地址 MOV A,#0D1H ;置清顯示命令字 MOVX DPTR,A ;送清顯示命令 WEIT: MOVX A,DPTR ;讀狀態(tài) JB ACC.7,WEIT ;等待清顯示 RAM 結(jié)束 MOV A,#3

16、4H ;置分頻系數(shù),晶振 12MHZ MOVX DPTR,A ;送分頻系數(shù) MOV A,#00H ;置鍵盤/顯示命令 MOVX DPTR,A ;送鍵盤/顯示命令 MOV IE,#84H ;允許 8279 中斷 RET顯示子程序如下: DIS: MOV DPTR,#7FFFH ;置 8279 命令/狀態(tài)口地址 MOV R0,#30H ;字段碼首地址 MOV R7,#08H ;8 位顯示 MOV A,#90H ;置顯示命令字 MOVX DPTR,A ;送顯示命令 MOV DPTR,#7FFEH ;置數(shù)據(jù)口地址 LP: MOV A,R0 ;取顯示數(shù)據(jù) ADD A,#6 ;加偏移量 MOVC A,AP

17、C ;查表,取得數(shù)據(jù)的段碼 MOVX DPTR,A ;送段碼顯示 INC R0 ;調(diào)整數(shù)據(jù)指針 DJNZ R7,LP ;RET SEG: DB 3FH,06H,5BH,4FH,66H,6DH ;字符 0、1、2、3、4、5 段碼 DB 7DH,07H,7EH,6FH,77H,7CH ;字符 6、7、8、9、A、B 段碼 DB 39H,5EH,79H,71H,73H,3EH ;字符 C、D、E、F、P、U 段碼 DB 76H,38H,40H,6EH,F(xiàn)FH,00H ;字符 H、L、-、Y、“空”段碼2.22.2 鍵盤子程序的設(shè)計鍵盤子程序的設(shè)計中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學

18、院課程設(shè)計說明書 8圖 2.2 鍵盤程序流程圖鍵盤中斷子程序如下:KEY: PUSH PSW PUSH DPL PUSH DPH PUSH ACC PUSH B SETB PSW.3 MOV DPTR,#7FFFH ;置狀態(tài)口地址 MOVX A,DPTR ;讀 FIFO 狀態(tài) ANL A,#0FH ; JZ PKYR ; MOV A,#40H ;置讀 FIFO 命令 MOVX DPTR,A ;送讀 FIFO 命令 MOV DPTR,#7FFEH ;置數(shù)據(jù)口地址 MOVX A,DPTR ;讀數(shù)據(jù) LJMP KEY1 ;轉(zhuǎn)鍵值處理程序PKYR: POP B中北大學信息商務(wù)學院課程設(shè)計說明書中北大學

19、信息商務(wù)學院課程設(shè)計說明書 9 POP ACC POP DPH POP DPL POP PSW RETI ;KEY1: ; 鍵值處理程序鍵盤程序清單:KEY1: ACALL KS1; 有無鍵按下子程序 JNZLK1; 有鍵按下,轉(zhuǎn)去抖延時 AJMPKEY1; 無鍵按下,繼續(xù)掃描LK1: ACALL DELA12; 12MS 延時程序調(diào)用 ACALL KS1; 判斷鍵是否真正按下 JNZLK2 ; 有鍵按下,轉(zhuǎn)逐列掃描 AJMPKEY1; 無鍵按下,繼續(xù)掃描LK2: MOVR2,#0FEH; 設(shè)置首列掃描字 MOVR4,#00H; 保存首列號 LK4: MOVDPTR,#7F01H; 列掃描字送

20、至 PA 口 MOV A,R2 MOVX DPTR,A INCDPTR; 指向 PC 口 INCDPTR MOVX A,DPTR; 讀入行狀態(tài) JBACC.0,LONE; 第 0 行無鍵按下,轉(zhuǎn) LONE MOVA,#00H; 有鍵按下,設(shè)置行首鍵號 AJMP LKP; 轉(zhuǎn)求鍵號 LONE: JBACC.1,LTWO; 第 1 行無鍵按下,轉(zhuǎn) LTWO MOVA,#08H; 有鍵按下,設(shè)置行首鍵號 AJMP LKP; 轉(zhuǎn)求鍵號 LTWO: JB ACC.2,LTHR; 第 2 行無鍵按下,轉(zhuǎn) LTHR MOVA,#10H; 有鍵按下,設(shè)置行首鍵? AJMP LKP; 轉(zhuǎn)求鍵號 LTHR:JB

21、ACC.3,NEXT; 第 3 行無鍵按下,查下一列 MOV A,#18H; 有鍵按下,設(shè)置行首鍵中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 10LKP:ADD A,R4 ; 求鍵號,鍵號=行首鍵號+列號 PUSHACC ; 保護鍵號LK3:ACALLKS1 ; 等待鍵釋放 JNZLK3 ; 鍵未釋放,繼續(xù)等待 POPACC; 鍵釋放,鍵號送 A AJMPOVER; 鍵掃描結(jié)束NEXT:INC R4; 列號加 1,指向下一列 MOVA,R2; 判斷 8 列掃描完否 JNBACC.7,KND; 8 列掃描完,繼續(xù) RL A; 掃描字左移一位 MOVR2,A; 送掃描字

22、AJMPLK4 ; 轉(zhuǎn)下一列掃描 KND:AJMPKEY1 OVER:RET; 鍵掃描結(jié)束KS1: MOVDPTR,#7F01H; 指向 PA 口 MOVA,#00H; 設(shè)置掃描字 MOVXDPTR,A; 掃描字送 PA 口 INCDPTR; 指向 PC 口 INCDPTR MOVXA,DPTR; 讀入 PC 口狀態(tài) CPL; 以高電平表示有鍵按下 ANLA,#0FH; 屏蔽高 4 位 RET 2.32.3 正反轉(zhuǎn)程序流程圖正反轉(zhuǎn)程序流程圖2.3.1 正反轉(zhuǎn)程序流程圖中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 11圖 2.3 正反轉(zhuǎn)程序流程圖主程序如下:CON: MO

23、V R3, # N MOV TMOD , # 10H MOV TL1 , # LOW中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 12 MOV TH1 , # H IGH JNB FLAG ,LEFT MOV R0 , RM AJMP TIME - SLEFT: MOV R0 , LMTIME: SETB EA SETB ET1 SETB TR1步進電機控制程序 P3.2 正轉(zhuǎn),P3.3 反轉(zhuǎn),P3.4 停止步進電機接 P1.0P1.1P1.2P1.3 ORG 00hSTOP: ORL P1,#0FFh; 步進電機停止LOOP: JNB P3.2,FOR2; 如果 P3

24、.2 按下正轉(zhuǎn) JNB P3.3,REV2 ; 如果 P3.3 按下反轉(zhuǎn) JNB P3.4,STOP1; 如果 P3.4 按下停止 JMP LOOP; 反復監(jiān)測鍵盤FOR: MOV R0,#00h; 正轉(zhuǎn)到 TAB 取碼指針初值FOR1: MOV A,R0; 取碼 MOV DPTR,#TABLE ; MOVC A,A+DPTR JZ FOR; 是否到了結(jié)束碼 00h CPL A ; 把 ACC 反向 MOV P1,A; 輸出到 P1 開始正轉(zhuǎn) JNB P3.4,STOP1; 如果 P3.4 按下停止 JNB P3.3,REV2; 如果 P3.3 按下反轉(zhuǎn) CALL DELAY; 轉(zhuǎn)動的速度 I

25、NC R0; 取下一個碼 JMP FOR1; 繼續(xù)正轉(zhuǎn)REV: MOV R0,#05h ; 反轉(zhuǎn)到 TAB 取碼指針初值REV1: MOV A,R0 MOV DPTR,#TABLE; 取碼 MOVC A,A+TABLE JZ REV; 是否到了結(jié)束碼 00h CPL A; 把 ACC 反向 MOV P1,A; 輸出到 P1 開始反轉(zhuǎn) JNB P3.4,STOP1; 如果 P3.4 按下停止中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 13 JNB P3.3,REV2; 如果 P3.3 按下反轉(zhuǎn) CALL DELAY; 轉(zhuǎn)動的速度 INC R0; 取下一個碼 JMP RE

26、V1; 繼續(xù)反轉(zhuǎn)STOP1: CALL DELAY; 按 P3.4 的消除抖動 JNB P3.4,$; P3.4 放開否? CALL DELAY; 放開消除抖動 JMP STOP;FOR2: CALL DELAY; 按 P3.2 的消除抖動 JNB P3.2,$; P3.2 放開否? CALL DELAY; 放開消除抖動 JMP FOR;REV2: CALL DELAY; 按 P3.3 的消除抖動 JNB P3.3,$; P3.3 放開否? CALL DELAY; 放開消除抖動 JMP REV;DELAY: MOV R1,#40; 步進電機的轉(zhuǎn)速 20MS D1:MOV R2,#248; DJ

27、NZ R2,$ DJNZ R1,D1 RETTABLE: DB 03h,09h,0Ch,06h; 正轉(zhuǎn)表 DB 00; 正轉(zhuǎn)結(jié)束 DB 03h,06h,0Ch,09h; 反轉(zhuǎn) DB 00; 反轉(zhuǎn)結(jié)束 END2.3.2 轉(zhuǎn)速快慢程序流程圖中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 14圖 2.4 轉(zhuǎn)速快慢程序流程圖步進電機正反快慢程序ORG 00hx1: MOV R3,#48 一圈 48 步START: MOV R0,#00h 正轉(zhuǎn)取碼初值中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 15START1:MOV P1,#0FFh; 先停止MOV A

28、,R0MOV DPTR,#TABLEMOVC A,A+DPTRJZ START; 是否到了結(jié)束碼 00?CPL AMOV P1,A; 輸出運轉(zhuǎn)CALL DELAY; 調(diào)用慢速的延時轉(zhuǎn)動INC R0; 取碼指針加 1 取下一個碼DJNZ R3,START1; 是否走了 48 步?MOV R3,#48; 是則重新設(shè)定 48 步START2:MOV P1,#0FFhMOV R0,#05; 逆轉(zhuǎn)的取碼初值START3:MOV A,R0;MOV DPTR,#TABLEMOVC A,A+DPTRJZ START2CPL AMOV P1,ACALL DELAY2INC R0DJNZ R3,START3JMP

29、 x1; 重復開始DELAY: ; 延時程序 (慢速) MOV R7,#255D1: MOV R6,#50D2: DJNZ R6,D2 DJNZ R7,D1 RETDELAY2: ; 延時程序 (快速)MOV R5,#255D3:MOV R2,#25中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 16D4: DJNZ R2,D4DJNZ R5,D3RETTABLE:DB 03h,09h,0Ch,06h; 正轉(zhuǎn)表DB 00DB 06h,0Ch,09h,03h; 反轉(zhuǎn)表DB 00END2.42.4 定時中斷流程圖定時中斷流程圖圖 2.5 中斷子程序流程圖中斷服務(wù)程序如下:IN

30、TTO: PUSH A PUSH PSW MOV A , R0中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 17 MOV P1 ,A INC R0 MOV A , # 00H XRL A , R0 JNZ NEXT MOV A , R0 CLR C SUBB A , # 03H MOV R0 , A NEXT: DJNZ R3 , RETU CLR ET1 CLR EA RETU: POP PSW POP A RETI利用軟件形成脈沖序列的程序清單: PULSE_S: MOVR7,#NUM; 設(shè)定脈沖個數(shù) PUSHA ; 保護現(xiàn)場 PUSHPSWLOOP: SETBP1

31、.0; 輸出高電平 ACALL DELAY1 ; 延時 CLRP1.0; 輸出低電平 ACALL DELAY2 ; 延時 DJNZR7,LOOP;R70, 繼續(xù)輸出脈沖 POPPSW ; 恢復現(xiàn)場 POPA RET定時中斷子程序:TIME0: CLREA ; 關(guān)中斷 INC30H MOVA,30H XRLA,#50H ; 判斷是否到 8 秒 JZ S_8 ; 8 秒定時到,轉(zhuǎn)至 S_8 AJMPRECOUN ; 未到 8 秒,繼續(xù)計時 S_8:SETBP3.2; 觸發(fā)外部中斷 0中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 18 NOP CLRP3.2 NOPRECOU

32、N: MOVTH0,#3CH MOVTL0,#0B0H ; 設(shè)定定時器初值SETBEA ; 開中斷RETI; 中斷返回中斷子程序T_CON: PUSHA; 保護現(xiàn)場 PUSHPSW MOVR7,#N; 設(shè)定控制步數(shù)JNBFLAG,LEFT ; 判斷旋轉(zhuǎn)方向 RIGHT: MOVR0,RM; 正轉(zhuǎn)模型起始地址 AJMPROTATE LEFT: MOVR0,LM ROTATE:MOV A,R0; 取第一拍控制模型 MOVP1,A; 輸出第一拍控制模型 ACALL DELAY1 ; 延時 INCR0MOVA,R0; 取第二拍控制模型 MOVP1,A; 輸出第二拍控制模型ACALL DELAY1 ;

33、延時 INCR0 MOVA,R0; 取第三拍控制模型 MOVP1,A; 輸出第三拍控制模型 ACALL DELAY1 ; 延時 DJNZR7,ROTATE ; 未走完要求的步數(shù),繼續(xù) POPPSW ; 恢復現(xiàn)場 POP A RET;返回 2.52.5 語音報警系統(tǒng)語音報警系統(tǒng)該系統(tǒng)采用專用集成語音芯片,將所要播放的語音信息一次性燒錄到存儲器內(nèi)。當檢測電路檢測到報警信號出現(xiàn)時,微處理器送出所要播報的語句地址信號,控制語音芯片播放對應(yīng)的原理圖語音報警原理圖信息。其原理圖中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 19報警檢測電路控制電路語音調(diào)節(jié)揚聲器語音揭反電路報警數(shù)據(jù)控

34、制語音震蕩信號圖 2.6 語音報警系統(tǒng)原理框圖軟件的設(shè)計采用芯片外接寄存器,脈沖觸發(fā)方式。當報警信號出現(xiàn),未處理報警語句的地址信息送到寄存器,同時控制信息觸發(fā)寄存器的 CLK 引腳,地址信息存儲器。芯片收到地址信息后即發(fā)出報警音,由于地址信息在寄存器的存儲,在脈沖觸發(fā)方式下,報警信息將反復播報,當報警信號消失,未處理器送出報警停止信號(00000000),即實現(xiàn)語音報警信號停止。2.62.6 主程序設(shè)計主程序設(shè)計步進電機的旋轉(zhuǎn)方向和內(nèi)部繞組的通電順序及通電方式有密切關(guān)系。對于四相八拍的工作方式:正相旋轉(zhuǎn):AABBBCCCDDDAA反相旋轉(zhuǎn):ADADDCCCBBBAA四相八拍步進電機控制程序:O

35、RG 2000HROUT1: MOV A, #N JNB 00H, LP2LP1: MOV P1,#01H ACALL DELAY DEC A JZ DONEMOV P1,#03H ACALL DELAY DEC A中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 20 JZ DONE MOV P1,#02H ACALL DELAY DEC A JZ DONEMOV P1,#06H ACALL DELAY DEC A JZ DONE MOV P1,#04H ACALL DELAY DEC A JZ DONE MOV P1,#0CH ACALL DELAY DEC A JZ

36、DONE MOV P1,#08H ACALL DELAY DEC A JZ DONE MOV P1,#09H ACALL DELAY DEC A JNZ DONE AJMP DONELP2: MOV P1,#01H ACALL DELAY DEC A JZ DONEMOV P1,#09H ACALL DELAY DEC A JZ DONEMOV P1,#08H中北大學信息商務(wù)學院課程設(shè)計說明書中北大學信息商務(wù)學院課程設(shè)計說明書 21 ACALL DELAY DEC A JZ DONEMOV P1,#0CH ACALL DELAY DEC A JZ DONEMOV P1,#04H ACALL DELAY DEC A JZ DONE MOV P1,#06H ACALL DE

溫馨提示

  • 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

提交評論