畢設(shè) 無極調(diào)速電機(jī)控制器設(shè)計_第1頁
畢設(shè) 無極調(diào)速電機(jī)控制器設(shè)計_第2頁
畢設(shè) 無極調(diào)速電機(jī)控制器設(shè)計_第3頁
畢設(shè) 無極調(diào)速電機(jī)控制器設(shè)計_第4頁
畢設(shè) 無極調(diào)速電機(jī)控制器設(shè)計_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

桂林電子科技大學(xué)實訓(xùn)說明書專用紙編號:嵌入式系統(tǒng)綜合實訓(xùn)說明書題目:無極調(diào)速電機(jī)控制器設(shè)計院(系):信息與通信學(xué)院專業(yè):電子信息工程學(xué)生姓名:學(xué)號:指導(dǎo)教師:2014年12月31日摘要脈沖寬度調(diào)制(PWM),是英文“PulseWidthModulation”的縮寫,簡稱脈寬調(diào)制,是利用微處理器的數(shù)字輸出來對模擬電路進(jìn)行控制的一種非常有效的技術(shù),廣泛應(yīng)用在從測量、通信到功率控制與變換的許多領(lǐng)域中。直流電動機(jī)是將直流電能轉(zhuǎn)換為機(jī)械能的電動機(jī),因其良好的調(diào)速性能而在電力拖動中得到廣泛應(yīng)用。本課題設(shè)計PWM信號發(fā)生器控制直流電機(jī),采用新唐Nuc140開發(fā)板的PWM模塊、LCD液晶顯示模塊和鍵盤輸入模塊,利用按鍵輸入控制PWM輸出到直流電機(jī),控制直流電機(jī)的無級調(diào)速,并在液晶LCD上顯示。兩個按鍵分別調(diào)節(jié)直流電機(jī)的速度增加和速度減小。關(guān)鍵字:PWM;nuc140開發(fā)板;直流電機(jī);按鍵;LCD;無級調(diào)速

AbstractThePulseWidthModulation(PWM),isEnglish"WidthModulation"abbreviationofpoints,abbreviationPulseWidthModulationistheuseofthemicroprocessordigitaloutputtoanalogcircuitstocontrolaneffectivetechnology,widelyusedinfrommeasurement,communicationtopowercontrolandtransforminmanyareas.DCmotorisaDCelectricenergyintomechanicalenergyofthemotor,duetoitsgoodspeedperformanceandhasbeenwidelyusedinelectricdrive.ThedesignofPWMsignalgeneratortocontroltheDCmotor,usingtheNuvotonNuc140developmentboardchipPWMmodule,LCDdisplaymoduleandakeyboardinputmodule,usingthekeyinputcontrolPWMoutputtoaDCmotor,steplessspeedcontrolofDCmotor,anddisplayedintheLCD.ThetwokeysareadjustingthespeedofDCmotorspeedincreaseanddecrease.Keywords:PWM;Nuc140developmentboard;Dcmotor;Button;LCD;steplessspeedregulation目錄引言 引言脈沖寬度調(diào)制是一種模擬控制方式,其根據(jù)相應(yīng)載荷的變化來調(diào)制晶體管柵極或基極的偏置,來實現(xiàn)開關(guān)穩(wěn)壓電源輸出晶體管或晶體管導(dǎo)通時間的改變,這種方式能使電源的輸出電壓在工作條件變化時保持恒定,是利用微處理器的數(shù)字輸出來對模擬電路進(jìn)行控制的一種非常有效的技術(shù)。隨著電力半導(dǎo)體交流技術(shù)的日益發(fā)展成熟,直流電機(jī)在許多領(lǐng)域已被整流裝置代替,但直流電動機(jī)具有良好的啟動、調(diào)速和正反轉(zhuǎn)特性,能滿足生產(chǎn)過程中的各種特殊要求,因而在需要寬廣調(diào)速的場合及特殊要求的自動化控制系統(tǒng)中占有一定得應(yīng)用地位。

