版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 設(shè)計內(nèi)容及要求</b></p><p> 在PC系統(tǒng)機里,設(shè)計總線接口電路以及功率驅(qū)動電路控制X、Y兩臺三相反應(yīng)式步進電機55BF004,用軟件完成脈沖分配任務(wù),由LED顯示X、Y兩臺步進電機的實際轉(zhuǎn)數(shù)。要求使步進電機X和Y以每分鐘6轉(zhuǎn)的速率正向旋轉(zhuǎn)10min、停3S;然后,使步進電機X以每分鐘30轉(zhuǎn)的速率反向旋轉(zhuǎn)10min,同時使Y以每分鐘50轉(zhuǎn)的速率反向旋
2、轉(zhuǎn)。</p><p><b> 設(shè)計原理</b></p><p> AT89C51芯片簡介:AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與
3、工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。外形及引腳排列如圖1。</p><p> XTAL1:振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端。</p><p> XTAL2:振蕩器反相
4、放大器的輸出端。</p><p> 時鐘振蕩器:AT89C51中有一個用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引起XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器。外接石英晶體及電容C1、C2接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對外接電容C1、C2雖然沒有十分嚴格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振
5、的難易程序及溫度穩(wěn)定性,如果使用石英晶體,推薦使用30pF左右,如果使用陶瓷諧振器建議選擇40pF左右。</p><p><b> 芯片主要特性</b></p><p> ·與MCS-51 兼容 ,4K字節(jié)可編程閃爍存儲器,壽命:1000寫/擦循環(huán),數(shù)據(jù)保留時間:10年 ·全靜態(tài)工作:0Hz-24Hz·三級程序存儲器鎖定,128
6、*8位內(nèi)部RAM ·32可編程I/O線,兩個16位定時器/計數(shù)器,5個中斷源 ·可編程串行通道,低功耗的閑置和掉電模式,片內(nèi)振蕩器和時鐘電路</p><p><b> 設(shè)計原理框圖</b></p><p> 設(shè)計程序代碼及流程圖</p><p><b> org 00h</b><
7、;/p><p> jmp disp ;顯示初始速度為0</p><p> stop:orl p1,#0ffh ; 步進電機停止</p><p> loop:jnb p0.0,for2 ; 如果p0.0按下正轉(zhuǎn)</p><p> jnb p0
8、.1,rev2 ; 如果p0.1按下反轉(zhuǎn)</p><p> jnb p0.2,stop1 ; 如果p0.2按下停止</p><p> jmp loop ;反復(fù)監(jiān)測鍵盤</p><p> for:mov r0,#00h ;正轉(zhuǎn)到tab取碼指針初值</p>&l
9、t;p> for1:mov a,r0 ;取碼</p><p> mov dptr,#table ;</p><p> movc a,@a+dptr</p><p> jz for ;是否到了結(jié)束碼00h</p><p> cpl a
10、 ;把acc反向</p><p> mov p1,a ;輸出到p1開始正轉(zhuǎn)</p><p> jnb p0.2,stop1 ; 如果p0.2按下停止</p><p> jnb p0.1,rev2 ; 如果p0.1按下反轉(zhuǎn)</p><p>
11、; call delay ;轉(zhuǎn)動的速度</p><p> inc r0 ;取下一個碼</p><p> jmp for1 ;繼續(xù)正轉(zhuǎn)</p><p> rev:mov r0,#05h ;反轉(zhuǎn)到tab取碼指針初值</p>&
12、lt;p> rev1:mov a,r0</p><p> mov dptr,#table ;取碼</p><p> movc a,@a+dptr</p><p> jz rev ;是否到了結(jié)束碼00h</p><p> cpl a ;把
13、acc反向</p><p> mov p1,a ;輸出到p1開始反轉(zhuǎn)</p><p> jnb p0.2,stop1 ; 如果p0.2按下停止</p><p> jnb p0.1,rev2 ; 如果p0.1按下反轉(zhuǎn)</p><p> call delay
14、 ;轉(zhuǎn)動的速度</p><p> inc r0 ;取下一個碼</p><p> jmp rev1 ;繼續(xù)反轉(zhuǎn)</p><p> stop1:call delay ; 按p0.2的消除抖動</p><p> jnb p0
15、.2,$ ; p0.2放開否?</p><p> call delay ;放開消除抖動</p><p><b> jmp stop</b></p><p> for2:call delay ; 按p0.0的消除抖動</p><p>
16、 jnb p0.0,$ ; p0.0放開否?</p><p> call delay ;放開消除抖動</p><p><b> jmp for</b></p><p> rev2:call delay ; 按p0.1的消除抖動</p>&l
17、t;p> jnb p0.1,$ ; p0.0放開否?</p><p> call delay ;放開消除抖動</p><p><b> jmp rev</b></p><p> delay:jnb p0.3,fast ;判斷p0.3是否按下</p>
18、<p> jnb p0.4,slow ;判斷p0.4是否按下</p><p> mov r1,#250 ;步進電機的轉(zhuǎn)速20ms</p><p> d1:mov r2,#248</p><p><b> djnz r2,$</b></p><p>
19、djnz r1,d1</p><p> mov a,#5 顯示速度</p><p> mov dptr,#tab</p><p> movc a,@a+dptr</p><p><b> mov p2,a</b></p><p><b&
20、gt; mov a,#4</b></p><p> mov dptr,#tab</p><p> MOVC A,@A+DPTR</p><p><b> MOV P3,A</b></p><p><b> ret</b></p><p> fast:m
21、ov r5,#150 ;加速</p><p> d2:mov r6,#148 </p><p><b> djnz r6,$</b></p><p> djnz r5,d2</p><p> mov a,#9 ;顯示速度</p
22、><p> mov dptr,#tab</p><p> movc a,@a+dptr</p><p><b> mov p2,a</b></p><p><b> mov a,#7</b></p><p> mov dptr,#tab</p><p
23、> MOVC A,@A+DPTR</p><p><b> MOV P3,A</b></p><p><b> ret</b></p><p> slow:mov r3,#75 ;減速</p><p> d3:mov r4,#48</p>
24、<p><b> djnz r4,$</b></p><p> djnz r3,d3</p><p> mov a,#1 ;顯示速度</p><p> mov dptr,#tab</p><p> movc a,@a+dptr</p><p>
25、<b> mov p2,a</b></p><p><b> mov a,#8</b></p><p> mov dptr,#tab</p><p> MOVC A,@A+DPTR</p><p><b> MOV P3,A</b></p><p&
26、gt;<b> ret</b></p><p><b> table:</b></p><p> db 03h,09h,0ch,06h ;正轉(zhuǎn)表</p><p> db 00 ;正轉(zhuǎn)結(jié)束</p><p> db 03h,06h,0ch,09h
27、 ;反轉(zhuǎn)</p><p> db 00 ;反轉(zhuǎn)結(jié)束</p><p> disp:mov a,#0 ;顯示子程序</p><p> mov dptr,#tab</p><p> movc a,@a+dptr</p><p><b&g
28、t; mov p2,a</b></p><p><b> mov a,#0</b></p><p> mov dptr,#tab</p><p> MOVC A,@A+DPTR</p><p><b> MOV P3,A</b></p><p><
29、b> jmp loop</b></p><p> tab: db 0c0h,0f9h,0a4h,0b0h,99h;數(shù)碼表</p><p> db 092h,082h,0f8h,080h,090h;</p><p><b> end</b></p><p><b> 仿真截圖</
30、b></p><p> 正反轉(zhuǎn)(速度54r/min)</p><p><b> 電機停止轉(zhuǎn)動</b></p><p> 加速(速度97r/min)</p><p> 減速(速度18r/min)</p><p> 停止(速度顯示保持停止為前的速度)</p><p&
31、gt;<b> PCB圖</b></p><p><b> 生成3D圖</b></p><p><b> 所用器件清單</b></p><p><b> 電阻若干</b></p><p><b> LED數(shù)碼顯示管</b>&
32、lt;/p><p><b> 芯片AT89C51</b></p><p><b> 按鍵開關(guān)</b></p><p><b> 電容</b></p><p><b> 晶振</b></p><p><b> 參考文獻
33、</b></p><p> 《單片機原理與應(yīng)用》</p><p><b> 人民郵電出版社</b></p><p> 《單片機原理及應(yīng)用技術(shù)》</p><p><b> 電子工業(yè)出版社</b></p><p><b> 收獲及體會</b&
34、gt;</p><p> 這次課程設(shè)計我初步學(xué)會了單片機的使用。也是第一次將編程與仿真結(jié)合在一起。</p><p> 經(jīng)過多次修改才做到了最后的結(jié)果。</p><p><b> 出現(xiàn)的問題:</b></p><p> 在第一次答辯時主要的問題是電機抖動和無法顯示。在改變延時程序后抖動大為減少,使用靜態(tài)顯示方法也將
35、顯示問題解決了。</p><p><b> 缺陷及改進的想法:</b></p><p> 這次的設(shè)計還有許多需要完善的地方</p><p> 如:變速是只能實現(xiàn)3種速度的變化。速度顯示是計算值,并不是電機實際值。</p><p> 改進的想法:速度的變化是通過改變延時程序來實現(xiàn)的。若以一個變量來控制延時,在每按一
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 步進電機課程設(shè)計報告---步進電機控制系統(tǒng)
- 步進電機控制a課程設(shè)計報告
- 步進電機課程設(shè)計報告--步進電機控制系統(tǒng)設(shè)計
- 步進電機課程設(shè)計
- 課程設(shè)計步進電機
- 步進電機的控制課程設(shè)計報告
- 步進電機課程設(shè)計
- 步進電機課程設(shè)計報告----步進馬達控制電路
- 步進電機課程設(shè)計--- 步進電機控制系統(tǒng)
- 步進電機課程設(shè)計--步進電機控制系統(tǒng)
- 課程設(shè)計---步進電機控制
- 步進電機控制系統(tǒng)設(shè)計課程設(shè)計報告
- 微機原理課程設(shè)計報告--步進電機設(shè)計
- 步進電機課程設(shè)計---步進電機控制系統(tǒng)的設(shè)計
- 課程設(shè)計-步進電機控制步進電機轉(zhuǎn)速實時控制
- 單片機課程設(shè)計報告--步進電機控制設(shè)計
- 步進電機專業(yè)課程設(shè)計--步進電機控制系統(tǒng)設(shè)計
- 步進電機控制課程設(shè)計--步進電機脈沖分配電路的設(shè)計
- 單片機課程設(shè)計--步進電機
- 步進電機轉(zhuǎn)速實時控制課程設(shè)計
評論
0/150
提交評論