單片機(jī)課設(shè)設(shè)計(jì)報(bào)告1214_第1頁
單片機(jī)課設(shè)設(shè)計(jì)報(bào)告1214_第2頁
單片機(jī)課設(shè)設(shè)計(jì)報(bào)告1214_第3頁
單片機(jī)課設(shè)設(shè)計(jì)報(bào)告1214_第4頁
單片機(jī)課設(shè)設(shè)計(jì)報(bào)告1214_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、單片機(jī)課設(shè)設(shè)計(jì)報(bào)告課 題:單片機(jī)控制PWM的直流電機(jī)調(diào)速系統(tǒng)的設(shè)計(jì)班 級: 測 控 1102小組成員: 李波,丁向友,王迪指導(dǎo)老師: 潘志康,王艷林目 錄1.課題.32.選題意義及背景.33.主要任務(wù).34.設(shè)計(jì)原理及方案.44.1系統(tǒng)總方案.44.2具體方案流程.44.3電機(jī)調(diào)速控制模塊.44.4 PWM調(diào)速工作方式.55.設(shè)計(jì)內(nèi)容:硬件設(shè)計(jì)及軟件設(shè)計(jì).55.1硬件部分.55.2軟件部分.126.調(diào)試過程.156.1調(diào)試步驟.156.2調(diào)試中出現(xiàn)的錯(cuò)誤.157.還存在的問題及主要解決方法.168.實(shí)驗(yàn)程序.171.課題:單片機(jī)控制PWM的直流電機(jī)調(diào)速系統(tǒng)的設(shè)計(jì)2.選題意義及背景在國民生產(chǎn)中,

2、隨著現(xiàn)代技術(shù)的發(fā)展,電力電子技術(shù)已得到了全面的發(fā)展,其技術(shù)已應(yīng)用到各個(gè)領(lǐng)域。在各類機(jī)電系統(tǒng)中,由于直流電機(jī)具有良好的啟動(dòng)、制動(dòng)和調(diào)速性能,直流電機(jī)調(diào)速系統(tǒng)已廣泛運(yùn)用于工業(yè)、航天領(lǐng)域的各個(gè)方面,最常用的直流調(diào)速技術(shù)是脈寬調(diào)制(PWM)直流調(diào)速技術(shù),具有調(diào)速精度高、響應(yīng)速度快、調(diào)速范圍寬和損耗低的特點(diǎn)。而利用計(jì)算機(jī)數(shù)字控制也成了直流調(diào)速的一種手段,數(shù)字控制系統(tǒng)硬件電路的標(biāo)準(zhǔn)化程度高,控制軟件能夠進(jìn)行復(fù)雜運(yùn)算,可以實(shí)現(xiàn)不同于一般線性調(diào)節(jié)的最優(yōu)化、自適應(yīng)、非線性、智能化等控制規(guī)律。 因?yàn)閱纹瑱C(jī)具有小巧靈活、成本低、易于產(chǎn)品化、可靠性好、適應(yīng)溫度范圍寬、易擴(kuò)展、控制功能強(qiáng)等優(yōu)點(diǎn),用單片機(jī)取代模擬電路作為

3、電動(dòng)機(jī)的控制器,使電路更簡單,模擬電路為了實(shí)現(xiàn)控制邏輯需要許多電子元件,使電路復(fù)雜,使用單片機(jī)微處理器后,絕大多數(shù)控制邏輯可通過軟件實(shí)現(xiàn),這樣可以實(shí)現(xiàn)較復(fù)雜的控制。單片機(jī)有更強(qiáng)的邏輯功能,運(yùn)算速度和精度高、有大容量的存儲(chǔ)單元,因此有能力實(shí)現(xiàn)復(fù)雜的控制靈活性和適應(yīng)性強(qiáng),單片機(jī)的控制方式是由軟件完成的,如果需要修改控制規(guī)律,一般不必改變系統(tǒng)的硬件電路,只需修改程序即可,在系統(tǒng)調(diào)試和升級時(shí),可以不斷嘗試選擇最優(yōu)參數(shù),非常方便無零點(diǎn)漂移,控制精度高、數(shù)字控制不會(huì)出現(xiàn)模擬電路中經(jīng)常遇到的零點(diǎn)漂移問題,無論被控量的大小,都可以保證足夠的控制精度可提供人機(jī)界面,多機(jī)聯(lián)網(wǎng)工作等優(yōu)點(diǎn)。所以在電氣傳動(dòng)實(shí)時(shí)控制系統(tǒng)

