DSP課程設(shè)計(jì)-直流電機(jī)脈沖調(diào)試控制_第1頁
DSP課程設(shè)計(jì)-直流電機(jī)脈沖調(diào)試控制_第2頁
DSP課程設(shè)計(jì)-直流電機(jī)脈沖調(diào)試控制_第3頁
DSP課程設(shè)計(jì)-直流電機(jī)脈沖調(diào)試控制_第4頁
DSP課程設(shè)計(jì)-直流電機(jī)脈沖調(diào)試控制_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

DSP課程設(shè)計(jì)PAGE 直流電機(jī)脈沖調(diào)試控制專業(yè):測控技術(shù)與儀器班級:學(xué)生姓名:學(xué)號:指導(dǎo)教師:電氣工程學(xué)院目錄24845第一章緒論 1114141.1系統(tǒng)背景 1252981.1.1DSP技術(shù)的特點(diǎn)以及在電子技術(shù)中的應(yīng)用 131942第二章系統(tǒng)電路 390582.1直流電機(jī) 34820第三章系統(tǒng)軟件設(shè)計(jì) 562983.1系統(tǒng)程序設(shè)計(jì) 520772第四章CAN總線通信程序 814177第五章結(jié)束語 14PAGEPAGE13第一章緒論1.1系統(tǒng)背景1.1.1DSP技術(shù)的特點(diǎn)以及在電子技術(shù)中的應(yīng)用DSP一方面是DigitalSignalProcessing的縮寫,意思是數(shù)字信號處理,就是指數(shù)字信號理論研究。DSP另一方面是DigitalSignalProcessor,意思是數(shù)字信號處理器,就是用來完成數(shù)字信號處理的器件。最初的DSP器件只是被設(shè)計(jì)成用以完成復(fù)雜數(shù)字信號處理的算法。DSP器件緊隨著數(shù)字信號理論的發(fā)展而不斷發(fā)展。在20世紀(jì)60年代,數(shù)字信號處理技術(shù)才剛剛起步。60年代中期以后,快速傅里葉算法的出現(xiàn)及大規(guī)模集成電路的發(fā)展大大促進(jìn)了DSP技術(shù)與器件的飛速發(fā)展。(一)DSP器件的特點(diǎn)1.高速、高精度運(yùn)算能力(1)硬件乘法累加操作,在一個(gè)指令周期內(nèi)可完成一次乘法和一次加法。(2)哈弗結(jié)構(gòu)和流水線結(jié)構(gòu)。哈佛結(jié)構(gòu)的主要特點(diǎn)是將程序和數(shù)據(jù)存儲在不同的存儲空間中,即程序存儲器和數(shù)據(jù)存儲器是兩個(gè)相互獨(dú)立的存儲器,每個(gè)存儲器獨(dú)立編址,獨(dú)立訪問。與兩個(gè)存儲器相對應(yīng)的是系統(tǒng)中設(shè)置了程序總線和數(shù)據(jù)總線,從而使數(shù)據(jù)的吞吐率提高了一倍。由于程序和存儲器在兩個(gè)分開的空間中,因此取指和執(zhí)行能完全重疊。流水線與哈佛結(jié)構(gòu)相關(guān),DSP芯片廣泛采用流水線以減少指令執(zhí)行的時(shí)間,從而增強(qiáng)了處理器的處理能力。使取指、譯碼和執(zhí)行等操作可以重疊執(zhí)行,處理器可以并行處理二到四條指令,每條指令處于流水線的不同階段。(3)硬件循環(huán)控制。大多數(shù)的DSP都有專門的硬件,用于零開銷循環(huán)。所謂零開銷循環(huán)是指處理器在執(zhí)行循環(huán)時(shí),不用花時(shí)間去檢查循環(huán)計(jì)數(shù)器的值、條件轉(zhuǎn)移到循環(huán)的頂部、將循環(huán)計(jì)數(shù)器減1。(4)特殊的尋址模式。DSP處理器往往都支持專門的尋址模式,它們對通常的信號處理操作和算法是很有用的。例如,模塊(循環(huán))尋址(對實(shí)現(xiàn)數(shù)字濾波器延時(shí)線很有用)、位倒序?qū)ぶ罚▽FT很有用)。(5)具有豐富的外設(shè)。DSP具有DMA(有一組或多組獨(dú)立的DMA總線,與CPU的程序、數(shù)據(jù)總線并行工作,在不影響CPU工作的條件下,DMA速度已達(dá)800Mbyte/s以上)、串口、定時(shí)器等外設(shè)。2.強(qiáng)大的數(shù)據(jù)通信能力。3.靈活的可編程性。DSP騙內(nèi)設(shè)置RAM和ROM,可以方便地拓展程序、數(shù)據(jù)及I/O空間,同時(shí)允許ROM和RAM直接數(shù)據(jù)傳送??删幊藾SP芯片可使設(shè)計(jì)人員在開發(fā)過程中靈活方便地對軟件進(jìn)行修改和升級4.低功耗設(shè)計(jì)。DSP可以工作在省電狀態(tài),節(jié)省了能源。(二)DSP器件的應(yīng)用自從DSP芯片誕生以來,DSP芯片得到了飛速的發(fā)展。DSP芯片高速發(fā)展,一方面得益于集成電路的發(fā)展,另一方面也得益于巨大的市場。在短短的十多年時(shí)間,DSP芯片已經(jīng)在信號處理、通信、雷達(dá)等許多領(lǐng)域得到廣泛的應(yīng)用。目前,DSP芯片的價(jià)格也越來越低,性能價(jià)格比日益提高,具有巨大的應(yīng)用潛力。DSP芯片的應(yīng)用主要有:(1)信號處理--如,數(shù)字濾波、自適應(yīng)濾波、快速傅里葉變換、相關(guān)運(yùn)算、頻譜分析、卷積等。(2)通信--如,調(diào)制解調(diào)器、自適應(yīng)均衡、數(shù)據(jù)加密、數(shù)據(jù)壓縮、回坡抵消、多路復(fù)用、傳真、擴(kuò)頻通信、糾錯(cuò)編碼、波形產(chǎn)生等。(3)語音--如語音編碼、語音合成、語音識別、語音增強(qiáng)、說話人辨認(rèn)、說話人確認(rèn)、語音郵件、語音儲存等。(4)圖像/圖形--如二維和三維圖形處理、圖像壓縮與傳輸、圖像增強(qiáng)、動畫、機(jī)器人視覺等。(5)軍事--如保密通信、雷達(dá)處理、聲納處理、導(dǎo)航等。(6)儀器儀表--如頻譜分析、函數(shù)發(fā)生、鎖相環(huán)、地震處理等。(7)自動控制--如引擎控制、深空、自動駕駛、機(jī)器人控制、磁盤控制。(8)醫(yī)療--如助聽、超聲設(shè)備、診斷工具、病人監(jiān)護(hù)等。(9)家用電器--如高保真音響、音樂合成、音調(diào)控制、玩具與游戲、數(shù)字電話/電視等第二章系統(tǒng)電路2.1直流電機(jī)2.1.1直流電機(jī)與DSP的接線用到了16位的地址線(0b007)和16位的數(shù)據(jù)線,通過向該地址寫數(shù)據(jù)來控制直流電機(jī),如圖2.1.1圖2.1.1DSP控制直流電機(jī)的接線圖2.1.2直流電機(jī)是通過送PWM脈沖來調(diào)速的,如圖2.1.2所示PWM脈沖的周期不變,高電平的時(shí)間長則直流電機(jī)加速,低電平的時(shí)間長則直流電機(jī)減速(動摩擦力)。圖2.1.2直流電機(jī)的調(diào)速原理2.1.3直流電機(jī)的正反轉(zhuǎn)控制是通過如下電路實(shí)現(xiàn)的:其中T1,T3三極管由B控制,T2,T4三極管由A控制??刂品绞饺缦拢嚎刂圃砣缦拢簣D2.1.3直流電機(jī)正反轉(zhuǎn)控制原理第三章系統(tǒng)軟件設(shè)計(jì)3.1系統(tǒng)程序設(shè)計(jì)(1)程序軟件流程圖:(2)程序代碼(加注釋):#include "f2407_c.h"http://屏蔽中斷程序voidinlinedisable(){ asm("setcINTM");}//系統(tǒng)初始化子程序intinitial(){ asm("setc SXM"); //符號位擴(kuò)展有效 asm("clrc OVM"); //累加器中結(jié)果正常溢出 asm("clrc CNF"); //B0被配置為數(shù)據(jù)存儲空間 SCSR1=0x81FE; //CLKIN=6M,CLKOUT=4CLKIN=24M WDCR=0x0E8; //不使能看門狗,因?yàn)镾CSR2中的WDOVERRIDE //即WD復(fù)位后的缺省值為1,故可以用軟件禁止看門狗 IMR=0x0000; //禁止所有中斷 IFR=0x0FFFF; //清除全部中斷標(biāo)志,"寫1清0" WSGR=0x00; //禁止所有的等待狀態(tài)}//EVB模塊的PWM初始化程序intpwminitial(){ MCRC=MCRC|0x007E; //IOPE1-6被配置為基本功能方式,PWM7-12 ACTRB=0x0666; //PWM12,10,8低有效,PWM11,9,7高有效 DBTCONB=0x00; //不使能死區(qū)控制 CMPR4=0x1000; CMPR5=0x3000; CMPR6=0x5000;T3PR=0x6000;//設(shè)置定時(shí)器3的周期寄存器,并設(shè)置CMPR4-6,//以確定不同的輸出占空比 COMCONB=0x8200; //使能比較操作 T3CON=0x1000; //定時(shí)器3為連續(xù)增計(jì)數(shù)模式}//該中斷服務(wù)程序主要是為了防止干擾,不做任何其它操作void interruptnothing(){ return; //中斷直接返回}//主程序main(){ disable(); //總中斷禁止 initial(); //系統(tǒng)初始化 pwminitial(); //PWM輸出初始化 T3CON=T3CON|0x9040; //啟動定時(shí)器3 while(1) { ; }}(3)調(diào)試方法、過程及結(jié)果:將示波器的紅色表筆分別與DSP的J8-1、J8-3、J8-5相連,觀察示波器上的輸出波形,然后改變方波的占空比,看示波器上輸出方波是否改變。上述的程序運(yùn)行的結(jié)果可以從示波器上看出來,當(dāng)紅色表筆與J8-1相連時(shí),示波器上的顯示圖形為:T3=T1+T2,T2=5T1,由此可見,該方波的占空比為1:5。當(dāng)紅色表筆與J8-3相連時(shí),示波器上的顯示圖形為:T3=T1+T2,T2=T1,由此可見,該方波的占空比為1:1。當(dāng)紅色表筆與J8-5相連時(shí),示波器上的顯示圖形為:T3=T1+T2,5T2=T1,由此可見,該方波的占空比為5:1。結(jié)果分析:由CMPR4=0x1000;CMPR5=0x3000;CMPR6=0x5000;T3PR=0x6000;四條語句可以看出DSP上J8-1、J8-3、J8-5輸出的方波占空比理論值應(yīng)該分別為1:5、1:1、5:1,與真實(shí)輸出一致,說明輸出方波的占空比與CMPR4、CMPR5、CMPR6、T3PR的賦值有關(guān),改變這些值,就可以改變輸出方波的占空比。第四章CAN總線通信程序(1)程序軟件流程圖:發(fā)送流程圖接收流程圖(2)程序代碼(加注釋):發(fā)送程序代碼(加注釋):#include"f2407_c.h"http://引用頭部文件intCAN_FLAG;//定義標(biāo)志寄存器voidsystem_init();//聲明在程序中需要用到是函數(shù)voidCANMBX_ISR();voidCAN_INIT();voidinlinedisable(){asm("setcINTM");}voidinlineenable(){asm("clrcINTM");}//系統(tǒng)初始化子程序//(1)主程序main(){system_init();//系統(tǒng)初始化子程序CAN_FLAG=0x00;//清CAN用戶標(biāo)志,CAN_FLAG=0表示收到數(shù)據(jù)CAN_INIT();//CAN初始化子程序enable();for(;;){TCR=0x20;//MBX3請求發(fā)送while(TCR&0x2000==0)//等待發(fā)送應(yīng)答continue;TCR=0x2000;//清TA3和MIF3標(biāo)志位CAN_FLAG=0x0000;//清接收到標(biāo)志MDER=0x0000;//郵箱不使能MCR=0x0140;//CDR=1,數(shù)據(jù)改變請求MBX3A=MBX2A;//用郵箱2中數(shù)據(jù)更新3中的數(shù)據(jù)MBX3B=MBX2B;MBX3C=MBX2C;MBX3D=MBX2D;MCR=0x0480;//DB0=1,AB0=1,STM=0設(shè)置為正常工作模式MDER=0x04C;}}//(2)系統(tǒng)初始化子程序voidsystem_init(){asm("setc SXM"); //抑制符號位擴(kuò)展 asm("clrc OVM"); //累加器中結(jié)果正常溢出 asm("clrc CNF"); //B0被配置為數(shù)據(jù)存儲空間 asm("setc INTM"); //禁止所有中斷 SCSR1=0x81FE; //CLKIN=6M,CLKOUT=4CLKIN=24M WDCR=0x0E8; //不使能看門狗,因?yàn)镾CSR2中的WDOVERRIDE //即WD復(fù)位后的缺省值,故可以用軟件禁止看門狗 IMR=0x0010; //開中斷優(yōu)先級5 IFR=0x0FFFF; //清除全部中斷標(biāo)志,"寫1清0"}//(3)CAN初始化子程序voidCAN_INIT(){MCRB=MCRB|0x0C0;//設(shè)置IOPC6、IOPC7為CANRX,CANTXCAN_IFR=0x0FFFF;//清所有中斷標(biāo)志LAM1_H=0x7FFF;//設(shè)置郵箱3、2的屏蔽ID寄存器LAM1_L=0x0FFFF;//0則ID必須匹配MCR=0x1000;//CCR=1改變配置請求while(GSR&0x0010==0)continue;//CCE=1時(shí)即可配置BCR2、BCR1寄存器BCR2=0x01;//波特率預(yù)分頻寄存器BCR1=0x033;//波特率設(shè)置為500KbpsMCR=MCR&0x0EFFF;//CCR=0改變配置請求while(GSR&0x0010!=0)continue;//只有當(dāng)CCE=0時(shí),配置BCR2、BCR1寄存器成功MDER=0x040;//不使能郵箱2,郵箱2改為接收方式MCR=0x0103;//CDR=1,數(shù)據(jù)區(qū)改變請求MSGID2H=0x2447;//設(shè)置郵箱2的控制字及ID,IDE=0,AME=0,AAM=0//標(biāo)準(zhǔn)方式為MSGID2H[12~2]MSGID2L=0x0FFFF;MSGCTRL2=0x08;//設(shè)置控制,數(shù)據(jù)長度DCL=8,RTR=0數(shù)據(jù)幀MBX2A=0x1000;//郵箱2信息初始化MBX2B=0x3000;MBX2C=0x0000;MBX2D=0x0000;MSGID3H=0x2447;/設(shè)置郵箱3的標(biāo)識符MSGID3L=0x0FFFF;MSGCTRL3=0x08;//RTR=0,DCL=8MBX3A=0x1500;//郵箱3信息初始化MBX3B=0x2000;MBX3C=0x5500;MBX3D=0x6000;CAN_IMR=0x0F7FF;CAN_IFR=0x0FFFF;MCR=0x0480;//DB0=1,AB0=1,STM=1設(shè)置為自測試模式MDER=0x04C;//使能郵箱2和3,郵箱2為接收方式//Counter=0;}//(4)中斷程序voidinterruptGRIS5(){switch(PIVR){case64:CANMBX_ISR();break;}enable();return;}voidCANMBX_ISR(){RCR=0x040;//復(fù)位RMP2和MIF2CAN_FLAG=1;//置用戶接收標(biāo)志}//直接返回中斷服務(wù)程序voidinterruptnothing(){ return;}接收程序代碼(加注釋):#include"f2407_c.h"http://引用頭部文件intCAN_FLAG;//定義標(biāo)志寄存器voidsystem_init();//聲明在程序中需要用到是函數(shù)voidCANMBX_ISR();voidCAN_INIT();voidinlinedisable(){asm("setcINTM");}voidinlineenable(){asm("clrcINTM");}//EVB模塊的PWM初始化程序intpwminitial(){MCRC=MCRC|0x007E; //IOPE1-6被配置為基本功能方式,PWM7-12ACTRB=0x0666; //PWM12,10,8低有效,PWM11,9,7高有效DBTCONB=0x00; //不使能死區(qū)控制CMPR4=MBX2A;CMPR6=MBX2B;T3PR=0x6000;//設(shè)置定時(shí)器3的周期寄存器,并設(shè)置CMPR4-6,以確定不同的輸出占空比COMCONB=0x8200; //使能比較操作T3CON=0x1000; //定時(shí)器3為連續(xù)增計(jì)數(shù)模式}//(1)主程序main(){disable(); //總中斷禁止system_init();//系統(tǒng)初始化子程序CAN_FLAG=0x00;//清CAN用戶標(biāo)志,CAN_FLAG=0表示收到數(shù)據(jù)CAN_INIT();//CAN初始化子程序enable();for(;;){while(CAN_FLAG==0)continue;//等待接收數(shù)據(jù)CAN_FLAG=0x0000;//清接收到標(biāo)志MDER=0x0000;//郵箱不使能MCR=0x0140;//CDR=1,數(shù)據(jù)改變請求pwminitial(); //PWM輸出初始化T3CON=T3CON|0x9040; //啟動定時(shí)器3MCR=0x0480;//DB0=1,AB0=1,STM=0設(shè)置為正常工作模式MDER=0x044;}}//(2)系統(tǒng)初始化子程序voidsystem_init(){asm("setc SXM"); //抑制符號位擴(kuò)展 asm("clrc OVM"); //累加器中結(jié)果正常溢出 asm("clrc CNF"); //B0被配置為數(shù)據(jù)存儲空間 asm("setc INTM"); //禁止所有中斷 SCSR1=0x81FE; //CLKIN=6M,CLKOUT=4CLKIN=24M WDCR=0x0E8; //不使能看門狗,因?yàn)镾CSR2中的WDOVERRIDE //即WD復(fù)位后的缺省值,故可以用軟件禁止看門狗 IMR=0x0010; //開中斷優(yōu)先級5 IFR=0x0FFFF; //清除全部中斷標(biāo)志,"寫1清0" WSGR=0x00; //禁止所有的等待狀態(tài)}//(3)CAN初始化子程序voidCAN_INIT(){MCRB=MCRB|0x0C0;//設(shè)置IOPC6、IOPC7為CANRX,CANTXCAN_IFR=0x0FFFF;//清所有中斷標(biāo)志LAM1_H=0x7FFF;//設(shè)置郵箱3、2的屏蔽ID寄存器LAM1_L=0x0FFFF;//0則ID必須匹配MCR=0x1000;//CCR=1改變配置請求while(GSR&0x0010==0)continue;//CCE=1時(shí)即可配置BCR2、BCR1寄存器BCR2=0x01;//波特率預(yù)分頻寄存器BCR1=0x033;//波特率設(shè)置為500KbpsMCR=MCR&0x0EFFF;//CCR=0改變配置請求while(GSR&0x0010!=0)continue;//只有當(dāng)CCE=0時(shí),配置BCR2、BCR1寄存器成功MDER=0x040;//不使能郵箱2,郵箱2改為接收方式MCR=0x0103;//CDR=1,數(shù)據(jù)區(qū)改變請求MSGID2H=0x2447;//設(shè)置郵箱2的控制字及ID//IDE=0,AME=0,AAM=0,標(biāo)準(zhǔn)方式為MSGID2H[12~2]MSGID2L=0x0FFFF;MSGCTRL2=0x08;//設(shè)置控制,數(shù)據(jù)長度DCL=8,RTR=0數(shù)據(jù)幀MBX2A=0x3000;//郵箱2信息初始化MBX2B=0x3000;MBX2C=0x0000;MBX2D=0x0000;MSGID3H=0x2447;//設(shè)置郵箱3的標(biāo)識符MSGID3L=0x0FFFF;MSGCTRL3=0x08;//RTR=0,DCL=8MBX3A=0x1234;

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論