1設(shè)計任務(wù)(1)輸出PWM信號。(2)PWM信號頻率通過按鍵(周期)可調(diào)。(3)PWM信號輸出控制電機(jī)無級調(diào)速。(4)PWM信號頻率通過LCD顯示。2設(shè)計平臺2.1開發(fā)板NU-LB-NUC140介紹NU-LB-NUC140是基于NUC100系列單片機(jī)為新唐科技的的Cortex?-M0電路板,并提供了完整的開發(fā)環(huán)境,NUC140微控制器具有4K/8K/16K字節(jié)的內(nèi)部SRAM和32K/64K/128K字節(jié)的嵌入式閃存,內(nèi)置的1.8VLDO,集成定時器,看門狗定時器,RTC,PDMA,UART,SPI/SSP,I2C,PWM定時器,GPIO,LIN,CAN,USB2.0FS設(shè)備,12位ADC,模擬比較器,低電壓探測器和欠壓檢測功能。它支持掉電檢測。NU-LB-NUC140學(xué)習(xí)板類似于其他開發(fā)板。用戶可以用它來開發(fā)和驗證應(yīng)用程序來模擬真實的行為。本用戶手冊提供有關(guān)硬件的功能和有關(guān)使用該學(xué)習(xí)板信息。下圖顯示了NU-LB-NUC140開發(fā)板。圖2.1NU-LB-NUC140開發(fā)板2.2NU-LB-NUC140板的框圖圖3.2顯示了NU-LB-NUC140板的框圖。圖2.2NU-LB-NUC140板的框圖2.3NU-LB-NUC140板的主要組成部分主要成分:(1)MCU:NuMicroTMNUC140MCU,它可以運行高達(dá)50MHz的運行速度。(2)GPIO擴(kuò)展插槽:支持所有的GPI/O引腳接口,GPIO擴(kuò)展插槽。(3)AUDIO:WAU8822音頻編解碼器。(4)I2CEEPROM:24LC64I2CE2PROM。(5)SPIFLASH:25Q16SPI串行FLASH用于數(shù)據(jù)存儲。(6)UART:UART端口0連接到DSUB-9連接器。(7)SD卡插槽:通過SPI端口1支持一個SD卡插槽。(8)LCD連接器:支持LCD模塊。(9)直流電源插孔:5V/1A電源適配器輸入。(10)LDO:5V至支持NUC140和車載設(shè)備3.3V/1ALDO。(11)USB:USB連接功能。(12)蜂鳴器。(13)按鍵矩陣。(14)7段LED。(15)CAN接口。(16)可變電阻。(17)PWM/Capture。(18)4K/8K/16K字節(jié)內(nèi)建SRAM。3硬件設(shè)計3.1總體設(shè)計方案與系統(tǒng)構(gòu)成本次實訓(xùn)課題——基于嵌入式ARM的無極調(diào)速電機(jī)控制器設(shè)計。軟件程序從下載口接入Nu-LB-NUC140開發(fā)板,通過PWM專用的標(biāo)準(zhǔn)定時器還有匹配器以及按鍵控制電路來實現(xiàn)PWM的輸出控制直流電機(jī)的轉(zhuǎn)動。電路系統(tǒng)構(gòu)成框圖如圖2.1所示。LCD顯示主控模塊nuc140ve3cn芯片LCD顯示主控模塊nuc140ve3cn芯片驅(qū)動電機(jī)程序下載驅(qū)動電機(jī)程序下載按鍵輸入按鍵輸入圖3.1電路系統(tǒng)構(gòu)成3.2NUC140VE3CN芯片本系統(tǒng)主要由嵌入式ARMCortexM0芯片NUC140VE3CN構(gòu)成,按鍵輸入控制輸出電機(jī)的無極調(diào)速,液晶LCD顯示狀態(tài)。芯片NUC140VE3CN是該系統(tǒng)的主要部分。3.2.1NUC140VE3CN管腳NUC140VE3CN芯片管腳圖如圖3.3.1所示圖3.3.1NUC140VE3CN芯片管腳圖3.2.2NUC140VE3CN芯片主要性能(1)ARMCortexM0內(nèi)核最高運行50MHz的為微型處理器。(2)4K/8K/16K字節(jié)內(nèi)建SRAM。(3)最多支持2組I2C設(shè)備,一組12Mbps的USB2.0FS設(shè)備,持4組SPI控制器。(4)EmbeddedICERT和嵌入式跟蹤接口可實時調(diào)試和高速跟蹤執(zhí)行代碼。(5)12位ADC,轉(zhuǎn)換速率達(dá)700KSPS,最多8通道單端模式輸入或4通道差分模式輸入。(6)通過頻率補(bǔ)償寄存器(FCR)支持軟件頻率補(bǔ)償功。(7)四個16位PWM產(chǎn)生器,可輸出8路PWM或4組互補(bǔ)配對PWM,8路16位捕捉定時器(共享PWM定時器)提供8路輸入的上升/下降沿的捕捉功能,。(8)支持4組32位定時器,每個定時器有一個24位向上計數(shù)定時器和一個8位預(yù)分頻計數(shù)器。(9)支持EBI可訪問的空間:8位模式為64KB或16位模式為128KB。(10)支持四級檢測電壓:4.5V/3.8V/2.7V/2.2V。(11)看門狗定時溢出的中斷/復(fù)位選擇。(12)通過片內(nèi)PLL可實現(xiàn)最大為60MHz的CPU操作頻率,PLL的穩(wěn)定時間為100us。(13)支持一組PLL,高至50MHz,用于高性能的系統(tǒng)運行,外部4~24MHz晶振輸入用于USB和精準(zhǔn)的定時操作,外部32.768kHz晶振輸入用于RTC及低功耗模式操作。(14)2組模擬比較器模塊。(15)可通過個別使能/禁止外部功能和降低外部時鐘來優(yōu)化功耗。(16)通過外部中斷將處理器從掉電模式中喚醒。(17)單個電源供電,含有上電復(fù)位(POR)和掉電檢測(BOD)電路。3.2.3NUC140VE3CN的應(yīng)用(1)工業(yè)控制(2)醫(yī)療系統(tǒng)(3)訪問控制(4)軍事設(shè)備(5)無線通訊領(lǐng)域(6)ARM開發(fā)(7)一般性應(yīng)用(8)消費類電子產(chǎn)品3.3PWM模塊NUC140有2組PWM,支持4組PWM發(fā)生器,這些發(fā)生器可以配置成8個獨立的PWM輸出PWM0~PWM7,或4組互補(bǔ)的PWM對,(PWM0,PWM1),(PWM2,PWM3),(PWM4,PWM5)和(PWM6,PWM7)帶4個可編程的死區(qū)發(fā)生器。每組PWM發(fā)生器帶有一個8-位預(yù)分頻,一個提供5級時鐘源(1,1/2,1/4,1/8,1/16)的時鐘除頻器,兩個包含2個時鐘選擇的PWM定時器,兩個用于PWM周期控制的16位PWM向下計數(shù)計數(shù)器,兩個16位比較器用于PWM占空比控制及死區(qū)發(fā)生器。4組PWM發(fā)生器提供8個獨立的由硬件置位的PWM中斷標(biāo)志,當(dāng)相應(yīng)的PWM向下計數(shù)周期達(dá)到0時觸發(fā)中斷。每個PWM中斷源通過相應(yīng)的使能位允許CPU來請求PWM中斷。PWM發(fā)生器可以定義為產(chǎn)生單周期PWM周期信號的單觸發(fā)模式或連續(xù)輸出PWM波形的連續(xù)模式。PWM-定時器其中之一特性是數(shù)字輸入捕捉功能。若捕捉功能使能,則PWM的輸出管腳會被切換成捕捉輸入模式。捕捉器0和PWM0共用PWM0中的定時器;捕捉器1和PWM1共用PWM1定時器,以此類推。因此用戶在使用捕捉功能之前,必須預(yù)先配置PMW定時器。3.3.1PWM特性1.PWM功能特性:(1)PWM組有兩個PWM發(fā)生器。每個PWM支持8-位預(yù)分頻器,一個時鐘除頻器,兩個PWM定時器(向下計數(shù)),一個死區(qū)發(fā)生器和兩個PWM輸出。(2)最高16-位解析度。(3)PWM中斷請求與PWM周期同步(4)One-shot或Auto-reload模式(5)最高2個PWM組(PWMA/PWMB)可支持8路PWM通道或4對PWM通道2.捕捉功能特征:(1)與PWM發(fā)生器共用定時器模塊。(2)支持8個捕捉輸入通道,共享8個PWM輸出通道。(3)每個通道支持1個上升沿鎖存寄存器(CRLR),一個下降沿鎖存寄存器(CFLR)和捕捉中斷標(biāo)志(CAPIFx)。3.3.2PWM框圖本系統(tǒng)只使用了PWM發(fā)生器0,下圖3.4.2.1和圖3.4.2.2分別為PWM發(fā)生器0時鐘源控制框圖和PWM發(fā)生器0結(jié)構(gòu)框圖。圖3.3.2.1PWM發(fā)生器0時鐘源控制框圖圖3.3.2.2PWM發(fā)生器0結(jié)構(gòu)框圖3.3.3PWM定時器操作PWM周期和占空比控制由向下計數(shù)的PWM寄存器(CNR)和PWM比較寄存器(CMR)配置。PWM-定時器工作時序如圖5-42。脈寬調(diào)制的公式如下,PWM-定時器的圖例如圖5-41。注:在PWM功能使能前,MCU相應(yīng)的GPIO管腳必須配置成PWM功能(使能POE并禁用CAPENR)。PWM頻率=PWMxy_CLK/[(prescale+1)*(clockdivider)*(CNR+1)];xy代表01,23,45或67,取決于所選擇的PWM通道。占空比=(CMR+1)/(CNR+1)CMR>=CNR:PWM輸出為高CMR<CNR:PWM低脈寬=(CNR-CMR)unit[1];PWM高脈寬=(CMR+1)unitCMR=0:PWM低脈寬=(CNR)unit;PWM高脈寬=1unit下圖3.3.3.1為PWM定時器內(nèi)部比較器輸出。圖3.3.3.1PWM定時器內(nèi)部比較器輸出下圖3.3.3.2為PWM定時器操作時序。圖3.3.3.2PWM定時器操作時序3.3.4PWM雙緩存,自動重載以及單觸發(fā)模式PWM定時器具有雙緩存功能。寄存器預(yù)先設(shè)定的值,在一個周期完成后,可以自動重載。PWM計數(shù)器的值寫入CNRx,并可從PDRx讀出當(dāng)前PWM計數(shù)器的值。PWM控制寄存器(PCR)中CH0MOD位定義PWM0是自動重載模式或是單觸發(fā)模式。如果CH0MOD設(shè)為1,當(dāng)PWM計數(shù)器計到0,自動重載CNR0值到PWM計數(shù)器。如果CNR0設(shè)為0,PWM計數(shù)器計數(shù)到0后,將暫停運行。如果此時CH0MOD也設(shè)為0,計數(shù)器會立即停止。PWM1~PWM7運行狀態(tài)與PWM0相同。下圖3.3.4為PWM雙緩存圖解。圖3.3.4PWM雙緩存圖解3.3.5可調(diào)占空比雙緩存允許CMRx字在當(dāng)前周期的任意時刻改寫。導(dǎo)入值會在下一個周期生效。下圖3.3.5為PWM控制輸出占空比圖。圖3.3.5PWM控制輸出占空比圖3.3.6PWM定時器開啟過程使用下列步驟用于啟動PWM。1.設(shè)置時鐘選擇(CSR)。2.設(shè)置預(yù)分頻器(PPR)。3.設(shè)置反轉(zhuǎn)打開/關(guān)閉,死區(qū)發(fā)生器打開/關(guān)閉,自動重載/單觸發(fā)模式以及停止PWM-定時器(PCR)。4.設(shè)置比較器寄存器(CMR)來設(shè)定PWM占空比。5.設(shè)置PWM向下計數(shù)計數(shù)器寄存器(CNR)來設(shè)定PWM周期。6.設(shè)置中斷使能寄存器(PIER)。7.設(shè)置相應(yīng)GPIO管腳為PWM功能(使能POE并禁用CAPENR)用于PWM通道。8.使能PWM定時器開始運行(設(shè)置PCR中的CHxEN=1)。3.3.7PWM定時器關(guān)閉過程本程序所使用的關(guān)閉方法為設(shè)置16-位向下計數(shù)計數(shù)器(CNR)為0,并查看PDR(16-位向下計數(shù)計數(shù)器的當(dāng)前值)。當(dāng)PDR達(dá)到0,禁用PWM-定時器(PCR的CHxEN位)。3.4直流電機(jī)和驅(qū)動模塊3.4.1直流電機(jī)驅(qū)動模塊驅(qū)動的實現(xiàn)本系統(tǒng)的直流電機(jī)驅(qū)動模塊為L298電機(jī)驅(qū)動模塊。板上有個三端穩(wěn)壓器L7805,當(dāng)如果需要用電機(jī)的電源為控制部分供電的情況下可以把短路帽短路上,這樣板上就可以輸出一路5V電壓為控制部分電,但這樣的話隔離芯片就起不到隔離作用,所以短路帽就起到隔離使能的作用。該模塊具有信號指示,可驅(qū)動直流5-30V之間電壓的電機(jī),最大輸出電流2A(瞬間峰值電流3A),最大輸出功率25W;可輸出l路5V電壓為控制板供電;帶光耦隔離,抗干擾能力強(qiáng),具有續(xù)流保護(hù)等功能。3.4.2直流電機(jī)類型直流電機(jī)可按其結(jié)構(gòu)、工作原理和用途等進(jìn)行分類,其中根據(jù)直流電機(jī)的用途可分為以下幾種:直流發(fā)電機(jī)(將機(jī)械能轉(zhuǎn)化為直流電能)、直流電動機(jī)(將直流電能轉(zhuǎn)化為機(jī)械能)、直流測速發(fā)電機(jī)(將機(jī)械信號轉(zhuǎn)換為電信號)、直流伺服電動機(jī)(將控制信號轉(zhuǎn)換為機(jī)械信號)。下面以直流電動機(jī)作為研究對象。3.4.3直流電機(jī)結(jié)構(gòu)直流電機(jī)由定子和轉(zhuǎn)子兩部分組成。在定子上裝有磁極(電磁式直流電機(jī)磁極由繞在定子上的磁繞提供〉,其轉(zhuǎn)子由硅鋼片疊壓而成,轉(zhuǎn)子外圓有槽,槽內(nèi)嵌有電樞繞細(xì),繞細(xì)通過換向器和電刷引出,直流電機(jī)結(jié)構(gòu)如圖3.4.2所示。圖3.4.3直流電機(jī)結(jié)構(gòu)3.4.4直流電機(jī)工作原理直流電機(jī)電路模型如下圖3.4.4所示,磁極N、S間裝著一個可以轉(zhuǎn)動的鐵磁圓柱體,圓柱體的表面上固定著一個線圈abed。當(dāng)線圈中流過電流時,線圈受到電磁力作用,從而產(chǎn)生旋轉(zhuǎn)。根據(jù)左手定則可知,當(dāng)流過線圈中電流改變方向時,線圈的受方向也將改變,因此通過改變線圈電路的方向?qū)崿F(xiàn)改變電機(jī)的方向。圖3.4.4直流電機(jī)電路模型3.4.5直流電機(jī)主要技術(shù)參數(shù)直流電機(jī)的主要額定值有:額定功率Pn:在額定電流和電壓下,電機(jī)的負(fù)載能力。額定電斥Ue:長期運行的最高電壓。額定電流le:長期運行的最大電流。額定轉(zhuǎn)速n:單位時間內(nèi)的電機(jī)轉(zhuǎn)動快慢。以r/min為單位。勵磁電流E:施加到電極線圈上的電流。3.5按鍵模塊和液晶顯示模塊本設(shè)計系統(tǒng)使用了NU140開發(fā)板的3×3鍵盤的K1和K2兩個按鍵作為電機(jī)控制輸入,以及顯示所需要的128×64點陣LCD面板。4軟件設(shè)計4.1軟件設(shè)計流程及分析總體軟件設(shè)計流程圖如圖4.1所示。開始轉(zhuǎn)速減小,松開停留轉(zhuǎn)速增大,松開停留K1按下K2按下設(shè)置PWM寄存器產(chǎn)生PWM信號并輸出初始化程序掃描按鍵LCD顯示輸出開始轉(zhuǎn)速減小,松開停留轉(zhuǎn)速增大,松開停留K1按下K2按下設(shè)置PWM寄存器產(chǎn)生PWM信號并輸出初始化程序掃描按鍵LCD顯示輸出圖4.1總體軟件設(shè)計流程圖系統(tǒng)總體的設(shè)計開始初始化系統(tǒng),設(shè)置PWM寄存器產(chǎn)生PWM信號并輸出,檢測按鍵,若K1按下,輸出改變控制直流電機(jī)的轉(zhuǎn)速持續(xù)減小,松開按鍵,電機(jī)轉(zhuǎn)速停留在此刻速度不改變,LCD顯示輸出;當(dāng)按下K2,輸出改變控制直流電機(jī)的轉(zhuǎn)速持續(xù)增大,松開按鍵,電機(jī)轉(zhuǎn)速停留在此刻速度不改變,LCD顯示輸出。4.2初始化程序初始化程序如下#include<stdio.h>#include"PWM.h"#include"LCD.h"#include"Scankey.h" init_LCD(); clear_LCD(); print_Line(0,"PWM_DCmotor"); OpenKeyPad(); init_PWM(0,0,119,4);//初始化PWM0(GPA12)輸出1MHz的方波 Clock=12000000; PreScaler=119; ClockDivider=1; DutyCycle=50; tone=0;4.3PWM頻率的設(shè)定uint32_tFrequency;uint32_ttone;uint32_tClock; uint8_tPreScaler; uint8_tClockDivider; uint8_tDutyCycle; uint16_tCNR,CMR;init_PWM(0,0,119,4); Clock=12000000; PreScaler=119; ClockDivider=1; DutyCycle=50; tone=7000;Frequency=tone;初始化PWM0輸出1Mhz的方波,設(shè)定初始PWM頻率為7000。4.4PWM占空比的計算CNR=Clock/Frequency/(PreScaler+1)/ClockDivider-1;CMR=(CNR+1)*DutyCycle/100-1; PWM_Out(0,CNR,CMR);計算占空比并調(diào)用庫函數(shù)PWM_Out()進(jìn)行輸出。4.5程序的實現(xiàn)init_PWM(0,0,119,4); Clock=12000000; PreScaler=119; ClockDivider=1; DutyCycle=50; tone=7000; while(1) { number=ScanKey(); if(number==1) { print_Line(2,"Speeddecreasing"); tone=tone+100; if(tone>18000) tone=18000; } if(number==2) { print_Line(2,"Speedincreasing"); tone=tone-100; if(tone<0) tone=0; } DrvSYS_Delay(10000000);設(shè)定初始PWM輸出頻率為7000,此時電機(jī)轉(zhuǎn)速為中等速度,若K1鍵按下輸出頻率增加,占空比改變,輸出電壓持續(xù)減小,電機(jī)轉(zhuǎn)速減小,松開,輸出頻率不變,電機(jī)轉(zhuǎn)速不變;若K2鍵按下輸出頻率減小,占空比改變,輸出電壓持續(xù)增大,電機(jī)轉(zhuǎn)速增加,松開,輸出頻率不變,電機(jī)轉(zhuǎn)速不變,實現(xiàn)簡單的無極電機(jī)轉(zhuǎn)速的控制。結(jié)論這次實訓(xùn)匆忙的結(jié)束了。由于學(xué)期末考試的原因使得這次實訓(xùn)時間有點倉促,且在這個過程中遇到了好多困難,但總的來說,我基本按要求完成了無極調(diào)速電機(jī)控制器設(shè)計的要求。盡管這次基本能完成了設(shè)計的要求,但我覺得我還有很多需要改進(jìn)的地方,以后很長一段時間,還需加強(qiáng)這方面的學(xué)習(xí)。在這實訓(xùn)中,把理論和實踐相結(jié)合,我學(xué)到了許多新的知識。首先,完成這次實訓(xùn)之前選擇性地學(xué)習(xí)了本次實訓(xùn)所使用的開發(fā)板的相關(guān)知識,同時深刻認(rèn)識到自己很多知識的不足,比如C語言相關(guān)編程等知識的薄弱,查閱和復(fù)習(xí)了很多有關(guān)的知識。設(shè)計過程,首先考慮的是使用直流電機(jī)還是步進(jìn)電機(jī),因為自己是第一次使用嵌入式芯片,直流電機(jī)相對簡單,因此選擇了直流電機(jī)。在編寫程序的時候,遇到的問題最多,由于我是第一次嵌入式芯片,剛開始只是先學(xué)習(xí)開發(fā)板的相關(guān)例程,然后才一點點地從例程出發(fā),不斷地修改編寫,遇到困難和、老師討論,不斷地克服困難,并且惡補(bǔ)了自己的C語編程知識。經(jīng)過這次設(shè)計,我覺得自己真的學(xué)到了不少東西。同時學(xué)會了怎樣查閱資料和利用工具書。在這次設(shè)計過程中經(jīng)常遇到一些不曾學(xué)過的東西,但能有針對性地查找資料,然后加以吸收利用,提高了自己的應(yīng)用能力,而且還增長了自己的見識,補(bǔ)充了專業(yè)知識,增強(qiáng)了自己的動手能力,而且還磨練了自己的耐性。收獲頗多。