4、中受到重視和普遍應(yīng)用。利用單片機(jī)邏輯功能強(qiáng)和軟件靈活的優(yōu)點(diǎn),不僅可使很多控制硬件軟件化,便于參數(shù)的設(shè)定和調(diào)整,而且可以同時(shí)對系統(tǒng)工作中的各種信息數(shù)據(jù)進(jìn)行診斷、檢測和及時(shí)處理,加強(qiáng)了實(shí)時(shí)維護(hù)和提高了控制系統(tǒng)的可靠性。它的發(fā)展趨勢將是向大容量、高性能化、外圍電路內(nèi)裝化等方面發(fā)展。3.主要任務(wù)1、 羅列出各個(gè)可行的方案,驗(yàn)證各方案的可行性,確定最終方案2、 根據(jù)實(shí)驗(yàn)方案確定并采購實(shí)驗(yàn)器件3、 查閱相關(guān)資料,詳細(xì)了解各個(gè)模塊的引腳及其功能4、 設(shè)計(jì)驅(qū)動(dòng)電路,用仿真軟件畫出電路圖,并進(jìn)行仿真5、 編寫程序, 具有單片機(jī)的以下主要功能:1) 鍵盤操作2) 顯示3) 中斷4) 定時(shí)器5) 串行通信6、搭建電

5、路,搭建完成實(shí)驗(yàn)平臺,實(shí)現(xiàn)實(shí)驗(yàn)?zāi)康模筛鶕?jù)設(shè)定的速度,自動(dòng)調(diào)節(jié)直流電機(jī)的轉(zhuǎn)速。4. 設(shè)計(jì)原理及方案4.1系統(tǒng)總方案采用ADUC842單片機(jī)進(jìn)行控制。本設(shè)計(jì)需要使用的軟件資源比較簡單,只需要完成鍵盤控制部分以及顯示輸出功能。采用ADUC842進(jìn)行控制比較簡單、易控制、可靠性高、抗干擾能力強(qiáng)、精度高且體積大大減小。輸出速度的調(diào)節(jié)是通過鍵盤操作。 接口電路單片機(jī)PWM控制驅(qū)動(dòng)電路電動(dòng)機(jī)顯示器鍵盤 圖1:單片機(jī)控制PWM的直流電機(jī)調(diào)速系統(tǒng)原理框圖4.2具體方案流程:1)完成鍵盤掃描、數(shù)碼管顯示部分的編程,實(shí)現(xiàn)鍵盤控制數(shù)碼管顯示數(shù)值2)完成PWM控制部分程序編寫,通過中斷延時(shí)函數(shù),實(shí)現(xiàn)PWM信號輸出3)

6、調(diào)節(jié)延時(shí)函數(shù)的延時(shí)時(shí)間,實(shí)現(xiàn)通過鍵盤來控制PWM信號的占空比4) 完成驅(qū)動(dòng)電路的設(shè)計(jì)搭建,5)調(diào)整參數(shù),分析遇到的問題6)實(shí)現(xiàn)設(shè)計(jì)目的4.3電機(jī)調(diào)速控制模塊:電機(jī)調(diào)速控制模塊采用由達(dá)林頓管組成的H型PWM電路。用單片機(jī)控制達(dá)林頓管使之工作在占空比可調(diào)的開關(guān)狀態(tài),精確調(diào)整電動(dòng)機(jī)轉(zhuǎn)速。這種電路由于工作在管子的飽和截止模式下,效率非常高;H型電路保證了可以簡單地實(shí)現(xiàn)轉(zhuǎn)速的控制;電子開關(guān)的速度很快,穩(wěn)定性也極佳,是一種廣泛采用的PWM調(diào)速技術(shù)。PWM調(diào)速特性優(yōu)良、調(diào)整平滑、調(diào)速范圍廣、過載能力大,實(shí)用性強(qiáng)。4.4 PWM調(diào)速工作方式:PWM有單極性和雙極性兩種工作制,其中單極性工作制應(yīng)用相對簡單,易于

