




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、山東大學威海分校機電工程學院課 程 設(shè) 計課程名稱 單片機原理與應(yīng)用 課題名稱 直流電動機轉(zhuǎn)速測量與控制系統(tǒng) 專 業(yè) 班 級 07級 學 號 姓 名 任課教師 2010年 06月 14日設(shè)計內(nèi)容與設(shè)計要求設(shè)計內(nèi)容: 直流電機200W, 電壓:24V, 調(diào)速范圍-30%。設(shè)計要求:畫出控制系統(tǒng)結(jié)構(gòu)圖;閉環(huán)轉(zhuǎn)速測控系統(tǒng)的具體設(shè)計,包括所選傳感器、執(zhí)行器和控制器的類型、原理、輸入輸出接口和工作電路等;系統(tǒng)流程圖及控制算法;控制系統(tǒng)界面的軟件設(shè)計,包括程序流程圖和實現(xiàn)代碼;控制算法的實現(xiàn),包括程序流程圖和實現(xiàn)代碼或仿真代碼。目錄目錄錯誤!未定義書簽。第1章 前言- 3 -第2章 基本原理- 5 -第3
2、章 功能說明- 5 -第4章 硬件電路的設(shè)計方案- 7 -4.1 轉(zhuǎn)速傳感器KMI15應(yīng)用電路51單片機部分錯誤!未定義書簽。4.2 轉(zhuǎn)速測量部分錯誤!未定義書簽。4.3 測速調(diào)速電路51單片機部分錯誤!未定義書簽。4.4 直流電機測速調(diào)速電路轉(zhuǎn)換顯示部分錯誤!未定義書簽。第5章 系統(tǒng)程序流程圖- 13 -5.1 系統(tǒng)流程圖- 13 -5.2 轉(zhuǎn)速測量程序流程圖- 14 -5.3 顯示程序流程圖錯誤!未定義書簽。5.4 測速調(diào)速控制程序流程圖錯誤!未定義書簽。第6章 控制算法實現(xiàn)- 17 -第7章 硬件測試- 25 -第8章 軟件仿真- 26 -8.1 Keil仿真錯誤!未定義書簽。8.2 算
3、法控制仿真錯誤!未定義書簽。第9 總結(jié)與體會- 25 -參考文獻錯誤!未定義書簽。附錄- 27 -附錄一 單片機程序清單錯誤!未定義書簽。附錄二 控制算法程序清單錯誤!未定義書簽。附錄三 元件清單錯誤!未定義書簽。第1章 前言單片機作為嵌入式微控制器在工業(yè)測控系統(tǒng),智能儀器和家用電氣中得到廣泛應(yīng)用。雖然單片機的品種很多,但80C51系列單片機仍不失為單片機中的主流機型。本課程一80C51系列以及派生系列單片機芯片為主介紹單片機的原理與應(yīng)用,與其特點是由淺入深,注重接口技術(shù)和應(yīng)用。 近年來,微型計算機的發(fā)展速度足以讓世人驚嘆,以計算機為主導的信息技術(shù)作為一種嶄新的生產(chǎn)力,正在向社會的各個領(lǐng)域滲透
4、,也使機電一體化的進程大大加快。 機電一體化是當今制造技術(shù)和產(chǎn)品發(fā)展的主要傾向,也是我國機電工業(yè)發(fā)展的必由之路??梢哉J為,它是用系統(tǒng)工程學的觀點和方法,研究在機電系統(tǒng)和產(chǎn)品中如何將機械、計算機、信息處理和自動控制技術(shù)綜合應(yīng)用,以求機電系統(tǒng)和產(chǎn)品達到最佳的組合。機電一體化產(chǎn)品所需要的是嵌入式微機,而單片機具有體積小、集成度高、功能強等特點,適于嵌入式應(yīng)用。智能儀器、家用電器、數(shù)控機床、工業(yè)控制等機電設(shè)備和產(chǎn)品中竟相使用單片機。 就目前而言,單片機的發(fā)展勢頭依然不減,各種型號和功能更強的單片機和超級接口芯片不斷出現(xiàn),進一步向高層次發(fā)展的重要標志就是構(gòu)成多機系統(tǒng)和分布式網(wǎng)絡(luò)。世界上單片機芯片的產(chǎn)量以
5、每年27%的速度遞增,到本世紀初已達30億片,而我國的年需求量也超過了億片的數(shù)量,這表明單片機有著廣闊的應(yīng)用前景。本課程設(shè)計主要針對目前我國早期應(yīng)用比較廣泛的“80C51”單片機進行系統(tǒng)的講解和分析。為使用和開發(fā)各類機電一體化設(shè)備和儀表建立基礎(chǔ)。第2章 基本原理直流電動機具有良好的起動、制動性能,適宜在大范圍內(nèi)平滑調(diào)速,在許多需要調(diào)速或者快速正反向的電力拖動系統(tǒng)中得到了廣泛的應(yīng)用。從控制的角度來看,直流調(diào)速還是交流拖動機的基礎(chǔ)。早期直流電動機的控制均以模擬電路為基礎(chǔ),采用運算放大器、非線性集成電路以及少量的數(shù)字電路組成,控制系統(tǒng)的硬件部分非常復雜,功能單一,而且系統(tǒng)非常不靈活、調(diào)試困難,阻礙了
6、直流電動機控制技術(shù)的發(fā)展和應(yīng)用范圍的推廣。隨著單片機技術(shù)的日新月異,使得許多控制功能計算法可以采用軟件技術(shù)來完成,為直流電機的控制提供了更大的靈活性,并使系統(tǒng)能達到更高的性能。采用單片機構(gòu)成控制系統(tǒng),可以節(jié)約人力資源和降低系統(tǒng)成本,從而有效地提高工作效率。本設(shè)計就基于直流電動機在51單片機中的應(yīng)用,設(shè)計出大功率直流電動機轉(zhuǎn)速的測量與控制。第3章 功能說明單片機控制直流電機的基本方法是通過改變直流電機電樞電壓的接通時間與通電周期的比值(即占空比)來控制電機速度,這種方法成為脈沖寬度調(diào)制(pulse width modulation),簡稱PWM。通過控制脈沖占空比來改變電機的電樞電壓,改變占空比
7、的方法有三種:1) 定寬調(diào)頻法,這種方法是不改變高電平的維持時間,僅改變低電平的維持時間,這樣調(diào)制電壓頻率也隨之改變;2) 調(diào)寬調(diào)頻法,他要求不改變低電平的維持時間,僅改變高電平的維持時間,這也調(diào)制電壓頻率也被改變;3) 定頻調(diào)寬法,這種方法是同時改變高低電平的維持時間,而兩個維持時間的總和不變,即調(diào)制電壓頻率不變。由于前兩種方法都改變了調(diào)制電壓頻率,當調(diào)制電壓頻率與電機電壓頻率接近時,將會引起系統(tǒng)振蕩,造成系統(tǒng)工作的不穩(wěn)定,因而在實際應(yīng)用當中,常使用定寬調(diào)頻法。測量直流電動機轉(zhuǎn)速的傳感器有磁電式和光電式,霍爾傳感器由于體積小、無觸點、動態(tài)特性好、使用壽命長等特點,在測量轉(zhuǎn)動物體旋轉(zhuǎn)速度領(lǐng)域得
8、到了廣泛應(yīng)用。目前,轉(zhuǎn)速傳感器正朝著高靈敏度、高可靠性和全集成化的方向發(fā)展。典型產(chǎn)品有飛利浦(Philips)公司生產(chǎn)的KMI15/16系列磁阻式集成轉(zhuǎn)速傳感器,包括KMI15-1、KMI15-2、KMI15-4、KMI16-1等型號。其性能優(yōu)良,安全性好,穩(wěn)定性強,是分立式轉(zhuǎn)速傳感器理想的升級換代產(chǎn)品。本例采用飛利浦(Philips)公司生產(chǎn)的KMI15-1傳感器,它主要包括以下六部分:磁敏電阻傳感器;前置放大器A1;施密特觸發(fā)器;開關(guān)控制電路源;恒流源;電壓控制器。它是由4只磁敏電阻構(gòu)成的一個橋路,需固定在靠近齒輪的地方,當齒輪轉(zhuǎn)動時,由于氣隙處的磁力線發(fā)生變化,磁路中磁阻也隨之改變,在傳
9、感器上就產(chǎn)生了電信號。該傳感器具有很強的方向性,他對與之連接的傳動物體十分敏感,而對該物體的震動或者抖動量很不敏感,這正是測量轉(zhuǎn)速所需要的。傳感器產(chǎn)生的電信號頻率和轉(zhuǎn)動速度呈正比,根據(jù)單位時間間隔內(nèi)的脈沖數(shù),即可求得被測電機的轉(zhuǎn)速。KMI15/16旋轉(zhuǎn)速度傳感器與霍爾傳感器或電磁式傳感器相比,具有多種優(yōu)點,如可以完成“靜止”狀態(tài)下速度的測量,并且結(jié)構(gòu)簡單、價格低廉、信噪比高等,在汽車電子、工業(yè)測量、儀器儀表及國防等領(lǐng)域應(yīng)用廣泛。電機驅(qū)動需要較高的電壓和電流,一般需要根據(jù)電機的具體參數(shù)設(shè)計合適的驅(qū)動電路。目前市場上有很多性能優(yōu)良的電機專用驅(qū)動芯片,本例就采用電機驅(qū)動芯片ULN2003用于直流電機
10、的驅(qū)動控制。電機采用24V,200W,最大轉(zhuǎn)速200r/s。ULN2003是耐高壓、大電流達林頓系列,由七個硅NPN達林頓管組成。該電路的特點如下:ULN2003的每一對達林頓都串聯(lián)一個2.7K的基極電阻,在5V的工作電壓下他能與TTL和CMOS電路直接相連,可以直接處理原先需要標準邏輯緩沖器來處理的數(shù)據(jù)。ULN2003工作電壓高,工作電流大,灌電流可達500mA,并且能夠在關(guān)態(tài)時承受50V的電壓,輸出還可以在高負載電流并行運行。ULN2003采用DIP-16或SOP-16塑料封裝,其內(nèi)部結(jié)構(gòu)如圖3-1所示。圖 3-1 ULN2003內(nèi)部結(jié)構(gòu)圖ULN2003的引腳說明如下:IN1-IN7:七個
11、輸入端,輸入信號支持TTL,CMOS電平。OUT1-OUT7:七個輸出端。COM:公共端,一般用于測試芯片用,當芯片連接完畢,公共端的電壓足可以點亮一個發(fā)光管。GND:信號地端。第4章 硬件電路的設(shè)計方案整個系統(tǒng)硬件可以分為三個部分:51單片機部分,轉(zhuǎn)速測量部分,轉(zhuǎn)速顯示部分和轉(zhuǎn)速調(diào)整控制部分。KMI15-1輸出脈沖信號到單片機測量電機轉(zhuǎn)速,LED顯示模塊由MAX7219驅(qū)動控制,直流電機的控制由51單片機輸出PWM脈沖信號送入芯片ULN2003驅(qū)動直流電機。 4.1 轉(zhuǎn)速傳感器KMI15應(yīng)用電路51單片機部分 圖4-1 轉(zhuǎn)速傳感器KMI15應(yīng)用電路51單片機部分如圖4-1所示,51單片機利用
12、定時器T0實現(xiàn)定時1s,在此期間計數(shù)器T1對傳感器輸出頻率信號計數(shù),既可以測得信號頻率。根據(jù)所測頻率的數(shù)值判斷電機的對應(yīng)轉(zhuǎn)速,51單片機的兩個ID端口P2.2、P2.6連接綠色和紅色發(fā)光管,用于對電機轉(zhuǎn)速是否超出設(shè)定的最大值與最小值的指示標志。4.2 轉(zhuǎn)速測量部分基于KMI15的轉(zhuǎn)速傳感器的前端電路如圖4-2所示,整個電路包括三個部分:電源過壓保護、輸出低通濾波器電路、比較電路。 圖4-2基于KMI15的轉(zhuǎn)速傳感器前端電路圖圖4-2中,二極管D1作為電路反極性保護和反向過壓保護;二極管D2作電路正向過壓保護,但要求有一定過載能力。RL為115負載電阻,將磁阻信號轉(zhuǎn)換成電壓電平。R3、C6構(gòu)成輸
13、入信號低通濾波電路,其截至頻率為10kHz。R5、R6確定一個分壓值,作為比較器的閾值,R9、R10和R7組成反饋和R4來確定遲滯電壓,來保證工作特性不受外界因素干擾,最終轉(zhuǎn)速傳感器通過LM393比較器輸出端輸出標準TTL電平信號,該信號頻率與轉(zhuǎn)速成正比,該信號送入51點偏激的T1計數(shù)器輸入端用于測量轉(zhuǎn)速。測速過程中KMI15-1傳感器的輸出端接到51單片機的T1端口。 圖 4-3 轉(zhuǎn)速測量、單片機部分電路圖4.3 測速調(diào)速電路51單片機部分 圖 4-4 直流電機測速調(diào)速電路51單片機部分51單片機P0口的P0.0輸出電機驅(qū)動信號,P0.0通過NPN三極管連接到直流 電機驅(qū)動器ULN2003的
14、輸入通道IN1。P0.0可以通過上拉電阻連接到ULN2003的輸入通道IN1,改變P0.0輸出周期性脈沖的高電平寬度,即可實現(xiàn)對電機的調(diào)速控制。4.4 直流電機測速調(diào)速電路轉(zhuǎn)換顯示部分 圖 4-5 直流電機測速調(diào)速電路轉(zhuǎn)速顯示部分圖4-5中所示的顯示電路部分包涵三個LED數(shù)碼管,數(shù)碼管驅(qū)動器件采用串行接口的MAX7219,數(shù)碼管亮度決定于MAX7219的V+和ISET之間的電阻數(shù)值,在本電路當中選擇47K,一般來說可以選擇10K以上的電阻。51單片機的P1口的P1.0、P1.1、P1.2分別作為單片機與MAX7219串行通信接口的數(shù)據(jù)輸入線、時鐘信號線、數(shù)據(jù)加載線(片選線)?;谶@三條通信線,
15、51單片機即可實現(xiàn)對8位數(shù)碼管驅(qū)動芯片MAX7219的操作。MAX7219的數(shù)據(jù)輸出端DOUT用于多片MAX7219級聯(lián)使用時連接下一片MAX7219的數(shù)據(jù)輸入端DIN;數(shù)碼管工作段電流決定于MAX7219的V+端與ISET端接入的電阻大小,一般選擇的范圍為10K以上。為了能夠穩(wěn)定地顯示數(shù)據(jù),需要在MAX7219的電源輸入端加濾波電容,這是由于MAX7219工作時對輸入電源會產(chǎn)生很大的干擾,可以造成MAX7219本身工作的不穩(wěn)定以及數(shù)據(jù)的接收誤碼。圖4-5所示的數(shù)碼管為八位共陰數(shù)碼管,它們的公共段可以分別接到數(shù)碼管芯片MAX7219的位控制端口DIG0-DIG2,實現(xiàn)8位數(shù)碼管的位控制。第5章
16、 系統(tǒng)程序流程圖 根據(jù)設(shè)計要求和設(shè)計思路,進行模塊設(shè)計。包括系統(tǒng)流程圖,轉(zhuǎn)速測量程序流程圖,顯示程序流程圖,測速調(diào)速控制程序流程圖。5.1系統(tǒng)流程圖圖 5-1 系統(tǒng)流程圖 圖5-1所示為系統(tǒng)流程圖,系統(tǒng)經(jīng)初始化之后,調(diào)用測速調(diào)速程序,之后調(diào)用顯示子程序動態(tài)顯示電動機轉(zhuǎn)速。5.2轉(zhuǎn)速測量程序流程圖 圖 5-2基于KMI15轉(zhuǎn)速測量程序流程圖 定時計數(shù)器T0、T1配合,實現(xiàn)轉(zhuǎn)速測量的程序流程如圖5-2所示,T0用于產(chǎn)生1s定時,在此期間T1計傳感器部分送來的轉(zhuǎn)速頻率脈沖,完成后對轉(zhuǎn)速進行分析,根據(jù)轉(zhuǎn)速值進行相應(yīng)的程序處理。 默認轉(zhuǎn)速最大值為200r/s,最小轉(zhuǎn)速為140r/s,如果超過200或低于
17、140,則紅色發(fā)光管告警。如果測量速度在兩者之間時,綠色發(fā)光管點亮。定時器0定時參數(shù)為50ms,20次定時實現(xiàn)1s,1s定時開始對T1輸入端計數(shù),20次定時時間到,T1停止計數(shù),從而得到比較精確的電機轉(zhuǎn)速。根據(jù)實際情況即可轉(zhuǎn)換為實際的電機轉(zhuǎn)速。5.3顯示程序流程圖圖5-3 51單片機基于MAX7219驅(qū)動8位數(shù)碼管流程圖 51單片機基于MAX7219驅(qū)動8位數(shù)碼管流程圖如圖5-3所示。51單片機通過MAX7219數(shù)碼管驅(qū)動芯片實現(xiàn)8位數(shù)碼管顯示的程序中,主要的工作集中在51單片機模擬MAX7219串口操作時序,實現(xiàn)對MAX7219工作方式的正確配置以及3個顯示數(shù)據(jù)的正確寫入。5.4測速調(diào)速控制
18、程序流程圖 圖5-4 基于單片機的直流電機測速調(diào)速程序流程圖 基于51單片機的直流電機測速調(diào)速系統(tǒng)程序流程如圖5-4所示。其中,定時器T0用于1s定時,同時T1用于1s內(nèi)脈沖計數(shù),從而達到電機測速的目的。 該程序設(shè)計重點在定、時器中斷,定時器0中斷服務(wù)程序當中包括電機測速部分、電機轉(zhuǎn)速顯示部分、電機轉(zhuǎn)速調(diào)整部分。電機轉(zhuǎn)速調(diào)整部分只需要對轉(zhuǎn)速和設(shè)定轉(zhuǎn)速值進行比較,根據(jù)比較結(jié)果調(diào)整P0.0輸出周期脈沖的高電平寬度即可調(diào)整電機轉(zhuǎn)速。第6章 控制算法實現(xiàn) 圖 6-1 電機速度控制算法流程圖 圖6-1為電機速度控制算法流程圖,電機控制信號輸出端P0.0初始輸出低電平,將測得的電機轉(zhuǎn)速值與設(shè)定的值比較,當
19、測速大于設(shè)定的最高速度時,減小P0.0脈沖的高電平寬度,減小電機速度;當測速小于設(shè)定的最小值(即最大值的70%)時,增大P0.0脈沖的高電平寬度,增大電機速度;當測速在設(shè)定的最大值與最小值之間時候,正確顯示速度。第7章 硬件測試 圖 7-1 轉(zhuǎn)速傳感器前端電路 圖 7-2 51單片機、速度測量、控制及顯示部分 圖 7-3硬件電路整體仿真圖圖7-1、圖7-2、圖7-3為用Multisim軟件仿真的結(jié)果。由于Multisim資源庫中沒有原本設(shè)計中用到的MAX7219、ULN2003、KMI15器件,在仿真過程中電路作了較大改動。用Proteus仿真的硬件電路與用Multisim所作的硬件電路圖有較
20、大的區(qū)別?;谠瓉碓O(shè)計的電路圖的軟件部分已經(jīng)寫好、調(diào)試好,但放在Multisim仿真的硬件電路中不適合,因為硬件部分作了較大改動。再改軟件來適合Multisim仿真的硬件電路比較麻煩,由于時間原因就沒有改,所以真正的硬件仿真效果圖并沒有做出來。第8章 軟件仿真8.1 Keil仿真先新建一個工程,并保存在所建工程彈出的對話框中選擇80-51處理器。新建一個文檔以編輯程序,將所設(shè)計的程序輸入到新建文檔中,并保存文檔.asm(匯編源文件)。將所保存的文檔添加到工程中去,再進行工程配置,點擊Project菜單下的Options for Target ,在彈出的對話框中設(shè)晶振為12MHZ,將Create
21、 HEX File打上勾,再編譯文件。 圖 8-1 P2.2口初始狀態(tài) 圖 8-2 中斷調(diào)試時P2.2口狀態(tài)P2.2設(shè)置為紅色報警信號,從圖8-1、圖8-2可以看出,初始狀態(tài)下P2.2是1,當運行到中斷時,P2.2變?yōu)?,也即當測速小于140r/s時,紅色指示燈亮。 圖 8-3 P1.2口初始狀態(tài) 圖 8-4 中斷調(diào)試時P1.2口狀態(tài)P1.2為MAX7219數(shù)據(jù)加載口,從圖8-3、圖8-4可以看出進入中斷后P1.2口的電平從1變?yōu)?,也即數(shù)據(jù)被加載進入MAX7219。 圖8-5初始化時P0.0口的狀態(tài) 圖8-6中斷調(diào)試時P0.0口的狀態(tài)P0.0口為電機控制信號的輸出端,從圖8-5、圖8-6可以
22、看出,調(diào)試中斷時P0.0口的高低電平變化,則當P0.0為0時候,有信號輸出。 圖8-7 圖8-8從圖8-7、8-8可以看出定時器T0進入中斷時各個端口數(shù)值的變化。8.2算法控制仿真 圖8-9 圖8-10圖8-9、圖8-10為電機轉(zhuǎn)速控制算法仿真波形圖,從圖中可以看出,初始狀態(tài)時電機轉(zhuǎn)速從0迅速升高到最大值200r/s。之后電機轉(zhuǎn)速在最大值200,最小值140之間徘徊。如果高于最大值,會被迅速拉低,如果低于最小值,會被迅速拉高,知道轉(zhuǎn)速被控制在最大值與最小值之間。第9章 總結(jié)與體會課程設(shè)計是培養(yǎng)學生綜合運用所學知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學生實際工作能力的具
23、體訓練和考察過程.隨著科學技術(shù)發(fā)展的日新日異,單片機已經(jīng)成為當今計算機應(yīng)用中空前活躍的領(lǐng)域, 在生活中可以說得是無處不在。因此作為二十一世紀的大學來說掌握單片機的開發(fā)技術(shù)是十分重要的。 回顧起此次單片機課程設(shè)計,至今我仍感慨頗多,的確,從開始設(shè)計方案到最終確定方案,從器件的選用到最后的確定,從理論到實踐,在兩個多星期的日子里,可以說得是苦多于甜,但是可以學到很多很多的的東西,同時不僅可以鞏固了以前所學過的知識,而且學到了很多在書本上所沒有學到過的知識。通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正
24、為社會服務(wù),從而提高自己的實際動手能力和獨立思考的能力。在設(shè)計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,比如說三極管NPN管腳不懂怎么放置,不懂分得二極管的正負極,對單片機匯編語言掌握得不好通過這次課程設(shè)計之后,一定把以前所學過的知識重新溫故。這次的課程設(shè)計終于順利完成了,在設(shè)計中遇到了很多編程問題,最后在同學的幫助下,終于迎刃而解。同事,在其他同學身上我學到了很多東西,學會了怎樣編程、怎樣調(diào)試以及怎樣用Multisim和Proteus畫硬件電路圖。雖然學習的還不
25、是很深入,Keil、Multisim和Proteus軟件還沒有掌握,只是懂得了一些,在以后的學習應(yīng)用當中我一定會更加積極、主動、深入的學習這幾款軟件。在此對幫助過我的同學們表示衷心的感謝!參考文獻 1、曹立軍.單片機原理與應(yīng)用.西安電子科技大學出版社,20092 、張迎新.單片微型計算機原理、應(yīng)用及接口技術(shù).國防工業(yè)出版社,19933、房小翠.編單片機實用系統(tǒng)設(shè)計技術(shù).國防工業(yè)出版社,19994、何立民.編單片機應(yīng)用系統(tǒng)設(shè)計.北航出版社,20055、雷伏容.51單片機常用模塊設(shè)計查詢手冊.清華大學出版社,20106、劉國榮.單片微型計算機技術(shù).機械工業(yè)出版社,19967、吳炳勝.8051單片機
26、原理與應(yīng)用技術(shù).冶金工業(yè)出版社,2003附錄附錄一 單片機程序清單/*/程序功能為電機控制信號輸出端口P0.0初始輸出低電平,將測得的電機轉(zhuǎn)速值與設(shè)定的值比較,當測速大于設(shè)定的最高速度時,減小P0.0脈沖的高電平寬度,減小電機速度;當測速小于設(shè)定的最小值(即最大值的70%)時,增大P0.0脈沖的高電平寬度,增大電機速度;當測速在設(shè)定的最大值與最小值之間時候,正確顯示速度。*/#include#include#define uchar unsigned char#define uint unsigned int /數(shù)碼管顯示數(shù)據(jù)單元uchar bit100;uchar bit10;uchar b
27、it1;uchar dig1;uchar dig2;uchar dig3;uchar cout; /1s定時控制參數(shù)uchar cnt1;uchar cnt2; /延時參數(shù)單元uchar rvalue; /電機轉(zhuǎn)速單元uchar Hvalue; /電機最高允許轉(zhuǎn)速uchar Lvalue; /電機最低允許轉(zhuǎn)速sbit P00=P00;sbit DIN=P10; /串行數(shù)據(jù)輸入端sbit CLK=P11; /串行時鐘sbit LOAD=P12; /數(shù)據(jù)加載控制sbit GREEN=P26; /轉(zhuǎn)速正常指示燈sbit RED=P22; /轉(zhuǎn)速超出設(shè)定范圍報void sendcode0(uchar
28、code0);void sendword(uchar addr,uchar num);void delay(uchar cnt) for(cnt;cnt0;cnt-); /while(cnt-);/發(fā)送一個字節(jié)的數(shù)據(jù)到MAX7219void sendcode0(uchar code0)uchar i,temp;_nop_();for (i=0;i8;i+) temp=code0&0x80;code0=code01;if (code0) /發(fā)送1DIN=1;CLK=0;CLK=1;elseDIN=0;CLK=0;CLK=1;void sendword(uchar addr,uchar num)
29、LOAD=0; /MAX7219準備接受16位數(shù)據(jù) _nop_(); sendcode0(addr); /MAX7219接收8位寄存器地址 _nop_(); sendcode0(num); /MAX7219接收8位寄存器數(shù)據(jù) _nop_(); LOAD=1; /MAX7219鎖存進相應(yīng)寄存器 /數(shù)碼管驅(qū)動MAX7219初始化程序void start(void)sendword(0x0b,0x02); /設(shè)置掃描界限 sendword(0x09,0xff); /設(shè)置譯碼模式sendword(0x0a,0x0a); /設(shè)置亮度sendword(0x0c,0x01); /設(shè)置為正常工作模式/轉(zhuǎn)速顯示
30、程序void display(void)sendword(dig3,bit100); /發(fā)送數(shù)碼管百位顯示碼到MAX7219;sendword(dig2,bit10); /發(fā)送數(shù)碼管十位顯示碼到MAX7219;sendword(dig1,bit1); /發(fā)送數(shù)碼管個位顯示碼到MAX7219;/主函數(shù)void main() SP=0x70;cout=0x14;cnt1=0x00;cnt2=0x00;Hvalue=0xc8; /最大轉(zhuǎn)速設(shè)置為200r/sLvalue=0x8c; /最小轉(zhuǎn)速設(shè)置為140r/sTH1=0x00;TL1=0x00;TH0=0x3c; /50ms定時參數(shù)設(shè)定TL0=0xb
31、b;TMOD=0x51;/ MAX7219初始化start();dig1=0x01;dig2=0x02;dig3=0x03;display();EA=1; /中斷設(shè)置ET0=1;ET1=1;TR0=1; /啟動T0計時,T1計數(shù)TR1=1;while (1)if (rvalueHvalue) / 轉(zhuǎn)速大于200RED=0; /紅色指示燈報警GREEN=1; / 綠燈滅P00=1;cnt1-; /驅(qū)動信號高電平維持時間減少,是轉(zhuǎn)速變小delay(cnt1);cnt2=0xff-cnt1; /低電平維持時間增加P00=0;delay(cnt2);return;else /轉(zhuǎn)速大于等于140且小于等
32、200RED=1; /紅色指示燈滅GREEN=0; / 正常顯示綠燈亮P00=1;delay(cnt1); /驅(qū)動信號維持不變P00=0;delay(cnt2); return;/定時器0中斷服務(wù)函數(shù) void time0_int(void)interrupt 1uchar temp;ET0=0; /關(guān)閉T0中斷TR0=0;cout=cout-1; /1s定時控制參數(shù)if (cout=0) /1s定時到cout=0x14;rvalue=TL1;TH1=0x00; /重新設(shè)置電機測速參數(shù)TL1=0x00;TH0=0x3c;TL0=0xbb;bit1=rvalue%0x0a; /轉(zhuǎn)速數(shù)值轉(zhuǎn)換temp=rvalue/0x0a;bit10
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 健身房會員鍛煉計劃與記錄表
- 物流業(yè)無人機配送技術(shù)應(yīng)用方案
- 房地產(chǎn)業(yè)合伙經(jīng)營協(xié)議書
- 典當合同典當行借款合同
- 取土場施工方案
- 西寧抗風門施工方案
- 環(huán)境影響評價及保護方案手冊
- 四干渠電站施工方案
- 空心方樁施工方案
- 醫(yī)院智能化施工方案
- 農(nóng)機檢修培訓課件
- 2025車位租賃合同范本
- 2025年學校信息中心工作計劃
- VR游戲設(shè)計與制作知到智慧樹章節(jié)測試課后答案2024年秋四川長江職業(yè)學院
- 平行線的判定與性質(zhì)證明題專訓30題(人教版)(人教版) 帶解析
- 心理咨詢倫理守則
- 【MOOC】森林植物識別技術(shù) -珍稀植物識別-南京森林警察學院 中國大學慕課MOOC答案
- 《學習雷鋒好榜樣》課件
- 2024解析:第十八章電功率-講核心(解析版)
- 廣告品印刷行業(yè)發(fā)展概況及未來三年行業(yè)發(fā)展趨勢預測
- 招商及運營培訓課件
評論
0/150
提交評論