謝辭通過本次設(shè)計不僅是對我們的專業(yè)知識的檢查與總結(jié),而且是對今后學(xué)習(xí)研究的一種的激勵。過程中得到劉爭紅老師的悉心指導(dǎo),多次詢問研究進(jìn)程,并為我提供了大量寶貴的建議和相關(guān)的文獻(xiàn)資料,幫助我開拓研究思路,精心點撥、熱忱鼓勵。同時也要感謝熱心幫助我的同學(xué),幫助我克服了很多困難。緊張的日子也總算告一段落,回味起來,感觸頗多。在此過程中,我遇到了許多問題,通過老師和同學(xué)的幫助以及自己查閱資料等多種途徑,解決了許多問題,也提高了自己獨立思考問題、分析問題、解決問題的能力,同時也提高了實踐能力。最后我要感謝這段時間來所有幫助過我的老師、同學(xué)和朋友,是你們讓我的不斷發(fā)現(xiàn)自己的不足并幫助我解決一個個設(shè)計上的問題,給我留下了美好的回憶。非常感謝!

參考文獻(xiàn)[1]崔更申孫安青.ARM嵌入式系統(tǒng)開發(fā)與實踐[M].北京:中國電力出版社,2008.[2]趙俊.ARMCortex-M0從這里開始[M].北京:北京航空航天大學(xué)出版社,2012.[3]楊宗德.嵌入式ARM系統(tǒng)原理與實例開發(fā)[M].北京:北京大學(xué)出版社,2007.[4]劉天時[等].ARM7嵌入式開發(fā)基礎(chǔ)實驗[M].北京:北京航空航天大學(xué)出版社,2007.[5]杜春雷.ARM體系結(jié)構(gòu)與編程[M].北京:清華大學(xué)出版社,2003.[6]譚建成.電機(jī)控制專用集成電路[M].北京:機(jī)械工業(yè)出版社,1997.[7]張綺文.ARM嵌入式常用模塊與綜合系統(tǒng)設(shè)計實例精講.北京:電子工業(yè)出版社,2007.[8]