7、實(shí)現(xiàn)與操作,所以我們采用了單極性工作制。單極性工作制是單片機(jī)控制口一端置低電平,另一端輸出PWM信號,兩口的輸出切換和對PWM的占空比調(diào)節(jié)決定電動(dòng)機(jī)的轉(zhuǎn)速。PWM調(diào)脈寬的方式有三種:定頻調(diào)寬、定寬調(diào)頻和調(diào)寬調(diào)頻。我們采用了定頻調(diào)寬方式,因?yàn)椴捎眠@種方式,電動(dòng)機(jī)在運(yùn)轉(zhuǎn)時(shí)比較穩(wěn)定;并且在產(chǎn)生PWM脈沖的實(shí)現(xiàn)上比較方便。其方法是通過改變電機(jī)電樞電壓接通時(shí)間與通電周期的比值即占空比來控制電機(jī)速度這種方法稱為脈沖寬度調(diào)制,簡稱PWM。調(diào)速原理即通過控制脈沖占空比來改變電機(jī)的電樞電壓。Vd=Vmax*D (1)由公式(1)可見,當(dāng)我們改變占空比D=t1T時(shí),就可以得到不同的電機(jī)平均速度Vd,從而達(dá)到調(diào)速的

8、目的。嚴(yán)格地講,平均速度與占空比Vd并不是嚴(yán)格的線性關(guān)系,在一般的應(yīng)用中,可以將其近似地看成線性關(guān)系。5.設(shè)計(jì)內(nèi)容:硬件設(shè)計(jì)及軟件設(shè)計(jì)5.1硬件部分5.1.1 單片機(jī)的選型:ADUC842是全集成的高性能數(shù)據(jù)采集系統(tǒng)。芯片內(nèi)部集成了高性能自校準(zhǔn)8通道12位ADC、兩個(gè)12位DAC轉(zhuǎn)換接口。它的采樣速度達(dá)420kb,以及單周期20MHz、8位與8051指令集全兼容的MCU,采用的是一個(gè)被優(yōu)化的8052內(nèi)核。 ADUC842在存儲(chǔ)器方面做了很大的改進(jìn),在片內(nèi)集成了3個(gè)不同的存儲(chǔ)器:62KB非易失性FLASH/EE程序存儲(chǔ)器、4KB非易失性FLASH/EE數(shù)據(jù)存儲(chǔ)器、256BRAM及2KB內(nèi)部擴(kuò)展R

9、AM。FLASH/EE存儲(chǔ)器保存期為100年,耐久型為100k周期。除此之外,為了避免產(chǎn)生新的技術(shù)瓶頸,ADUC842還針對MOVX數(shù)據(jù)存儲(chǔ)器訪問進(jìn)行了改進(jìn)。增加了一個(gè)數(shù)據(jù)指針,為源指針和數(shù)據(jù)指針分配了專門的寄存器。由于有了兩個(gè)數(shù)據(jù)指針,從而降低了軟件的開銷。在數(shù)字外圍方面,外部通信除最常用的UART外,還裝配了SPI、接口。ADUC842支持通過RS-232串行接口實(shí)現(xiàn)在線系統(tǒng)編程。系統(tǒng)編程通過將微控制器的PSEN拉“低”來激活引導(dǎo)加載程序。器件啟動(dòng)后,開始執(zhí)行駐留在器件內(nèi)部專用ROM的加載程序,實(shí)現(xiàn)PC機(jī)與目標(biāo)系統(tǒng)的通信,將代碼下載到目標(biāo)微型控制器。圖2:ADUC842芯片管腳圖5.1.2

