MCS-51單片機電機轉速控制及測速顯示系統(tǒng)_第1頁
MCS-51單片機電機轉速控制及測速顯示系統(tǒng)_第2頁
MCS-51單片機電機轉速控制及測速顯示系統(tǒng)_第3頁
MCS-51單片機電機轉速控制及測速顯示系統(tǒng)_第4頁
MCS-51單片機電機轉速控制及測速顯示系統(tǒng)_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

MCS-51單片機電機轉速控制及測速顯示系統(tǒng)一、 系統(tǒng)總體方案選擇與說明本課題要求設計一個單片機電機轉速控制系統(tǒng)。給定信號經A/D轉換輸入到單片機(MCS-51)并顯示,單片機根據給定從D/A輸出相應的信號控制直流電機的轉速,并能對電機的轉速進行測量。1設計要求要求以MCS-51系列單片機為核心設計一個直流電機調速系統(tǒng),該系統(tǒng)具有顯示電動機轉速、輸入模擬量的功能。用6位LED 顯示。前兩位顯示AD,后兩位顯示輸入模擬量,最后兩位顯示電動機轉速,單位為轉/s, 電動機最大轉速為5000轉/min。其轉速由D/A轉換的模擬量控制。2設計思路1) 由地址瑣存器74LS273芯片實現動態(tài)顯示模塊,74LS273輸出端為段控,用于輸出所顯示的數值,P1.0-P1.5口位控,控制哪一位LED管亮,LED采用共陰極的接法;2) 選用89C51單片機,其內部有4K的寄存器,無需擴展外部存儲單元,還具有2個16位定時器/計數器,可以通過CPU內部定時,進行數據采集;3).ADC0809可將模擬量轉換為數字量,并將數字量送單片機;DAC0832可將從單片機輸出的數字量轉換為模擬量,并用模擬量控制直流電機;4) 用霍爾元件測電動機轉速。轉速的測量方法有兩種:頻率法:利用單片機內部定時器定時(定時時間1秒),再用一計數器對被測脈沖計數,所測脈沖個數即轉速值(轉/S)周期法:測量脈沖的周期,即利用定時期累計在被測脈沖的一個周期內機器周期的個數n。被測信號周期T=n*機器周期,被測信號頻率f=1/T??紤]到要用定時采樣的方法,同時又要將兩位轉速顯示出來,所以本設計中采用頻率法。一、 系統(tǒng)結構框圖與工作原理1系統(tǒng)結構框圖單片機89C51P0 INT0MD/A轉換A/D轉換+5VI/O測量2工作原理通過調節(jié)可變電阻,將模擬量送入AD轉換器,經AD轉換后通過P0口,將數字量送入單片機,單片機將數字量送I/O,并經74LS273鎖存,送數碼管顯示,同時將數字量送給DA,DA將數字量轉換為模擬量,用于控制直流電機的轉速。通過霍爾元件將測的電動機轉速脈沖信號接單片機的中斷INT0, 用工作寄存器R6對脈沖數進行即測量轉速值,又通過單片機將轉速值數碼管送顯示。三、各單元硬件設計及說明1.A/D轉換模塊設計與說明由于外界的模擬量不能直接被單片機8051直接識別,所以設置一個A/D轉換電路,將外來的模擬信號轉換成能被8051識別的數字信號進行處理。轉換電路由模數轉換器ADC0809來實現。 ADC0809是最常用的8位模數轉換器,屬于逐次逼近。ADC0809采用單一+5V供電,片內有帶鎖存功能的8路模擬開關,可對0+5V、8路模擬信號分時進行轉換,完成一次轉換的時間約需100s,數字輸出信號具有TTL三態(tài)鎖存器。 ADC0809功能簡述如下: 1) IN0IN7:8通道模擬量輸入信號; 2) D0D7:8位二進制數據輸出端,三態(tài)輸出; 3) ADDC、ADDB、ADDA:通道號選擇信號。用于選擇8路輸入之一進行A/D轉換。 4) START:啟動A/D轉換信號,正脈沖有效,當給出一個START信號后,轉換開始。脈沖寬度要求在200ns以上。5) EOC:轉換結束信號,START的上升沿使EOC變?yōu)榈碗娖?,A/D轉換完成,EOC變?yōu)楦唠娖健?) OE:輸出使能信號,高電平有效,當此信號有效時,打開輸出三態(tài)門,將轉換后的結果送至數據總線。 圖1.A/D轉換模塊接線圖2、89C51單片機芯片89C51是一個40引腳的集成電路,引腳如圖3:1、主電源引腳VCC和VSS VCC(40腳)接+5V電壓; VSS(20腳)接地。 2、外接晶體引腳XTAL1和XTAL2 3、控制或與其它電源復用引腳RST/VPD、ALE/PROG、PSEN和EA/VPP 4、輸入/輸出(I/O)引腳P0、P1、P2、P3(共32根) P0口(39腳至32腳):是雙向8位三態(tài)I/O口,在外接存儲器時,與地址總線的低8位及數據總線復用,能以吸收電流的方式驅動8個LS型的TTL負載。 P1口(1腳至8腳):是準雙向8位I/O口。由于這種接口輸出沒有高阻狀態(tài),輸入也不能鎖存,故不是真正的雙向I/O口。 P2口(21腳至28腳):是準雙向8位I/O口。在設計時用到P2.0作查詢口,檢測AD轉換是否結束。 P3口(10腳至17腳) 設計系統(tǒng)時用到的P3口線的第二功能定義如下:P3.2 12 INT0(外部中斷0) P3.4 14 T0(定時器0外部輸入) P3.6 16 WR(外部數據存儲器寫脈沖) P3.7 17 RD(外部數據存儲器讀脈沖) 圖2.8051模塊接線圖3、 D/A轉換模塊設計與說明DAC0832是CMOS工藝制造的8位單片模擬/數字(D/A)轉換器.DAC0832各引腳的功能如下: DI0DI7: 數據輸入線. ILE : 數據允許鎖存信號,高電平有效;CS: 輸入寄存器選擇信號,低電平有效.XFER: 數據傳送信號,低電平有效.VREF : 基準電源輸入引腳 . Rfb : 反饋信號輸入引腳,反饋電阻在芯片內部. IOUT1、IOUT2 : 電流輸出引腳.電流IOUT1、IOUT2 的和為常數,IOUT1、 IOUT2 隨DAC寄存器的內容線性變化. VCC: 電源輸入引腳.AGND: 模擬信號地. DGND: 數字地.圖3. D/A轉換模塊接線圖4、 LED數碼管動態(tài)顯示模塊 LED數碼管動態(tài)顯示器是1種由LED發(fā)光二極管組合顯示字符的顯示器件.它使用了8個LED發(fā)光二極管,其中7個用于顯示字符,1個用于顯示小數點,故通常稱之為7段(也有稱作8段)發(fā)光二極管數碼顯示器.LED數碼顯示器有兩種連接方法:(1)共陽極接法:把發(fā)光二極管的陽極連在一起構成公共陽極,使用時公共陽極接+5V,每個發(fā)光二極管的陰極通過電阻與輸入端相連. (2)共陰極接法: 把發(fā)光二極管的陰極連在一起構成公共陰極,使用時公共陰極接地.每個發(fā)光二極管的陽極通過電阻與輸入端相連.圖4. LED數碼管動態(tài)顯示模塊接線圖5、 電機轉速測定模塊 用霍爾元件測電動機轉速:霍爾元件工作原理是磁感應原理即電動機每轉一圈,霍爾元件檢測到一個磁感應信號,同時對外輸出一個負脈沖. 將此負脈沖送單片機,采用定時采樣法,對負脈沖進行計數,所得的計數值即電機每秒的轉速。圖5. 反饋模塊模塊接線圖6實驗平臺硬件總體接線:1).74LS273的O0O7接LED-ALED-DP,P1P5接LED6 LED1,74LS273的片選端CS273接CS2。2).ADC0809的片選端接CS0,AD轉換結束信號端EOC接P2.0,輸入端IN0接可變電阻。3).DAC0832的的片選端接CS1,輸出端DAOUT接DRU,轉速脈沖信號端SINGAL接INT0端。四、 軟件設計與說明(包括流程圖)1.程序流程圖啟動采樣定時啟動A/D測試A/D轉換結束 P3.7=1啟動D/A轉換D/A轉換結束啟動M霍爾元件初始化NYN開始顯示轉速值1).A/D轉換及D/A轉換部分A/D轉換有兩種方法;中斷法和查詢法。在設計中采用了查詢法,但查詢法會占用CUP的運行時間,只要在不影響動態(tài)顯示的情況下,也可以用查詢法。D/A轉換有三種工作方式:單緩沖、雙緩沖、直通方式。在設計中采用了雙緩沖方式,因為雙緩沖方式對數據接收和啟動轉換可以異步進行,即在對某數據轉換的同時,能進行下一數據的接收,以提高轉換速率。2).轉速的測量部分轉速測量的方法有兩種:頻率法:利用單片機內部定時器定時(定時時間1秒),再用一計數器對被測脈沖計數,所測脈沖個數即轉速值(轉/S)周期法:測量脈沖的周期,即利用定時期累計在被測脈沖的一個周期內機器周期的個數n。在設計中采用了頻率法,即定時采樣法。因為在設計過程中先用了周期法,但周期法是對負脈沖進行查詢,占用了CPU的運行時間,影響了動態(tài)顯示。所以改用定時采樣法,此方法是采用CPU內部定時,不占用CPU運行時間,在定時時間到時,對轉速進行采集。注:.定時器的計算定時器要求定時1秒,晶振頻率12MHz。晶振的一個工作周期12/12MHz=1us。啟用工作方式為1(16位的方式)。最大計數21665536。所有最大計數65.5ms。我們就取整數50ms。.定時1S的計算:500000C350H, 所以0FFFFH 0C350H0001H3CB0H。即TH0=3CH,TL0=0B0H。定時器TMOD =(01H),即選擇T0的1方式。3).動態(tài)顯示部分采用了74LS273芯片,因為參考書上有采用了74LS273進行動態(tài)顯示的內容。2.源程序各部分清單:;*;*主程序和中斷程序入口*;* ORG 0000HAJMP MAINORG 0003HLJMP INT0SORG 000BHJMP DVT0ORG 0030H;*;*初始化程序中的各變量,及定時初值*;* MAIN:SETB EX0 ;開INT0中斷 SETB ET0 ;開T0中斷 SETB EA ;開放CPU總中斷 SETB TR0 ;啟動T0 SETB IT0 ;INTO為邊沿觸發(fā)方式 MOV R6,#00H ;記數清零 MOV R2,#20 ;軟件計數器,減法計數DINGSHI:MOV TMOD,#01H ;定時器T0工作于方式1,定時50ms MOV TH0,#3CH ;寫入計數初值 MOV TL0,#0B0H ;*;* AD轉換 *;*LOOP:MOV DPTR,#0CFA0H ;ADC0809的入口地址 MOV A,#00H ;啟動AD MOVX DPTR,A WAIT:JNB P2.0,INT1S ;P2.0=0則轉INT1S JMP WAIT INT1S:MOVX A,DPTR ;讀取AD轉換值 MOV R3,A ;將AD轉換值存入R3;*;* DA轉換 *;*DACH:MOV DPTR,#0CFA8H ;寫入DA的入口地址 MOVX DPTR,A ;向0832輸出數據并開始轉換 INC DPTR ;開啟二級緩沖 MOVX DPTR,A ;啟動DA ACALL DEL;*;* 顯示部分的程序 *;*XS:MOV DPTR,#0CFB0H ;CS273的入口地址 MOV R1,#60H MOV R4,#06H ;六個數碼管 MOV R5,#0FEH ;顯示數碼管位 MOV P1,#0FFH ;初始數碼管全滅 MOV 64H,#0DH ;寫入AD MOV 65H,#0AH CR: MOV A,R0 ;取轉速值低位 ANL A,#0FH ;清高四位 MOV 60H,A MOV A,R0 ;取轉速值高位 ANL A,#0F0H SWAP A ;交換高低四位 MOV 61H,A MOV A,R3 ;AD轉換值低位 ANL A,#0FH ;清高四位 MOV 62H,A MOV A,R3 ;AD轉換值高位 ANL A,#0F0H SWAP A ;交換高低四位 MOV 63H,A MOV R1,#65HLP:MOV A,R1 ;偏移地址 MOV DPTR,#TAB ;TAB的首地址 MOVC A,A+DPTR MOV DPTR,#0CFB0H ;選通74LS273 MOVX DPTR,A ;送出段碼 MOV A,R5 MOV P1,A JNB ACC.5,LOOP ;ACC.5=0則轉NEXT:RL A ;A逐位左循環(huán)一位 MOV P1,#0FFH MOV R5,A DEC R1 DJNZ R4,LP ;不等R4則轉到LP LJMP LOOP;*;* T0的中斷服務程序 *;* DVT0:MOV TH0,#3CH ;重裝初值 MOV TL0,#0B0H DJNZ R2,RTN ;判斷是否完成一秒定時 MOV R2,#20 MOV A,R6 ;取測得的轉速值 MOV R0,A ;將轉速值保存 MOV R6,#00HRTN: RETI;*;*INT0的中斷服務程序*;*INT0S:INC R6 RETI;*;* 定義TAB的數表 *;*TAB:DB 3FH,06H,5BH,4FH,66H,6DH DB 7DH,07H,7FH,6FH,77H,7CHDB 39H,5EH,79H,71H,40H;*;* 延時子程序 *;*DEL:MOV R7,#06HDEL1:DJNZ R7,DEL1 RET1. 五、 調試步驟與結果說明1.在整個調試過程中,我們將整個系統(tǒng)分模塊分別調試。1).A/D轉換,及轉換值的顯示: 按設計方法接好接口電路線 啟動偉福硬件仿真器,裝載程序 單步執(zhí)行模/數轉換測量程序 觀察CPU、數據和輸入輸出窗口 按設計方法接好接口電路線 調節(jié)可變電阻,判斷AD轉換量的顯示結果是否有變化 單步執(zhí)行顯示程序 判斷顯示是否正確 能正確顯示A/D轉換值,即此部分運行正確。2).D/A轉換,及將轉換值用于控制直流電機: 按設計方法接好接口電路線 啟動偉富硬件仿真器,裝載程序 單步執(zhí)行數/模轉換測量程序 觀察CPU、數據和輸入輸出窗口 按設計方法接好接口電路線 調節(jié)可變電阻,判斷DA轉換量的結果是否有變化 同時觀察被控電機是否運轉 能正確控制電機,即此部分運行正確3).霍爾元件測轉速,及將轉速顯用于顯示: 按設計方法接好接口電路線 啟動偉富硬件仿真器,裝載程序 單步執(zhí)行定時采用程序 觀察CPU、數據和輸入輸出窗口 按設計方法接好接口電路線 單步執(zhí)行顯示程序 判斷顯示是否正確 改變電機轉速,判斷顯示的轉速是否改變 如果能正確改變顯示轉速,說明測速程序正確,即此部分運行也正確2.結果說明:將整體硬件接線接好,啟動偉富硬件仿真器,裝載程序。數碼管顯示前兩位為AD,后四位分別為兩位AD轉換值和轉速值,調節(jié)可變電阻,顯示的兩位AD轉換值發(fā)生變化,同時轉速值也隨之發(fā)生變化。六、 總結單片微型計算機即單片微機,是現代控制系統(tǒng)的核心器件之一,20多年來一直應用在各種自動化、智能化、機電一體化以及光機電一體化儀器設備上,已成為當代機械電子工程、自動控制等相關專業(yè)知識結構中必不可少的一部分.盡管大家都知道掌握單片機知識的意義很大,但許多人在學習過程中會感到困難重重,不易入門,實際應用更不易.這是由于在學習單片機是必須機器語言學習關,其難點是必須將硬件與軟件結合起來考慮.比如每用一條指令就要聯(lián)想到在單片機硬件電路中相應的工作情況,做到用軟件控制或掌握硬件工作的全過程,顯然這與以往學習電子電路或學習高級計算機語言的情況是完全不同的.隨著微型計算機應用的日益廣泛和深入,接口技術有了迅速的發(fā)展,并已成為直接影響微機系統(tǒng)和推廣應用的關鍵,從硬件的角度來看,微機的開發(fā)與應用,在很大程度上就是微機接口電路的開發(fā)與應用,因而,微機接口技術涉及本專業(yè)的大學生和科技人員必不可少的基本技能.本次課程設計我們需要設計一個能用鍵盤調節(jié)溫度的空調的溫度控制系統(tǒng).在這次設計中我們應用了單片機仿真系統(tǒng),空調的溫度顯示要求有四位溫度顯示,能正確的顯示設定溫度和室內溫度,并能用鍵盤來設定溫度.這次課程設計我們用了74LS273、A/D0807、DAC0832、8051單片機、直流電動機、霍爾傳感. 通過兩周的設計和調試,在老師和同學的幫助下,我們順利的完成了任務.通過本次課程設計使我對單片機應用系統(tǒng)的使用和設計有了更多的了解和進一步的掌握.對單片機應用程序的編寫方法也掌握了一些技巧.我想在以后的學習中,如果碰到復雜系統(tǒng)的程序編寫,就不會感到害怕和陌生了. 在程序的調試和仿真過程中我們也遇到了很多的困難,比如說顯示器LED不能顯示速度或者所顯示的速度的不正確.有時候還會出現亂碼.尤其是在程序編寫時不知道芯片的地址,無法使芯片工作起來.在單片機指令上我也遇到很多的麻煩,有時候會不知道要使用什么指令或者所使用的指令是錯誤的,使程序無法按照所設想的來完成.在設計定時采樣程序時,沒能正確理解中斷服務程序是如何調用的,在李老師的幫助,對中斷服務程序是如何調用的,有了清楚的認識。對子程序的調用時,有時候會改變一些變量的值,而我在設計時沒有考慮到,這樣又會使程序的運行出錯.在調試時我對這些方面特別的留意,也對程序進行反復的分析,最后在同學及老師的大力幫助下,我把上面的問題一一克服,達到了老師對我提出的設計要求,非常成功的完成了任務.對任務的完成我真的感到非常的高興,也真心的感謝我的同學和老師對我的幫助。 這次設計我也學習到了很多的實用技巧,我想這對我以后的工作是非常的有價值的,雖然只有短短的兩周,但我真的學到了很多,雖然我的設計不能被制成產品,但我相信只要我繼續(xù)的努力,總會有那么一天的.我也要感謝學校給了我這樣一次機會.在現代社會中這方面的人才是非常的重要的,而我們的努力對這個社會的發(fā)展也有著重要的作用,所以我會在以后的工作和學習中艱苦奮斗,做一個對社會和國家有用的人,不辜負老師和家長對我的期待.最后我要再次謝謝那些幫助過我的老師和同學,是你們讓我有了以上的想法,謝謝你們!7.參考文獻1 許立梓.微型計算機原理及應用.機械工業(yè)出版社2李朝青.單片機學習輔導測驗及解答講義.北京航空航天大學業(yè)出版社3樓然苗、李光飛.51系列單片機設計實例. 北京航空航天大學業(yè)出版社4王迎旭.單片機原理與應用. 機械工業(yè)出版社8.附錄附錄A 系統(tǒng)原理圖附錄B 程序清單ORG 0000HAJMP MAINORG 0003HLJMP INT0SORG 000BHJMP DVT0ORG 0030HMAIN:SETB EX0 ;開INT0中斷 SETB ET0 ;開T0中斷 SETB EA ;開放CPU總中斷 SETB TR0 ;啟動T0 SETB IT0 ;INTO為邊沿觸發(fā)方式 MOV R6,#00H ;記數清零 MOV R2,#20 ;軟件計數器,減法計數DINGSHI:MOV TMOD,#01H ;定時器T0工作于方式1,定時50ms MOV TH0,#3CH ;寫入計數初值 MOV TL0,#0B0H LOOP:MOV DPTR,#0CFA0H ;ADC0809的入口地址 MOV A,#00H ;啟動AD MOVX DPTR,A WAIT:JNB P2.0,INT1S ;P2.0=0則轉INT1S JMP WAIT INT1S:MOVX A,DPTR ;讀取AD轉換值 MOV R3,A ;將AD轉換值存入R3DACH:MOV DPTR,#0CFA8H ;寫入DA的入口地址 MOVX DPTR,A ;向0832輸出數據并開始轉換 INC DPTR ;開啟二級緩沖 MOVX DPTR,A ;啟動D

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論