版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 單片機(jī)課程設(shè)計 </p><p><b> 摘要</b></p><p> 步進(jìn)電機(jī)是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件。在非超載的情況下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù),而不受負(fù)載變化的影響,即給電機(jī)加一個脈沖信號,電機(jī)則轉(zhuǎn)過一個步距角。這一線性關(guān)系的存在,加上步進(jìn)電機(jī)只
2、有周期性的誤差而無累積誤差等特點。使得在速度、位置等控制領(lǐng)域用步進(jìn)電機(jī)來控制變的非常的簡單。步進(jìn)電機(jī)的調(diào)速一般是改變輸入步進(jìn)電機(jī)的脈沖的頻率來實現(xiàn)步進(jìn)電機(jī)的調(diào)速,因為步進(jìn)電機(jī)每給一個脈沖就轉(zhuǎn)動一個固定的角度,這樣就可以通過控制步進(jìn)電機(jī)的一個脈沖到下一個脈沖的時間間隔來改變脈沖的頻率,延時的長短來具體控制步進(jìn)角來改變電機(jī)的轉(zhuǎn)速,從而實現(xiàn)步進(jìn)電機(jī)的調(diào)速。在本設(shè)計方案中采用AT89C51型單片機(jī)內(nèi)部的定時器改變CP脈沖的頻率從而實現(xiàn)對步進(jìn)電機(jī)
3、的轉(zhuǎn)速進(jìn)行控制,實現(xiàn)電機(jī)調(diào)速與正反轉(zhuǎn)的功能。 </p><p> 關(guān)鍵詞:步進(jìn)電機(jī), 單片機(jī), 調(diào)速系統(tǒng) ,數(shù)碼管,發(fā)光二極管。</p><p><b> 目錄</b></p><p><b> 摘要</b></p><p><b> 一、引 言1</b><
4、/p><p> 1.1 設(shè)計背景1</p><p> 1.2 設(shè)計要求4</p><p><b> 二、方案論證6</b></p><p> 2.1 方案的選擇6</p><p> 2.2 方案的論證仿真與分析8</p><p> 三、硬件電路設(shè)計9&l
5、t;/p><p> 3.1單片機(jī)模塊原理圖9</p><p> 3.3電機(jī)模塊原理圖10</p><p> 3.4 按鍵模塊原理圖10</p><p><b> 四、軟件設(shè)計11</b></p><p> 4.1 流程圖設(shè)計11</p><p> 4.2
6、匯編源程序12</p><p><b> 五、總結(jié)19</b></p><p><b> 六、參考文獻(xiàn)19</b></p><p><b> 一、引言</b></p><p><b> 1.1 設(shè)計背景</b></p><
7、p> 1.1.1、步進(jìn)電機(jī)工作原理</p><p> 一、步進(jìn)電動機(jī)是一種將電脈沖信號轉(zhuǎn)換成相應(yīng)角位移或線位移的電動機(jī), 它的運行需要專門的驅(qū)動電源,驅(qū)動電源的輸出受外部的脈沖信號控制。每一個脈沖信號可使步進(jìn)電機(jī)旋轉(zhuǎn)一個固定的角度,這個角度稱為步距角。脈沖的數(shù)量決定了旋轉(zhuǎn)的總角度,脈沖的頻率決定了電動機(jī)旋轉(zhuǎn)的速度,改變繞組的通電順序可以改變電機(jī)旋轉(zhuǎn)的方向。在數(shù)字控制系統(tǒng)中,它既可以用作驅(qū)動電動機(jī),也可以
8、用作伺服電動機(jī)。它在工業(yè)過程控制中得到廣泛的應(yīng)用,尤其在智能儀表和需要精確定位的場合應(yīng)用更為廣泛。 </p><p> 二、步進(jìn)電動機(jī)有三線式、五線式、六線式三種,但其控制方式均相同,必須以脈沖電流來驅(qū)動。若每旋轉(zhuǎn)一圈以200個勵磁信號來計算,則每個勵磁信號</p><p> 前進(jìn)1.8 度,其旋轉(zhuǎn)角度與脈沖數(shù)成正比,正、反轉(zhuǎn)可由脈沖順序來控制。 </p><p&g
9、t; 三、步進(jìn)電動機(jī)的勵磁方式可分為全部勵磁及半步勵磁,其中全步勵磁又有1相勵磁及2相勵磁之分,而半步勵磁又稱1-2相勵磁。圖為步進(jìn)電動機(jī)的控制等效電路,適應(yīng)控制A、B、/A、/B 的勵磁信號,即可控制步進(jìn)電動機(jī)的轉(zhuǎn)動。每輸出一個脈沖信號,步進(jìn)電動機(jī)只走一步。因此,依序不斷送出脈沖信號,即可步進(jìn)電動機(jī)連續(xù)轉(zhuǎn)動。</p><p> 四、28byj48是最普通的減速步進(jìn)電機(jī),最大轉(zhuǎn)速大概是14圈/分鐘。該電機(jī)要是
10、節(jié)拍太快的話,就不動了,而且還有一點異響。這個型號的電機(jī)最適合用于學(xué)習(xí),真正現(xiàn)實中用處不太大,無論是轉(zhuǎn)速、扭曲都不太理想,唯一有點就是價格便宜。ULN2003是達(dá)林頓陣列,能用這個驅(qū)動的步進(jìn)電機(jī)很少,而且受到電流限制,性能不理想。該減速比為64的,都適合精密旋轉(zhuǎn),但要速度不可觀。要想提高轉(zhuǎn)速可以考慮以L298N驅(qū)動,然后用28或者35步進(jìn)電機(jī)(不帶減速),稍微大一些,這樣達(dá)到30或60轉(zhuǎn)/分鐘比較容易,紅線接電源5V,橙色電線接P1.3
11、口,黃色電線接P1.2口,粉色電線接P1.1口,藍(lán)色接P1.0口。</p><p> 28BYJ48型步進(jìn)電機(jī)是四相八拍電機(jī),電壓為DC5V~DC12V。當(dāng)對步進(jìn)電機(jī)按一定順序施加一系列連續(xù)不斷的控制脈沖時,它可以連續(xù)不斷地轉(zhuǎn)動。每一個脈沖信號使得步進(jìn)電機(jī)的某一相或兩相繞組的通電狀態(tài)改變一次,也就對應(yīng)轉(zhuǎn)子轉(zhuǎn)過一定的角度。當(dāng)通電狀態(tài)的改變完成一個循環(huán)時,轉(zhuǎn)子轉(zhuǎn)過一個齒距。四相步進(jìn)電機(jī)可以在不同的通電方式下運行,常
12、見的通電方式有單(單相繞組通電)四拍(A-B-C-D-A),雙(雙相繞組通電)四拍(AB-BC-CD-DA-AB),四相八拍(A-AB-B-BC-C-CD-D-DA-A)</p><p><b> 步進(jìn)電機(jī)時序表</b></p><p> 1.1.2、驅(qū)動ULN2003A工作原理</p><p> 輸入回路的電阻有差別,ULN2003是2
13、.7k,ULN2004是10.5k。靈敏度也有差別,簡單講2003適于5v的TTL,2004適宜6-15v的CMOS。驅(qū)動灌入電流:500mA,在大型儀器儀表系統(tǒng)中,經(jīng)常要用到伺服電機(jī)、步進(jìn)電機(jī)、各種電磁閥、泵等驅(qū)動電壓高且功率較大的器件。ULN2000、ULN2800高壓大電流達(dá)林管陣列系列產(chǎn)品就屬于這類可控大功率器件,由于這類器件功能強(qiáng)、應(yīng)用范圍語廣。因此,許多公司都生產(chǎn)高壓大電流達(dá)林頓晶體管陣列產(chǎn)品,從而形成了各種系列產(chǎn)品,ULN
14、2000、ULN2800系列就是美國Texas Instruments公司、美國Sprague公司開發(fā)的高壓大電流達(dá)林頓晶體管陣列產(chǎn)品。。在上述系列產(chǎn)品中,ULN2000系列能夠同時驅(qū)動7組高壓大電流負(fù)載,ULN2800系列則能夠同時驅(qū)動8組高壓大電流負(fù)載。美國Texas Instruments公司、美國Sprague公司生產(chǎn)的ULN2003A由7組達(dá)林頓晶體管陣列和相應(yīng)的電阻網(wǎng)絡(luò)以及鉗位二極管網(wǎng)絡(luò)構(gòu)成,具有同時驅(qū)動7組負(fù)載的能力,為單
15、片雙極型大功率高速集成電路。</p><p> 上圖中1B-7B為信號輸入端,1C-7C為輸出端,8腳為地,9腳為正電源,負(fù)載經(jīng)正電源到輸出端,當(dāng)相應(yīng)輸入端有信號電壓時對應(yīng)輸出端就導(dǎo)通</p><p><b> 1.2 設(shè)計要求</b></p><p> 本設(shè)計為步進(jìn)電機(jī)單片機(jī)控制系統(tǒng),其功能如下:</p><p>
16、; (1)對步進(jìn)電機(jī)的正反轉(zhuǎn)、加減速控制;</p><p> (2)控制按鈕分別為正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止鍵;</p><p> (3)能夠通過八位LED數(shù)碼管顯示當(dāng)前的轉(zhuǎn)動速度檔位</p><p> (4)能夠通過LED顯示燈的亮滅頻率反應(yīng)當(dāng)前的轉(zhuǎn)動速度</p><p> (5)能夠通過蜂鳴器來判斷當(dāng)前的轉(zhuǎn)動速度是否達(dá)到最大檔
17、位</p><p><b> 設(shè)計要求:</b></p><p> (1)獨立設(shè)計原理圖及硬件電路</p><p> (2)獨立編寫和調(diào)試相應(yīng)的程序</p><p> (3)掌握單片機(jī)和步進(jìn)電機(jī)的原理及電路的設(shè)計</p><p> (4)熟悉Protel、proteus和Keil等軟件的
18、使用方法</p><p> (5)熟悉模塊化設(shè)計的思想。</p><p><b> 二、方案論證</b></p><p><b> 2.1 方案的選擇</b></p><p> 方案一:電路圖主要元器件:AT89S52、ULN2003、四相五線制步進(jìn)電動機(jī),LED燈。</p>
19、<p><b> 方案一的優(yōu)點:。</b></p><p> 1、電路相對簡單,線路連接和編程比較容易。</p><p> 2、除了實現(xiàn)步進(jìn)電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止功能外,利用LED燈反應(yīng)電機(jī)轉(zhuǎn)速快慢</p><p><b> 方案一的缺點:</b></p><p>
20、此方案沒有了利用其他模塊的功能,只有一個正轉(zhuǎn)燈和一個反轉(zhuǎn)燈來顯示轉(zhuǎn)速的快慢,如果轉(zhuǎn)速過快,燈閃爍的速度過快,便失去了它們存在的意義。</p><p> 方案二:用到的元器件主要有:AT89S52芯片、ULN2003驅(qū)動芯片、四相五線制步進(jìn)電動機(jī)、LED燈,數(shù)字?jǐn)?shù)碼管 、蜂鳴器。</p><p><b> 方案二的優(yōu)點:</b></p><p&g
21、t; 1、元件比較齊全,能夠?qū)崿F(xiàn)對電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止的控制。</p><p> 2、此方案通過數(shù)碼管可以顯示出電機(jī)的轉(zhuǎn)速檔位。</p><p> 3、此方案通過蜂鳴器可以顯示出電機(jī)的最高、低轉(zhuǎn)速檔位。</p><p><b> 方案二的缺點:</b></p><p> 1、電路比較復(fù)雜,編程也不
22、簡潔。</p><p> 2、單片機(jī)I/O口占用較多,電機(jī)的轉(zhuǎn)速大小無法用數(shù)碼管動態(tài)顯示</p><p> 2.2 方案的論證仿真與分析</p><p> 以上各單元電路分別設(shè)計論證,對電路進(jìn)行總和,分為系統(tǒng)主體和驅(qū)動電路兩大塊。系統(tǒng)整體硬件連接圖如上圖所示。在繪制電路時,利用了Proteus進(jìn)行仿真。并且方案二采用LED顯示,數(shù)碼管顯示也在、硬件連接方面雖然
23、顯得較為復(fù)雜,但是設(shè)計的要求還是能達(dá)到,還擴(kuò)展了其他功能,在不同的應(yīng)用場合下配合使用的芯片業(yè)不同,根據(jù)本設(shè)計的要求,最終選擇了方案二。</p><p><b> 三、硬件電路設(shè)計</b></p><p> 3.1單片機(jī)模塊原理圖</p><p> 3.2數(shù)碼管模塊原理圖</p><p> 3.3電機(jī)模塊原理圖&l
24、t;/p><p> 3.4 按鍵模塊原理圖</p><p><b> 四、軟件設(shè)計</b></p><p><b> 4.1 流程圖設(shè)計</b></p><p> 開始初始化 S0是否按下? Y NS1是否按下?</p>&l
25、t;p> Y 反轉(zhuǎn) 正轉(zhuǎn)當(dāng)前運轉(zhuǎn)方向的速度檔位循環(huán) 加速</p><p> S4是否按下? Y N</p><p> S5是否按下? N S6是否按下? Y電機(jī)停止</p><p><b> 4.2 匯編源程
26、序</b></p><p><b> ORG 0000H</b></p><p> LJMP START</p><p><b> ORG 0100H</b></p><p> START:MOV P1,#0FFH </p><p> MOV DPT
27、R,#TAB</p><p> CALL KEYHN;采用矩陣式鍵盤的掃描</p><p><b> JNZ HAVE</b></p><p><b> JMP START</b></p><p> HAVE:MOV R6,#100</p><p> CALL
28、DELAY</p><p> CALL KEYHN</p><p><b> JNZ TRUE</b></p><p><b> JMP START</b></p><p> TRUE:MOV P3,#0EFH</p><p><b> MOV A,P3&
29、lt;/b></p><p> JB ACC.0,L1 ;S0按下跳正轉(zhuǎn)</p><p><b> JMP ZZ</b></p><p> L1:JB ACC.1,L2 ;S1按下跳反轉(zhuǎn)</p><p><b> JMP FZ</b></p><p>
30、 L2:JB ACC.2,START;S2按下跳停止</p><p> JMP TZ </p><p> ZZ:CALL JC1 ;去抖動</p><p> MOV P1,#0FEH;電機(jī)正轉(zhuǎn)(3檔)循環(huán),LED1燈亮</p><p> SS0:CPL P1.0 ;LED1燈閃爍</p&g
31、t;<p> MOV P0,#0B0H ;數(shù)碼管顯示3</p><p> MOV R1,#64 </p><p> ZZ1:MOV R0,#0</p><p> ZZ2:MOV A,R0</p><p> MOVC A,@A+DPTR</p><p><b> JZ ZZ
32、1</b></p><p><b> CALL LOOP</b></p><p> JB ACC.0,LL1 ;S4按下跳轉(zhuǎn)到正轉(zhuǎn)4檔</p><p> JMP ZJIASU1</p><p> LL1:JB ACC.1,LL2 ;S5按下跳轉(zhuǎn)到正轉(zhuǎn)2檔</p><p>
33、; JMP ZJIANSU1</p><p> LL2:JB ACC.2,LL3 ;S6按下跳轉(zhuǎn)到停止</p><p><b> JMP TZ</b></p><p> LL3:MOV R6,#150</p><p> CALL DELAY</p><p> DJNZ R1,ZZ2
34、</p><p> LJMP SS0 </p><p> ZJIASU1:CALL JC1 ;去抖動</p><p> MOV P1,#0EEH ;正轉(zhuǎn)4檔循環(huán),LED1、4燈亮</p><p> SS1:CPL P1.4 ;LED4燈閃爍</p><p>
35、 MOV P0,#99H ;數(shù)碼管顯示4</p><p> MOV R1,#64</p><p> JI1:MOV R0,#0</p><p> JI2:MOV A,R0</p><p> MOVC A,@A+DPTR</p><p><b> JZ JI1</b></p&
36、gt;<p><b> CALL LOOP</b></p><p> JB ACC.0,LLL0;S4按下跳轉(zhuǎn)到正轉(zhuǎn)5檔</p><p> JMP ZJIASU2</p><p> LLL0:JB ACC.1,LLL1 ;S5按下跳轉(zhuǎn)到正轉(zhuǎn)3檔</p><p><b> JMP
37、 ZZ</b></p><p> LLL1:JB ACC.2,LLL2 ;S6按下跳轉(zhuǎn)到停止</p><p><b> JMP TZ</b></p><p> LLL2:MOV R6,#100 </p><p> CALL DELAY</p><p> DJN
38、Z R1,JI2</p><p> LJMP SS1 </p><p> ZJIASU2:CALL JC1;去抖動</p><p> MOV P1,#0EEH;正轉(zhuǎn)5檔循環(huán),LED1、4燈亮</p><p> SS2:CPL P1.4 ;LED4燈閃爍</p><p> S
39、ETB P1.7</p><p> MOV P0,#92H;數(shù)碼管顯示5</p><p> MOV R1,#64</p><p> JI3:MOV R0,#0</p><p> JI4:MOV A,R0</p><p> MOVC A,@A+DPTR</p><p><
40、b> JZ JI3</b></p><p><b> CALL LOOP</b></p><p> JB ACC.0,FMQ1 ;S4按下已達(dá)到最快檔,蜂鳴器提示</p><p><b> CLR P1.7</b></p><p><b> JMP LLL4&l
41、t;/b></p><p> FMQ1:JB ACC.1,LLL3;S5按下跳到正轉(zhuǎn)4檔</p><p> JMP ZJIASU1</p><p> LLL3:JB ACC.2,LLL4;S6按下跳到停止</p><p><b> JMP TZ</b></p><p> LLL
42、4:MOV R6,#50</p><p> CALL DELAY</p><p> DJNZ R1,JI4</p><p> LJMP SS2 </p><p> ZJIANSU1:CALL JC1 ;去抖動</p><p> MOV P1,#0DEH ;正轉(zhuǎn)2檔循環(huán),LED1、5燈亮</
43、p><p> SS3:CPL P1.5 ;LED5燈閃爍</p><p> MOV P0,#0A4H ;數(shù)碼管顯示2</p><p> MOV R1,#64</p><p> JI5:MOV R0,#0</p><p> JI6:MOV A,R0</p><p> MOVC A
44、,@A+DPTR</p><p><b> JZ JI5</b></p><p><b> CALL LOOP</b></p><p> JB ACC.0,LLL5;S4按下跳到正轉(zhuǎn)3檔</p><p><b> JMP ZZ</b></p><
45、p> LLL5:JB ACC.1,LLL6;S5按下跳到正轉(zhuǎn)1檔</p><p> JMP ZJIANSU2</p><p> LLL6:JB ACC.2,LLL7;S6按下跳到停止</p><p><b> JMP TZ</b></p><p> LLL7:MOV R6,#200</p&g
46、t;<p> CALL DELAY</p><p> DJNZ R1,JI6</p><p><b> LJMP SS3</b></p><p> ZJIANSU2:CALL JC1;去抖動</p><p> MOV P1,#0DEH;正轉(zhuǎn)1檔循環(huán)顯示,LED1、5燈亮</p>
47、<p> SS4:CPL P1.5;LED5燈閃爍</p><p><b> SETB P1.7</b></p><p> MOV P0,#0F9H;數(shù)碼管顯示1</p><p> MOV R1,#64</p><p> JI7:MOV R0,#0</p><p>
48、 JI8:MOV A,R0</p><p> MOVC A,@A+DPTR</p><p><b> JZ JI7</b></p><p><b> CALL LOOP</b></p><p> JB ACC.0,FMQ2 ;S4按下跳到正轉(zhuǎn)2檔</p><p>
49、JMP ZJIANSU1</p><p> FMQ2:JB ACC.1,LLL8;S5按下已達(dá)到最低檔,蜂鳴器提示</p><p><b> CLR P1.7</b></p><p><b> JMP LLL9</b></p><p> LLL8:JB ACC.2,LLL9;S6按下跳到
50、停止</p><p><b> JMP TZ</b></p><p> LLL9:MOV R6,#250</p><p> CALL DELAY</p><p> DJNZ R1,JI8</p><p> LJMP SS4 </p><p> FZ:CALL
51、 JC1;去抖動</p><p> MOV P1,#0FDH;電機(jī)反轉(zhuǎn)(3檔)循環(huán),LED2燈亮</p><p> SS5:CPL P1.1 ;LED2燈閃爍</p><p> MOV P0,#0B0H ;數(shù)碼管顯示3</p><p> MOV R1,#64</p><p> FZ1:MO
52、V R0,#09</p><p> FZ2:MOV A,R0</p><p> MOVC A,@A+DPTR</p><p><b> JZ FZ1</b></p><p><b> CALL LOOP</b></p><p> JB ACC.0,LL4 ;
53、S4按下跳轉(zhuǎn)到反轉(zhuǎn)4檔</p><p> JMP FJIASU1</p><p> LL4:JB ACC.1,LL5 ;S5按下跳轉(zhuǎn)到反轉(zhuǎn)2檔</p><p> JMP FJIANSU1</p><p> LL5:JB ACC.2,LL6 ;S6按下跳轉(zhuǎn)到停止</p><p><b> JM
54、P TZ</b></p><p> LL6:MOV R6,#150</p><p> CALL DELAY</p><p> DJNZ R1,FZ2</p><p> LJMP SS5 </p><p> FJIASU1:CALL JC1 ;去抖動</
55、p><p> MOV P1,#0EDH ;反轉(zhuǎn)4檔循環(huán),LED2、4燈亮</p><p> SS6:CPL P1.4 ;LED4燈閃爍</p><p> MOV P0,#99H ;數(shù)碼管顯示4</p><p> MOV R1,#64</p><p> JIN1:MOV R0,#09</p>
56、<p> JIN2:MOV A,R0</p><p> MOVC A,@A+DPTR</p><p><b> JZ JIN1</b></p><p><b> CALL LOOP</b></p><p> JB ACC.0,FFF0 ;S4按下跳轉(zhuǎn)到反轉(zhuǎn)5檔<
57、/p><p> JMP FJIASU2</p><p> FFF0:JB ACC.1,FFF1 ;S5按下跳轉(zhuǎn)到反轉(zhuǎn)3檔</p><p><b> JMP FZ</b></p><p> FFF1:JB ACC.2,FFF2 ;S6按下跳轉(zhuǎn)到停止</p><p><b&g
58、t; JMP TZ</b></p><p> FFF2:MOV R6,#100</p><p> CALL DELAY</p><p> DJNZ R1,JIN2</p><p> LJMP SS6 </p><p> FJIASU2:CALL JC1 ;去抖動</p>
59、<p> MOV P1,#0EDH ;反轉(zhuǎn)5檔循環(huán) ,LED2、4燈亮</p><p> SS7:CPL P1.4 ;LED4燈閃爍</p><p><b> SETB P1.7</b></p><p> MOV P0,#92H</p><p> MOV R1,#64</p>
60、<p> JIN3:MOV R0,#09</p><p> JIN4:MOV A,R0</p><p> MOVC A,@A+DPTR</p><p><b> JZ JIN3</b></p><p><b> CALL LOOP</b></p><p>
61、 JB ACC.0,FMQ3;S4按下已達(dá)到最快檔,蜂鳴器提示</p><p><b> CLR P1.7</b></p><p><b> JMP FFF4</b></p><p> FMQ3:JB ACC.1,FFF3 ;S5按下跳轉(zhuǎn)到反轉(zhuǎn)4檔</p><p> JMP FJIA
62、SU1</p><p> FFF3:JB ACC.2,FFF4 ;S6按下跳轉(zhuǎn)到停止</p><p><b> JMP TZ</b></p><p> FFF4:MOV R6,#50</p><p> CALL DELAY</p><p> DJNZ R1,JIN4</p&
63、gt;<p> LJMP SS7 </p><p> FJIANSU1:CALL JC1 ;去抖動</p><p> MOV P1,#0DDH ;反轉(zhuǎn)2檔循環(huán),LED2、5燈亮</p><p> SS8:CPL P1.5 ;LED5燈閃爍</p><p> MOV P0,#0A4H ;
64、數(shù)碼管顯示2</p><p> MOV R1,#64</p><p> JIN5:MOV R0,#09</p><p> JIN6:MOV A,R0</p><p> MOVC A,@A+DPTR</p><p><b> JZ JIN5</b></p><p>
65、<b> CALL LOOP</b></p><p> JB ACC.0,FFF5;S4按下跳轉(zhuǎn)到反轉(zhuǎn)3檔</p><p><b> JMP FZ</b></p><p> FFF5:JB ACC.1,FFF6;S5按下跳轉(zhuǎn)到反轉(zhuǎn)1檔</p><p> JMP FJIANSU2
66、</p><p> FFF6:JB ACC.2,FFF7 ;S6按下跳轉(zhuǎn)到停止</p><p><b> JMP TZ</b></p><p> FFF7:MOV R6,#200</p><p> CALL DELAY</p><p> DJNZ R1,JIN6</p>
67、<p> LJMP SS8 </p><p> FJIANSU2:CALL JC1;去抖動</p><p> MOV P1,#0DDH;反轉(zhuǎn)1檔循環(huán),LED2、5燈亮</p><p> SS9:CPL P1.5;LED5燈閃爍</p><p><b> SETB P1.7</b>
68、</p><p> MOV P0,#0F9H;數(shù)碼管顯示1</p><p> MOV R1,#64</p><p> JIN7:MOV R0,#09</p><p> JIN8:MOV A,R0</p><p> MOVC A,@A+DPTR</p><p><b>
69、JZ JIN7</b></p><p><b> CALL LOOP</b></p><p> JB ACC.0,FMQ4 ;S4按下跳轉(zhuǎn)到反轉(zhuǎn)2檔</p><p> JMP FJIANSU1</p><p> FMQ4:JB ACC.1,FFF8;S5按下達(dá)到最低檔,蜂鳴器提示</p>
70、;<p><b> CLR P1.7</b></p><p><b> JMP FFF9 </b></p><p> FFF8:JB ACC.2,FFF9 ;S4按下跳轉(zhuǎn)到停止</p><p><b> JMP TZ</b></p><p> FFF9
71、:MOV R6,#250</p><p> CALL DELAY</p><p> DJNZ R1,JIN8</p><p> LJMP SS9 ;</p><p> TZ:MOV P1,#0BFH ;LED6燈閃爍</p><p> MOV P0,#0C0H ;數(shù)碼管顯示0</p>
72、<p> MOV P2,#00H ;電動機(jī)停止轉(zhuǎn)動</p><p><b> CALL D100</b></p><p> LJMP START</p><p> KEYHN:MOV P3,#0FH ;鍵盤掃描子程序</p><p><b> MOV A,P3</b
73、></p><p><b> CPL A</b></p><p> ANL A,#0FH</p><p><b> RET</b></p><p> LOOP:INC R0 ;循環(huán)控制</p><p><b> MOV P2,A&l
74、t;/b></p><p> MOV P3,#0DFH</p><p><b> MOV A,P3</b></p><p> MOV R6,#100</p><p> CALL DELAY</p><p><b> RET</b></p><
75、;p> JC1:MOV A,P3 ;去抖動程序</p><p> JNB ACC.0,JC1</p><p> JNB ACC.1,JC1</p><p> MOV R6,#50</p><p> CALL DELAY</p><p><b> MOV A,P3</b>
76、</p><p> JNB ACC.0,JC1</p><p> JNB ACC.1,JC1</p><p><b> RET</b></p><p> DELAY:NOP ;電機(jī)轉(zhuǎn)速的延時控制</p><p><b> NOP</b></p&
77、gt;<p><b> NOP</b></p><p><b> NOP </b></p><p><b> NOP</b></p><p> DJNZ R6,DELAY</p><p> RET </p><p>
78、 D100:MOV R4,#5</p><p> D1:MOV R5,#100</p><p> D2:MOV R6,#249</p><p><b> D3:NOP</b></p><p> DJNZ R6,D3</p><p> DJNZ R5,D2</p>
79、<p> DJNZ R4,D1</p><p><b> RET</b></p><p> TAB:DB 01H,03H,02H,06H,04H,0CH,08H,09H ;正轉(zhuǎn)表</p><p><b> DB 00H</b></p><p> DB 09H,08H,0CH,
80、04H,06H,02H,03H,01H ;反轉(zhuǎn)表</p><p><b> DB 00H</b></p><p><b> END</b></p><p><b> 五、總結(jié)</b></p><p> 通過本次課程設(shè)計我們學(xué)習(xí)到了許多書本上沒有的知識,通過自己查資
81、料和互相討論,對系統(tǒng)進(jìn)行整體設(shè)計后基本達(dá)到了要求,實現(xiàn)步進(jìn)電機(jī)正反加減速的控制并通過對方案的比較,綜合考慮,選用了最佳的方案,使我們對步進(jìn)電機(jī)有了更深刻的認(rèn)識,使自己將理論與實際相結(jié)合起來同時對單片機(jī)的設(shè)計及編程有了更深的了解,學(xué)會了很多。同時衷心感謝老師的指導(dǎo)。</p><p><b> 六、參考文獻(xiàn)</b></p><p> [1]李全利.單片機(jī)原理與接口技術(shù)
82、,高等教育出版社2009. </p><p> [2]余孟嘗.數(shù)字電子技術(shù)基礎(chǔ),高等教育出版社,2006 </p><p> [3]楊素行.模擬電子技術(shù)基礎(chǔ):高等教育出版社,2006. </p><p> [4]李忠杰,寧守信.步進(jìn)電動機(jī)應(yīng)用技術(shù),機(jī)械工業(yè)出版社,1998. </p><p> [5]顧繩谷,電機(jī)與拖動基礎(chǔ),機(jī)械工業(yè)版
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計--單片機(jī)控制步進(jìn)電機(jī)
- 單片機(jī)課程設(shè)計-單片機(jī)控制步進(jìn)電機(jī)
- 單片機(jī)-控制步進(jìn)電機(jī)課程設(shè)計
- 單片機(jī)課程設(shè)計--步進(jìn)電機(jī)控制
- 單片機(jī)課程設(shè)計報告——單片機(jī)控制步進(jìn)電機(jī)
- 單片機(jī)課程設(shè)計---步進(jìn)電機(jī)控制
- 單片機(jī)課程設(shè)計-步進(jìn)電機(jī)的控制
- 單片機(jī)課程設(shè)計步進(jìn)電機(jī)控制設(shè)計
- 單片機(jī)課程設(shè)計-步進(jìn)電機(jī)的控制
- 單片機(jī)課程設(shè)計--基于單片機(jī)的步進(jìn)電機(jī)控制
- 單片機(jī)課程設(shè)計--步進(jìn)電機(jī)角度控制
- 單片機(jī)課程設(shè)計---步進(jìn)電機(jī)控制 (2)
- 單片機(jī)課程設(shè)計——單片機(jī)控制步進(jìn)電機(jī)控制系統(tǒng)設(shè)計
- 單片機(jī)課程設(shè)計--步進(jìn)電機(jī)
- 單片機(jī)課程設(shè)計---步進(jìn)電機(jī)
- 基于單片機(jī)的步進(jìn)電機(jī)控制單片機(jī)課程設(shè)計
- 單片機(jī)課程設(shè)計報告--步進(jìn)電機(jī)控制設(shè)計
- 單片機(jī)課程設(shè)計-步進(jìn)電機(jī)
- 基于單片機(jī)的步進(jìn)電機(jī)控制課程設(shè)計
- 基于單片機(jī)的步進(jìn)電機(jī)控制課程設(shè)計
評論
0/150
提交評論