10、 鍵盤設(shè)計(jì)鍵盤在單片機(jī)應(yīng)用系統(tǒng)中能實(shí)現(xiàn)向單片機(jī)輸入數(shù)據(jù)、傳送命令等功能,是人工干預(yù)單片機(jī)的主要手段.單片機(jī)應(yīng)用系統(tǒng)中,鍵盤掃描只是CPU的工作內(nèi)容之一。CPU在忙于各項(xiàng)工作任務(wù)時(shí),如何兼顧鍵盤的輸入,取決于鍵盤的工作方式。鍵盤的工作方式的選取應(yīng)根據(jù)實(shí)際應(yīng)用系統(tǒng)中CPU工作的忙、閑情況而定。其原則是既要保證能及時(shí)響應(yīng)按鍵操作,又要不過多占用CPU的工作時(shí)間。采用4*2式鍵盤,如圖下表所示。用來調(diào)節(jié)給定轉(zhuǎn)速檔位,從而控制電機(jī)的運(yùn)行。12345678表1:4*2式鍵盤5.1.3鍵盤顯示控制芯片HD7279HD9279是一種實(shí)現(xiàn)鍵盤輸入和段式數(shù)碼顯示控制的專用智能芯片。采用該芯片,可以大大簡化單片機(jī)控

11、制系統(tǒng)的軟硬件設(shè)計(jì),并且減輕CPU的負(fù)擔(dān)。HD7279A是一片具有串行接口的,可同時(shí)驅(qū)動(dòng)8位共陰式數(shù)碼管(或64只獨(dú)立LED)的智能顯示驅(qū)動(dòng)芯片,該芯片同時(shí)還可連接多達(dá)64鍵的鍵盤矩陣,單片即可完成LED顯示、鍵盤接口的全部功能。HD7279A內(nèi)部含有譯碼器,可直接接受BCD碼或16進(jìn)制碼,并同時(shí)具有2種譯碼方式,此外,還具有多種控制指令,如消隱、閃爍、左移、右移、段尋址等。 HD7279A具有片選信號,可方便地實(shí)現(xiàn)多于8位的顯示或多于64鍵的鍵盤接口。HD9279芯片特點(diǎn):1. 串行接口,無需外圍元件可直接驅(qū)動(dòng)LED2. 各位獨(dú)立控制譯碼/不譯碼及消隱和閃爍屬性3. (循環(huán))左移/(循環(huán))右

12、移指令4. 具有段尋址指令,方便控制獨(dú)立LED5. 64鍵鍵盤控制器,內(nèi)含去抖動(dòng)電路 6. 有DIP和SOIC兩種封裝形式供選擇 圖3:HD7279管腳圖A-G和DP為顯示數(shù)據(jù),分別對應(yīng)7段LED數(shù)碼管的各段當(dāng)相應(yīng)的數(shù)據(jù)位為 1時(shí),該段點(diǎn)亮,否則不亮。當(dāng)某一位被賦予了消隱屬性后,HD7279A在掃描時(shí)將跳過該位,在這種 情況下無論對該位寫入何值,均不會(huì)被顯示圖4:數(shù)碼管各段定義圖HD7279引腳定義:引腳名稱說明1,2VDD正電源3,5NC無連接,必須懸空4VSS接地6CS片選輸入端,此引腳為低電平時(shí),可向芯片發(fā)送指令及讀取鍵盤數(shù)據(jù)7CLK同步時(shí)鐘輸入端,向芯片發(fā)送數(shù)據(jù)及讀取鍵盤數(shù)據(jù)時(shí) ,此引

13、腳電平上升沿表示數(shù)據(jù)有效8DATA串行數(shù)據(jù)輸入/輸出端,當(dāng)芯片接收指令時(shí),此引腳為 輸入端;當(dāng)讀取鍵盤數(shù)據(jù)時(shí),此引腳在讀指令最 后一個(gè)時(shí)鐘的下降沿變?yōu)檩敵龆?KEY按鍵有效輸出端,平時(shí)為高電平,當(dāng)檢測到有效按鍵 時(shí),此引腳變?yōu)榈碗娖?0-16SGSA段g段a驅(qū)動(dòng)輸出17DP小數(shù)點(diǎn)驅(qū)動(dòng)輸出18-25DIGODIG7數(shù)字0數(shù)字7驅(qū)動(dòng)輸出26CLKO振蕩輸出端27RCRC振蕩器連接端28RESET復(fù)位端5.1.4顯示器設(shè)計(jì) 采用共陰極的發(fā)光二極管構(gòu)成可以顯示4位十六進(jìn)制的顯示器,運(yùn)行中顯示當(dāng)前的轉(zhuǎn)速檔位。圖5:顯示器圖圖6:HD7279及鍵盤連接圖5.1.5PWM波形的程序?qū)崿F(xiàn)隨計(jì)算機(jī)技術(shù)及電力電子

