




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、目錄目錄 引言 .1 第 1 章 緒論 .2 1.1 步進(jìn)電機(jī)的概述.2 1.1.1 步進(jìn)電機(jī)的特點(diǎn).2 1.1.2 步進(jìn)電機(jī)的工作原理簡述 .2 1.2 四相八拍步進(jìn)電機(jī) .2 1.2.1 四相步進(jìn)電機(jī)工作原理.2 1.2.2 八拍得工作方式.4 1.3 單片機(jī)概述 .4 1.3.1 單片機(jī)原理簡述.4 1.3.2 8031 單片機(jī) .5 1.4 總體方案設(shè)計.5 1.4.1 系統(tǒng)的組成.5 1.4.2 系統(tǒng)的工作原理.6 第 2 章 系統(tǒng)軟件設(shè)計 .7 2.1 顯示子程序的設(shè)計 .7 2.2 鍵盤子程序的設(shè)計.8 2.3 正反轉(zhuǎn)程序流程圖.11 2.3.1 正反轉(zhuǎn)程序流程圖.11 2.3.
2、2 轉(zhuǎn)速快慢程序流程圖.14 2.4 定時中斷流程圖.17 2.5 語音報警系統(tǒng).19 2.6 主程序設(shè)計.20 參考文獻(xiàn) .23 致謝 .24 引言 步進(jìn)電機(jī)是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件。在非超載的情況 下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù),而不受負(fù)載變化的影 響,即給電機(jī)加一個脈沖信號,電機(jī)則轉(zhuǎn)過一個步距角。這一線性關(guān)系的存在,加上步 進(jìn)電機(jī)只有周期性的誤差而無累積誤差等特點(diǎn)。使得在速度、位置等控制領(lǐng)域用步進(jìn)電 機(jī)來控制變的非常的簡單。步進(jìn)電機(jī)的調(diào)速一般是改變輸入步進(jìn)電機(jī)的脈沖的頻率來實(shí) 現(xiàn)步進(jìn)電機(jī)的調(diào)速,因?yàn)椴竭M(jìn)電機(jī)每給一個脈沖就轉(zhuǎn)動一個固定的角度
3、,這樣就可以通 過控制步進(jìn)電機(jī)的一個脈沖到下一個脈沖的時間間隔來改變脈沖的頻率,延時的長短來 具體控制步進(jìn)角來改變電機(jī)的轉(zhuǎn)速,從而實(shí)現(xiàn)步進(jìn)電機(jī)的調(diào)速。在本設(shè)計方案中采用單 片機(jī)內(nèi)部的定時器改變脈沖的頻率從而實(shí)現(xiàn)對步進(jìn)電機(jī)的轉(zhuǎn)速進(jìn)行控制,實(shí)現(xiàn)電機(jī)調(diào)速 與正反轉(zhuǎn)的功能。 關(guān)鍵詞關(guān)鍵詞: 步進(jìn)電機(jī), 單片機(jī), 調(diào)速系統(tǒng) 第 1 章 緒論 1.11.1 步進(jìn)電機(jī)的概述步進(jìn)電機(jī)的概述 1.1.1 步進(jìn)電機(jī)的特點(diǎn) 1) 一般步進(jìn)電機(jī)的精度為步進(jìn)角的 3-5%,且不累積。 2) 步進(jìn)電機(jī)外表允許的溫度高。步進(jìn)電機(jī)溫度過高首先會使電機(jī)的磁性材料退磁, 從而導(dǎo)致力矩下降乃至于失步,因此電機(jī)外表允許的最高溫度應(yīng)取
4、決于不同電機(jī)磁性材 料的退磁點(diǎn);一般來講,磁性材料的退磁點(diǎn)都在攝氏 130 度以上,有的甚至高達(dá)攝氏 200 度以上,所以步進(jìn)電機(jī)外表溫度在攝氏 80-90 度完全正常。 3)步進(jìn)電機(jī)的力矩會隨轉(zhuǎn)速的升高而下降。當(dāng)步進(jìn)電機(jī)轉(zhuǎn)動時,電機(jī)各相繞組的電感 將形成一個反向電動勢;頻率越高,反向電動勢越大。在它的作用下,電機(jī)隨頻率(或 速度)的增大而相電流減小,從而導(dǎo)致力矩下降。 4)步進(jìn)電機(jī)低速時可以正常運(yùn)轉(zhuǎn),但若高于一定速度就無法啟動,并伴有嘯叫聲。步進(jìn) 電機(jī)有一個技術(shù)參數(shù):空載啟動頻率,即步進(jìn)電機(jī)在空載情況下能夠正常啟動的脈沖頻 率,如果脈沖頻率高于該值,電機(jī)不能正常啟動,可能發(fā)生丟步或堵轉(zhuǎn)。在有
5、負(fù)載的情 況下,啟動頻率應(yīng)更低。如果要使電機(jī)達(dá)到高速轉(zhuǎn)動,脈沖頻率應(yīng)該有加速過程,即啟 動頻率較低,然后按一定加速度升到所希望的高頻(電機(jī)轉(zhuǎn)速從低速升到高速)。 1.1.2 步進(jìn)電機(jī)的工作原理簡述 步進(jìn)電機(jī)是一種用電脈沖進(jìn)行控制 ,將電脈沖信號轉(zhuǎn)換成相位移的電機(jī) ,其機(jī)械位 移和轉(zhuǎn)速分別與輸入電機(jī)繞組的脈沖個數(shù)和脈沖頻率成正比 ,每一個脈沖信號可使步進(jìn) 電機(jī)旋轉(zhuǎn)一個固定的角度.脈沖的數(shù)量決定了旋轉(zhuǎn)的總角度 ,脈沖的頻率決定了電機(jī)運(yùn)轉(zhuǎn) 的速度.當(dāng)步進(jìn)驅(qū)動器接收到一個脈沖信號,它就驅(qū)動步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動一個固 定的角度(稱為“步距角”),它的旋轉(zhuǎn)是以固定的角度一步一步運(yùn)行的??梢酝ㄟ^控制 脈
6、沖個數(shù)來控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時可以通過控制脈沖頻率來控 制電機(jī)轉(zhuǎn)動的速度和加速度,從而達(dá)到調(diào)速的目的。 1.21.2 四相八拍步進(jìn)電機(jī)四相八拍步進(jìn)電機(jī) 1.2.1 四相步進(jìn)電機(jī)工作原理 圖 1.5 是該四相反應(yīng)式步進(jìn)電機(jī)工作原理示意圖。 圖 1.5 四相步進(jìn)電機(jī)步進(jìn)示意圖 開始時,開關(guān) SB 接通電源,SA、SC、SD 斷開,B 相磁極和轉(zhuǎn)子 0、3 號齒對齊,同 時,轉(zhuǎn)子的 1、4 號齒就和 C、D 相繞組磁極產(chǎn)生錯齒,2、5 號齒就和 D、A 相繞組磁極產(chǎn) 生錯齒。 當(dāng)開關(guān) SC 接通電源,SB、SA、SD 斷開時,由于 C 相繞組的磁力線和 1、4 號齒之間 磁力線的
7、作用,使轉(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)動。 四相步進(jìn)電機(jī)按照通電順序的不同,可分為單四拍、雙四拍、八拍三種工作方式。 單四拍與雙四拍的步距角相等,但單四拍的轉(zhuǎn)動力矩小。八拍工作方式的步距角是單四 拍與雙四拍的一半,因此,八拍工作方式既可以保持較高的轉(zhuǎn)動力矩又可以提高控制精 度。 單四拍、雙四拍與八拍工作方式的電源通電時序與波形分別如圖 1-6.a、b、c 所示: a 單四拍 b 雙四拍 c 八拍 圖 1.
8、6 步進(jìn)電機(jī)工作時序波形圖 1.2.2 八拍得工作方式 單雙八拍工作方式:A-AB-B-BC-C-CD-D-DA (即一個脈沖,轉(zhuǎn) 3.75 度)八拍運(yùn)行時步 距角為 =360 度/(50*8)=0.9 度(俗稱半步)。 1.31.3 單片機(jī)單片機(jī)概述概述 1.3.1 單片機(jī)原理簡述 單片機(jī)(SINGLE-CHIP MICROCOMPUTER)是把微型計算機(jī)主要部分都集成在一塊芯片 上的單芯片微型計算機(jī)。圖 1.7 中表示單片機(jī)的典型結(jié)構(gòu)圖。由于單片機(jī)的高度集成化, 縮短了系統(tǒng)內(nèi)的信號傳送距離,優(yōu)化了結(jié)構(gòu)配置,大大地提高了系統(tǒng)的可靠性及運(yùn)行速 度,同時它的指令系統(tǒng)又很適合于工業(yè)控制的要求,所以
9、單片機(jī)在工業(yè)過程及設(shè)備控制 中得到了廣泛的應(yīng)用。 圖 1.7 典型單片機(jī)結(jié)構(gòu)圖 單片機(jī)在進(jìn)行實(shí)時控制和實(shí)時數(shù)據(jù)處理時,需要與外界交換信息。人們需要通過人 機(jī)對話,了解系統(tǒng)的工作情況和進(jìn)行控制。單片機(jī)芯片與其它 CPU 比較,功能雖然要強(qiáng) 得多,但由于芯片結(jié)構(gòu)、引腳數(shù)目的限制,片內(nèi) ROM、RAM、I/O 口等不能很多,在構(gòu)成 實(shí)際的應(yīng)用系統(tǒng)時需要加以擴(kuò)展,以適應(yīng)不同的工作情況。單片機(jī)應(yīng)用系統(tǒng)的構(gòu)成基本 上如圖 1.8 所示。 圖 1.8 單片機(jī)的應(yīng)用系統(tǒng) 單片機(jī)應(yīng)用系統(tǒng)根據(jù)系統(tǒng)擴(kuò)展和系統(tǒng)配置的狀況,可以分為最小應(yīng)用系統(tǒng)、最小功 耗系統(tǒng)、典型應(yīng)用系統(tǒng)。本設(shè)計是設(shè)計一款最小應(yīng)用系統(tǒng),最小應(yīng)用系統(tǒng)是
10、指能維持單 片機(jī)運(yùn)行的最簡單配置的系統(tǒng)。這種系統(tǒng)成本低廉、結(jié)構(gòu)簡單,常用來構(gòu)成簡單的控制 系統(tǒng),如開關(guān)量的輸入/輸出控制、時序控制等。對于片內(nèi)有 ROM/EPROM 的芯片來說,最 小應(yīng)用系統(tǒng)即為配有晶體振蕩器、復(fù)位電路和電源的單個芯片;對與片內(nèi)沒有 ROM/EPROM 芯片來說,其最小應(yīng)用系統(tǒng)除了應(yīng)配置上述的晶振、復(fù)位電路和電源外,還應(yīng)配備 EPROM 或 EEPROM 作為程序存儲器使用 1.3.2 8031 單片機(jī) 8031 單片機(jī)具有體積小,重量輕,價格低,耗電少,電源單一,抗干擾能力強(qiáng),可 靠性高,面向控制,控制功能強(qiáng),運(yùn)行速度快等特點(diǎn)。所以本次調(diào)速設(shè)計芯片采用 8031 來控制。
11、8031 單片機(jī)內(nèi)部組成:1 個 8 位微處理器 CPU;128 字節(jié)的數(shù)據(jù)存儲器(RAM);32 條 I/O 位線(四個 8 位口 P0,P1,P2,P3);2 個定時器;1 個具有 5 個中斷源,2 個優(yōu)先級的 中斷嵌套機(jī)構(gòu);1 個全雙工的串行通信端口,特許功能寄存器以及一個震蕩和時鐘電路。 各部分通過芯片內(nèi)部總線連接。 8031 單片機(jī)的硬件機(jī)構(gòu)特點(diǎn):8031 單片機(jī)無內(nèi)部存儲器(ROM),有數(shù)據(jù)存儲器 (RAM);輸入/輸出(I/O)端口:它具有一個全雙的串行口,該串行口由兩根 I/O 位線 構(gòu)成,有四種工作方式,可通過編程選定,且 8031 還有 32 個 I/O 位線。中斷與堆棧:
12、 8031 單片機(jī)有 5 個中斷源,分為 2 級優(yōu)先,每個中斷源的優(yōu)先級是可以編程的。它的堆 棧位置也是可以編程的,堆棧深度可以達(dá)到 128 字節(jié)。定時/計數(shù)器與寄存區(qū):8031 單片 機(jī)有 2 個 16 位定時/計數(shù)器,通過編程可以實(shí)現(xiàn)四種工作模式。8031 單片機(jī)在內(nèi)部 RAM 中設(shè)置了四個通用工作寄存器區(qū),共 32 個寄存器,以適應(yīng)多種終端或子程序嵌套的要求。 指令系統(tǒng):8031 單片機(jī)指令系統(tǒng)功能大,指令段,執(zhí)行速度快。外接晶振的頻率為 128MHZ 時,大部分指令執(zhí)行時間為 1M。 1.41.4 總體方案設(shè)計總體方案設(shè)計 1.4.1 系統(tǒng)的組成 本系統(tǒng)主要組成部分為:主機(jī)芯片 803
13、1,轉(zhuǎn)速測量采集系統(tǒng),步進(jìn)電機(jī)的驅(qū)動系統(tǒng), 8279 擴(kuò)展外部中斷子系統(tǒng),報警系統(tǒng)等多部分 系統(tǒng)原理圖 鍵盤顯示器 82798031光電耦合 A/D 轉(zhuǎn)換器 步進(jìn)電 機(jī) 圖 1.10 系統(tǒng)原理框圖 1.4.2 系統(tǒng)的工作原理 系統(tǒng)的工作原理如下:有主機(jī)芯片 8031 發(fā)出指令至步進(jìn)電機(jī)的驅(qū)動和隔離電路,步 進(jìn)電機(jī)啟動,通過 8031 的內(nèi)部中斷來實(shí)現(xiàn)步進(jìn)電機(jī)的加速運(yùn)轉(zhuǎn)。電機(jī)的轉(zhuǎn)速通過光電傳 感器,傳輸?shù)讲蓸颖3蛛娐返?A/D 轉(zhuǎn)換器,轉(zhuǎn)換成數(shù)字信號,存到主機(jī)芯片 8031 進(jìn)行處 理,在傳輸?shù)?8279 到 LED 顯示器。如果轉(zhuǎn)速超過規(guī)定速度,通過 8031 發(fā)出指令到報警 電路報警。 單片
14、機(jī)控制步進(jìn)電機(jī)工作是,電機(jī)在幾十伏,甚至一百幅的高壓條件下工作,而單 片機(jī)則在 5V 的低壓條件下工作,一旦步進(jìn)電機(jī)的電壓竄到單片機(jī)部分,竟會引起單片機(jī) 損壞;或者步進(jìn)電機(jī)部分的有關(guān)信號干擾單片機(jī),也會引起系統(tǒng)工作失誤。故單片機(jī)與 不進(jìn)電極之間的硬件接口一般需要進(jìn)行電壓隔離;對于四相步進(jìn)電機(jī),需要四路控制電 路,每一路控制步進(jìn)電機(jī)的一相;有時需要步進(jìn)電機(jī)以不同的速度工作,不適應(yīng)不同的 目的,硬件接口中將包括工作頻率發(fā)生器。 第 2 章 系統(tǒng)軟件設(shè)計 2.12.1 顯示子程序的設(shè)計顯示子程序的設(shè)計 圖 2.1 顯示程序流程圖 8279 的初始化程序如下: INIT: MOV DPTR,#7FFF
15、H ;置 8279 命令/狀態(tài)口地址 MOV A,#0D1H ;置清顯示命令字 MOVX DPTR,A ;送清顯示命令 WEIT: MOVX A,DPTR ;讀狀態(tài) JB ACC.7,WEIT ;等待清顯示 RAM 結(jié)束 MOV A,#34H ;置分頻系數(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 R
16、7,#08H ;8 位顯示 MOV A,#90H ;置顯示命令字 MOVX DPTR,A ;送顯示命令 MOV DPTR,#7FFEH ;置數(shù)據(jù)口地址 LP: MOV A,R0 ;取顯示數(shù)據(jù) ADD A,#6 ;加偏移量 MOVC A,APC ;查表,取得數(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
17、,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è)計 圖 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 命令 MO
18、V DPTR,#7FFEH ;置數(shù)據(jù)口地址 MOVX A,DPTR ;讀數(shù)據(jù) LJMP KEY1 ;轉(zhuǎn)鍵值處理程序 PKYR: POP B 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,
19、#0FEH; 設(shè)置首列掃描字 MOVR4,#00H; 保存首列號 LK4: MOVDPTR,#7F01H; 列掃描字送至 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
20、行無鍵按下,轉(zhuǎn) LTHR MOVA,#10H; 有鍵按下,設(shè)置行首鍵? AJMP LKP; 轉(zhuǎn)求鍵號 LTHR:JB ACC.3,NEXT; 第 3 行無鍵按下,查下一列 MOV A,#18H; 有鍵按下,設(shè)置行首鍵 LKP:ADD A,R4 ; 求鍵號,鍵號=行首鍵號+列號 PUSHACC ; 保護(hù)鍵號 LK3:ACALLKS1 ; 等待鍵釋放 JNZLK3 ; 鍵未釋放,繼續(xù)等待 POPACC; 鍵釋放,鍵號送 A AJMPOVER; 鍵掃描結(jié)束 NEXT:INC R4; 列號加 1,指向下一列 MOVA,R2; 判斷 8 列掃描完否 JNBACC.7,KND; 8 列掃描完,繼續(xù) RL
21、A; 掃描字左移一位 MOVR2,A; 送掃描字 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)程序流程圖 圖 2.3 正反轉(zhuǎn)程序流程圖 主程序如下: CON: MOV R3, #
22、 N MOV TMOD , # 10H MOV TL1 , # LOW MOV TH1 , # H IGH JNB FLAG ,LEFT MOV R0 , RM AJMP TIME - S LEFT: MOV R0 , LM TIME: SETB EA SETB ET1 SETB TR1 步進(jìn)電機(jī)控制程序 P3.2 正轉(zhuǎn),P3.3 反轉(zhuǎn),P3.4 停止步進(jìn)電機(jī)接 P1.0P1.1P1.2P1.3 ORG 00h STOP: ORL P1,#0FFh; 步進(jìn)電機(jī)停止 LOOP: JNB P3.2,FOR2; 如果 P3.2 按下正轉(zhuǎn) JNB P3.3,REV2 ; 如果 P3.3 按下反轉(zhuǎn) JN
23、B P3.4,STOP1; 如果 P3.4 按下停止 JMP LOOP; 反復(fù)監(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)動的速度 INC R0; 取下一個碼 JMP FOR1; 繼續(xù)正轉(zhuǎn) REV: MOV
24、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 按下停止 JNB P3.3,REV2; 如果 P3.3 按下反轉(zhuǎn) CALL DELAY; 轉(zhuǎn)動的速度 INC R0; 取下一個碼 JMP REV1; 繼續(xù)反轉(zhuǎn) STOP1: CALL DELAY; 按 P3.4 的消除抖動 JNB P3.4,$; P3.4 放開否? CALL DELA
25、Y; 放開消除抖動 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; 步進(jìn)電機(jī)的轉(zhuǎn)速 20MS D1:MOV R2,#248; DJNZ R2,$ DJNZ R1,D1 RET TABLE: DB 03h,09h,0Ch,06h; 正轉(zhuǎn)表 DB 00; 正轉(zhuǎn)結(jié)束 DB
26、 03h,06h,0Ch,09h; 反轉(zhuǎn) DB 00; 反轉(zhuǎn)結(jié)束 END 2.3.2 轉(zhuǎn)速快慢程序流程圖 圖 2.4 轉(zhuǎn)速快慢程序流程圖 步進(jìn)電機(jī)正反快慢程序 ORG 00h x1: MOV R3,#48 一圈 48 步 START: MOV R0,#00h 正轉(zhuǎn)取碼初值 START1: MOV P1,#0FFh; 先停止 MOV A,R0 MOV DPTR,#TABLE MOVC A,A+DPTR JZ START; 是否到了結(jié)束碼 00? CPL A MOV P1,A; 輸出運(yùn)轉(zhuǎn) CALL DELAY; 調(diào)用慢速的延時轉(zhuǎn)動 INC R0; 取碼指針加 1 取下一個碼 DJNZ R3,STA
27、RT1; 是否走了 48 步? MOV R3,#48; 是則重新設(shè)定 48 步 START2: MOV P1,#0FFh MOV R0,#05; 逆轉(zhuǎn)的取碼初值 START3:MOV A,R0; MOV DPTR,#TABLE MOVC A,A+DPTR JZ START2 CPL A MOV P1,A CALL DELAY2 INC R0 DJNZ R3,START3 JMP x1; 重復(fù)開始 DELAY: ; 延時程序 (慢速) MOV R7,#255 D1: MOV R6,#50 D2: DJNZ R6,D2 DJNZ R7,D1 RET DELAY2: ; 延時程序 (快速) MOV
28、R5,#255 D3:MOV R2,#25 D4: DJNZ R2,D4 DJNZ R5,D3 RET TABLE: DB 03h,09h,0Ch,06h; 正轉(zhuǎn)表 DB 00 DB 06h,0Ch,09h,03h; 反轉(zhuǎn)表 DB 00 END 2.42.4 定時中斷流程圖定時中斷流程圖 圖 2.5 中斷子程序流程圖 中斷服務(wù)程序如下: INTTO: PUSH A PUSH PSW MOV A , R0 MOV P1 ,A INC R0 MOV A , # 00H XRL A , R0 JNZ NEXT MOV A , R0 CLR C SUBB A , # 03H MOV R0 , A NE
29、XT: DJNZ R3 , RETU CLR ET1 CLR EA RETU: POP PSW POP A RETI 利用軟件形成脈沖序列的程序清單: PULSE_S: MOVR7,#NUM; 設(shè)定脈沖個數(shù) PUSHA ; 保護(hù)現(xiàn)場 PUSHPSW LOOP: SETBP1.0; 輸出高電平 ACALL DELAY1 ; 延時 CLRP1.0; 輸出低電平 ACALL DELAY2 ; 延時 DJNZR7,LOOP;R70, 繼續(xù)輸出脈沖 POPPSW ; 恢復(fù)現(xiàn)場 POPA RET 定時中斷子程序: TIME0: CLREA ; 關(guān)中斷 INC30H MOVA,30H XRLA,#50H ;
30、 判斷是否到 8 秒 JZ S_8 ; 8 秒定時到,轉(zhuǎn)至 S_8 AJMPRECOUN ; 未到 8 秒,繼續(xù)計時 S_8:SETBP3.2; 觸發(fā)外部中斷 0 NOP CLRP3.2 NOP RECOUN: MOVTH0,#3CH MOVTL0,#0B0H ; 設(shè)定定時器初值 SETBEA ; 開中斷 RETI; 中斷返回 中斷子程序 T_CON: PUSHA; 保護(hù)現(xiàn)場 PUSHPSW MOVR7,#N; 設(shè)定控制步數(shù) JNBFLAG,LEFT ; 判斷旋轉(zhuǎn)方向 RIGHT: MOVR0,RM; 正轉(zhuǎn)模型起始地址 AJMPROTATE LEFT: MOVR0,LM ROTATE:MOV
31、A,R0; 取第一拍控制模型 MOVP1,A; 輸出第一拍控制模型 ACALL DELAY1 ; 延時 INCR0 MOVA,R0; 取第二拍控制模型 MOVP1,A; 輸出第二拍控制模型 ACALL DELAY1 ; 延時 INCR0 MOVA,R0; 取第三拍控制模型 MOVP1,A; 輸出第三拍控制模型 ACALL DELAY1 ; 延時 DJNZR7,ROTATE ; 未走完要求的步數(shù),繼續(xù) POPPSW ; 恢復(fù)現(xiàn)場 POP A RET;返回 2.52.5 語音報警系統(tǒng)語音報警系統(tǒng) 該系統(tǒng)采用專用集成語音芯片,將所要播放的語音信息一次性燒錄到存儲器內(nèi)。當(dāng) 檢測電路檢測到報警信號出現(xiàn)時
32、,微處理器送出所要播報的語句地址信號,控制語音芯 片播放對應(yīng)的原理圖語音報警原理圖信息。其原理圖 報警 檢測 電路 控制 電路 語 音 調(diào) 節(jié) 揚(yáng) 聲 器 語音 揭反 電路 報警 數(shù)據(jù) 控制 語音 震蕩信 號 圖 2.6 語音報警系統(tǒng)原理框圖 軟件的設(shè)計 采用芯片外接寄存器,脈沖觸發(fā)方式。當(dāng)報警信號出現(xiàn),未處理報警語句的地址信 息送到寄存器,同時控制信息觸發(fā)寄存器的 CLK 引腳,地址信息存儲器。芯片收到地址 信息后即發(fā)出報警音,由于地址信息在寄存器的存儲,在脈沖觸發(fā)方式下,報警信息將 反復(fù)播報,當(dāng)報警信號消失,未處理器送出報警停止信號(00000000),即實(shí)現(xiàn)語音報 警信號停止。 2.62
33、.6 主程序設(shè)計主程序設(shè)計 步進(jìn)電機(jī)的旋轉(zhuǎn)方向和內(nèi)部繞組的通電順序及通電方式有密切關(guān)系。 對于四相八拍的工作方式: 正相旋轉(zhuǎn):AABBBCCCDDDAA 反相旋轉(zhuǎn):ADADDCCCBBBAA 四相八拍步進(jìn)電機(jī)控制程序: ORG 2000H ROUT1: MOV A, #N JNB 00H, LP2 LP1: MOV P1,#01H ACALL DELAY DEC A JZ DONE MOV P1,#03H ACALL DELAY DEC A JZ DONE MOV P1,#02H ACALL DELAY DEC A JZ DONE MOV P1,#06H ACALL DELAY DEC A J
34、Z DONE MOV P1,#04H ACALL DELAY DEC A JZ DONE MOV P1,#0CH ACALL DELAY DEC A JZ DONE MOV P1,#08H ACALL DELAY DEC A JZ DONE MOV P1,#09H ACALL DELAY DEC A JNZ DONE AJMP DONE LP2: MOV P1,#01H ACALL DELAY DEC A JZ DONE MOV P1,#09H ACALL DELAY DEC A JZ DONE MOV P1,#08H ACALL DELAY DEC A JZ DONE MOV P1,#0CH ACALL DELAY DEC A JZ DONE MOV P1,#04H ACALL DELAY DEC A JZ DONE MOV P1,#06H ACALL DELAY DEC A JZ DONE
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 歷年課題申報書查看
- 銅鼓文化課題項(xiàng)目申報書
- 高校 工會課題申報書
- 體育課題申報評審書范文
- 合作投資酒店意向合同范本
- 人防車位產(chǎn)權(quán)合同范本
- 單價工裝采購合同范本
- 合同范本可以代替律師證
- 少數(shù)民族文化課題申報書
- 不交金合同范本
- 2025年深圳市高三一模英語試卷答案詳解講評課件
- 2025年黑龍江民族職業(yè)學(xué)院單招職業(yè)技能測試題庫附答案
- 2025年黑龍江旅游職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫一套
- 年產(chǎn)60萬噸摻混肥項(xiàng)目可行性研究報告申請立項(xiàng)
- 2025年2月《公共安全視頻圖像信息系統(tǒng)管理?xiàng)l例》學(xué)習(xí)解讀課件
- 山東省聊城市冠縣2024-2025學(xué)年八年級上學(xué)期期末地理試卷(含答案)
- 2025年江西青年職業(yè)學(xué)院高職單招職業(yè)技能測試近5年常考版參考題庫含答案解析
- 全套教學(xué)課件《工程倫理學(xué)》
- 江蘇省建筑與裝飾工程計價定額(2014)電子表格版
- 2024年山東經(jīng)貿(mào)職業(yè)學(xué)院高職單招(英語/數(shù)學(xué)/語文)筆試歷年參考題庫含答案解析
- 初中物理校本教材《物理之窗》內(nèi)容
評論
0/150
提交評論