歐陽禹.ARM7嵌入式系統(tǒng)實訓(xùn)教程.北京:清華大學(xué)出版社,2008.[9]周立功.常用ARM指令及匯編[M].廣州:廣州周立功單片機(jī)發(fā)展有限公司,2003.[10]姜換新.ARM嵌入式系統(tǒng)C語言編程[J].TsinghuaTongfangOpticalDiscCo,2002(5):15~53.附錄11.主程序代碼#include<stdio.h>#include"NUC1xx.h"#include"GPIO.h"#include"SYS.h"#include"PWM.h"#include"LCD.h"#include"Note_Freq.h"#include"Scankey.h"int32_tmain(void){uint8_tnumber;inttone;uint32_tClock; uint32_tFrequency;uint8_tPreScaler;uint8_tClockDivider;uint8_tDutyCycle;uint16_tCNR,CMR; charTEXT1[16],TEXT2[16],TEXT3[16]; UNLOCKREG(); SYSCLK->PWRCON.XTL12M_EN=1; SYSCLK->CLKSEL0.HCLK_S=0; LOCKREG(); init_LCD(); clear_LCD(); print_Line(0,"PWM_DCmotor"); OpenKeyPad(); init_PWM(0,0,119,4); Clock=12000000; PreScaler=119; ClockDivider=1; DutyCycle=50; tone=0; while(1) { number=ScanKey(); if(number==1) { print_Line(2,"Speeddecreasing"); tone=tone+100; if(tone>18000) tone=18000; } if(number==2) { print_Line(2,"Speedincreasing"); tone=tone-100; if(tone<0) tone=0; } DrvSYS_Delay(10000000); //Delay1Second Frequency=tone; CNR=Clock/Frequency/(PreScaler+1)/ClockDivider-1;CMR=(CNR+1)*DutyCycle/100-1; PWM_Out(0,CNR,CMR); if(Frequency==0)PWM_Stop(0); sprintf(TEXT1,"Freq=%5dHz",tone); print_Line(1,TEXT1); } }2.Scankey函數(shù)代碼#include<stdio.h>#include"GPIO.h"#include"Scankey.h"voiddelay(void){ intj; for(j=0;j<1000;j++);}voidOpenKeyPad(void){ uint8_ti; /*Initialkeypad*/ for(i=0;i<6;i++) DrvGPIO_Open(E_GPA,i,E_IO_QUASI);}voidCloseKeyPad(void){ uint8_ti; for(i=0;i<6;i++) DrvGPIO_Close(E_GPA,i

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論