14、技術(shù)的發(fā)展,PWM波形采用軟件方法實(shí)現(xiàn)顯得非常靈活和實(shí)用。以ADUC842單片機(jī)為控制核心,在PO口實(shí)現(xiàn)輸出高低電平,然后通過一定的延時(shí)程序,在PO.1口輸出具有一定占空比的PWM信號。5.1.6驅(qū)動(dòng)芯片 ULN2003ULN2003是高耐壓、大電流達(dá)林頓陳列,由七個(gè)硅NPN達(dá)林頓管組成。ULN2003的每一對達(dá)林頓都串聯(lián)一個(gè)2.7K的基極電阻,在5V的工作電壓下它能與TTL和CMOS電路直接相連,可以直接處理原先需要標(biāo)準(zhǔn)邏輯緩沖器來處理的數(shù)據(jù)?;赨LN2003是高壓大電流達(dá)林頓晶體管陣列系列產(chǎn)品。具有電流增益高、工作電壓高、溫度范圍寬、帶負(fù)載能力強(qiáng)等特點(diǎn)。并且輸入5VTTL電平,輸出可達(dá)5

15、00mA/5V。故我們選用ULN2003設(shè)計(jì)驅(qū)動(dòng)電路。圖7:ULN2003管腳圖 圖8:驅(qū)動(dòng)電路選用管腳為輸入端,相對應(yīng)的管腳為輸出端,與直流電機(jī)相連。為驅(qū)動(dòng)ULN2003工作,管腳接地,管腳 接。5.2軟件部分5.2.1主程序及系統(tǒng)初始化模塊主程序完成實(shí)時(shí)性要求不高的功能,完成系統(tǒng)初始化后,實(shí)現(xiàn)鍵盤處理、刷新顯示等功能。初始化子程序完成硬件器件工作方式的設(shè)定、系統(tǒng)運(yùn)行參數(shù)和變量的初始化等功能。 系統(tǒng)初始化設(shè)定定時(shí)器、PWM設(shè)定鍵盤工作方式參數(shù)及變量初始化返回主程序系統(tǒng)初始化按鍵按下鍵值處理刷新顯示數(shù)據(jù)通信YN 圖9:主程序流程圖 圖10:初始化子程序流程圖 5.2.2鍵盤/顯示模塊設(shè)計(jì)鍵盤/

16、顯示模塊核心控制器件是HD7279,由軟件設(shè)置為8字符顯示,左端送入,按鍵操作由終端導(dǎo)入,靜態(tài)顯示方式。返回開始初始化鍵值顯示鍵值輸入顯示完畢NNYY圖11:HD7279子程序流程圖5.2.3軟件調(diào)試Keil uv2 操作流程的簡單說明:1 NEW PROJECT ,建一個(gè)新的項(xiàng)目,在出現(xiàn)的對話框中選analog devices/Aduc842 芯片型號;或者可以從File/ devices database 的對話框中選擇芯片型號。2 FILE/ NEW ,建立一個(gè)新文件,在打開的窗口下輸入程序,存盤。3 選中Source Group1點(diǎn)擊鼠標(biāo)右鍵,在出現(xiàn)的菜單中選中 Add Files t

17、o Group Source Group1,將文件加入到項(xiàng)目中。4 選中Target1點(diǎn)擊鼠標(biāo)右鍵,在出現(xiàn)的菜單中選中Options for Target Target1, 在出現(xiàn)的對話框中打開output項(xiàng)的對話框,選中Great HEX File,以保證編譯時(shí)能生成.HEX文件,為后續(xù)下載程序做準(zhǔn)備。5 Project/Build target或Rebuild all target files, 編譯所輸入的程序。ADUC842用戶板操作說明:先將計(jì)算機(jī)與實(shí)驗(yàn)板的串口聯(lián)接線連上,再連接USB供電線(順序一定不要顛倒,否則容易燒毀實(shí)驗(yàn)板;斷開與計(jì)算機(jī)的連接時(shí),要先斷開USB供電線路,再斷開串

18、口連線。) 實(shí)驗(yàn)板復(fù)位:1. 先按下實(shí)驗(yàn)板的右鍵,再按下左鍵。2. 鼠標(biāo)左鍵點(diǎn)擊軟件上的Reset按鈕。3. 先松開右鍵,再松開左鍵,完成實(shí)驗(yàn)板的復(fù)位功能。燒寫實(shí)驗(yàn)板(下載)程序:1. 在完成板的復(fù)位操作后,鼠標(biāo)左鍵點(diǎn)擊軟件上的Download按鈕,選擇.HEX文件,點(diǎn)擊 打開 按鈕,下載程序。2. 下載成功后,即可以運(yùn)行程序。6.調(diào)試過程6.1調(diào)試步驟1)尋找適當(dāng)?shù)妮敵隹?,即:分別先設(shè)P0=0x01和P0=0x00,觀察哪個(gè)輸出口輸出高、低電平,則該口即為所要的輸出口。2)在P0=0x00和P0=0x01后加延時(shí)程序,即delay函數(shù)。觀察輸出的PWM信號。3)建立鍵盤與延時(shí)程序(主要是延時(shí)

19、長度)的關(guān)系,從而達(dá)到鍵盤控制延時(shí)長度的目的,進(jìn)而控制PWM信號的占空比,實(shí)現(xiàn)鍵盤對直流電機(jī)轉(zhuǎn)速的控制。6.2調(diào)試中出現(xiàn)的錯(cuò)誤 1) 確定PWM信號的輸出口,通過在程序中賦值,發(fā)現(xiàn)P1/P2口均無輸出,通過小組討論,決定用其他輸出端口,經(jīng)檢測,通過給P01口賦值,可以通過示波器檢測出高低電平的變化,所以我們決定使用P0口,將程序中的P2口均改成P0口。2)波形高低電平無法交換,將延時(shí)程序?qū)懭隤0=0x00和P0=0x01后,只能出現(xiàn)高電平或低電平,而不會(huì)出現(xiàn)方波。通過檢測,發(fā)現(xiàn)是在頭文件中,沒有將端口做相應(yīng)的聲明引起的。3)無法用鍵盤控制方波占空比,出現(xiàn)方波后,發(fā)現(xiàn)它的占空比不受鍵盤控制。通過

20、檢測,發(fā)現(xiàn)沒有將鍵盤與延時(shí)函數(shù)聯(lián)系起來,因而無法調(diào)節(jié)占空比。經(jīng)過小組討論,我們想到以下解決辦法,就是將中斷延時(shí)程序的延時(shí)時(shí)間,設(shè)置成一個(gè)隨著鍵值線性變化的一個(gè)變量,這樣就可通過鍵值來控制PWM 信號的占空比了。 4)中斷程序中,我們用到外部中斷定時(shí)器1,但是我們在ADUC842上面沒有找到外部中斷定時(shí)器1的外部接口,通過詢問老師,我們知道了教學(xué)板上,已經(jīng)幫我們將P3.2和HD7279連接好了。5)驅(qū)動(dòng)電路部分,連完電路后,發(fā)現(xiàn)電機(jī)轉(zhuǎn)著轉(zhuǎn)著突然不轉(zhuǎn)了。經(jīng)分析,有兩種可能,一是電機(jī)壞了,二是驅(qū)動(dòng)電路部分出現(xiàn)了問題。通過檢測,我們排除了電機(jī)的問題,基本確定是驅(qū)動(dòng)電路出現(xiàn)了問題,通過萬用表,檢查電路是

21、否存在短路和芯片各端口是否有輸出,檢查出ULN2003的16端口,也就是與電機(jī)的負(fù)極相連的口出現(xiàn)了虛焊的情況。經(jīng)過重新焊接后,我們達(dá)到了預(yù)期結(jié)果。7、還存在的問題及主要解決方法1)對電路板的了解不夠。單單了解了我們用到的一部分電路,對于那些沒有涉及的還不是很了解。需要通過向老師和同學(xué)咨詢,達(dá)到更加深入的了解。2)部分程序片段還不是特別清楚,需要更深入地學(xué)習(xí),才能掌握最核心的部分,而不是簡單地調(diào)用程序。 3)轉(zhuǎn)速調(diào)到最低檔的時(shí)候,發(fā)現(xiàn)電機(jī)轉(zhuǎn)速不夠低,還是比較快,我們可以在程序中修改延時(shí)時(shí)間的表達(dá)式,使其更大,這樣轉(zhuǎn)速就會(huì)降低。 4)本設(shè)計(jì)雖然可以調(diào)節(jié)電機(jī)轉(zhuǎn)速,但是無法調(diào)節(jié)單片機(jī)的轉(zhuǎn)向,單片機(jī)的轉(zhuǎn)

22、向調(diào)節(jié)也是調(diào)速環(huán)節(jié)的一部分,所以本次課設(shè)其實(shí)并不完善,初步的解決方法是在PWM輸出端加一個(gè)帶開關(guān)的反相器,基本可以實(shí)現(xiàn)直流電機(jī)的轉(zhuǎn)向調(diào)節(jié)。但是我覺得這一定不是最好的方法,最佳方案有待解決。 5)鍵盤加控制部分?jǐn)?shù)字部分用來輸入給定轉(zhuǎn)速,控制部分用來控制電機(jī)的運(yùn)行。8、實(shí)驗(yàn)程序#include#include #define uchar unsigned char#define uint unsigned intvoid long_delay(void);/長延時(shí)void short_delay(void);/短延時(shí)void send_byte(unsigned char ); /發(fā)送一個(gè)字節(jié)vo

23、id write7279(unsigned char,unsigned char);/寫入7279uchar receive_byte(void); /接收一個(gè)字節(jié)uchar read7279(unsigned char); /讀7279void mid_delay(int length);void display(uint);/顯示函數(shù) /*7279的指令定義*/#define CMD_RESET 0xa4#define CMD_TEST 0xbf#define DECODE0 0x80#define DECODE1 0xc8#define CMD_READ 0x15#define UNDE

24、CODE 0x90#define RTL_CYCLE 0xa3#define RTR_CYCLE 0xa2#define RTL_UNCYL 0xa1#define RTR_UNCYL 0xa0#define ACTCTL 0x98#define SEGON 0xe0#define SEGOFF 0xc0#define BLINKCTL 0x88/*位聲明*/sbit cs=P22;/CS連接p2.2sbit IO1820=P23;/dq連接p2.3sbit clk=P21;/clk連接p2.1sbit dat=P20;/date連接p2.0sbit key=P32; /key連接p3.2/*

25、定義了一些變量*/unsigned char key_number,f;uchar table2;uint n,m,e;void main() send_byte(CMD_RESET); / 清除顯示 while(1) m=n*100; e=1500-m; P0=0x01; mid_delay(m); mid_delay(m); P0=0x00; mid_delay(e); if(!key) key_number=read7279(CMD_READ);if(key_number=0x01)f=0x01; if(key_number=0x02)f=0x02;if(key_number=0x04)

26、f=0x03;if(key_number=0x05)f=0x04;if(key_number=0x00)f=0x05;if(key_number=0x03)f=0x06;if(key_number=0x07)f=0x07;if(key_number=0x06)f=0x08; table0=f/10; table1=f%10; write7279(DECODE0+1,table0); write7279(DECODE0,table1); if(key_number=0x01) n=1; if(key_number=0x02) n=3; if(key_number=0x04) n=5; if(key_number=0x05) n=7; if(key_number=0x00) n=9; if(key_number=0x03) n=11; if(key_number=0x07) n=13; if(key_number=0x06) n=15; while (!key); /*寫7279的函數(shù)*/void write7279(unsigned char cmd,unsigned char date) send_byte(cmd);/發(fā)送指令 send_byte(date);/發(fā)送數(shù)據(jù)

溫馨提示

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

評論

0/150

提交評論