ank實驗手冊1tms320f28035開發(fā)板v1 1 1_第1頁
ank實驗手冊1tms320f28035開發(fā)板v1 1 1_第2頁
ank實驗手冊1tms320f28035開發(fā)板v1 1 1_第3頁
ank實驗手冊1tms320f28035開發(fā)板v1 1 1_第4頁
ank實驗手冊1tms320f28035開發(fā)板v1 1 1_第5頁
已閱讀5頁,還剩55頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

óéFoxitPDFEditor°?è¨?ùóD(c)byFoxitSoftwareCompany,DSP5V系統(tǒng)連接時需要采取電平轉換措施(245電平轉換等),否則可能燒毀DSP。TFLED外,DSPIO也已引出,方便用戶二次擴展4、我們所有實驗例程的工程名都叫DSP_Tempalte,因為他們都是從同一個工程3個實驗演示這個工程模板是如何 6、我們將盡最大能力提供用戶技術支持,歡迎大家旺旺或郵箱 1、 完成基本使用手冊2、 進一步完善各個實驗文檔,豐富了調試截圖,實驗達到19個3、 增加AD實驗并撰寫了實驗文檔óéFoxitPDFEditor°?è¨?ùóD(c)byFoxitSoftwareCompany,1.1TMS320F28035V1.24個用戶按鍵,2個CANDSP所有開發(fā)板使用10M無源晶振作為DSP外部時鐘輸入源,核心控制器為TMS320F28035TIPiccoloDSP之一,它具有很高的性價eQEPePWM接口,eCAP2833x系óéFoxitPDFEditor°?è¨?ùóD(c)byFoxitSoftwareCompany,提下降低成本,對于學習來說它更適合高校學生或工程師前期評估。掌握了2803xDSP2000DSP開2803x28xDSP內核外還具有一個浮點運算CLA(2802xCLA核)DSP,用戶可以使28x核處理各種通信(eCAN,SCI,SPI等)和事件(eQEP,EPWM,eCAP等)任務,DSP的性能。TMS320F280352803x系列中最高的一款,作為學習開DSP以降低產品成MINIUSB座進行供電,我們將隨開發(fā)板一起贈送用戶一根MINIUSB延長線,以方便用戶使用。1.3是我們推出的TIXDS100V1DSP仿真器,該仿真器主要是仿真Piccolo真開發(fā)2000系列DSP其具有很高的性價比。óéFoxitPDFEditor°?è¨?ùóD(c)byFoxitSoftwareCompany,1.3XDS100V2XDS100V2JTAG仿真以外,還可以使用板載的USBDSP的同時使用該串口功能,以省去一根CCS3.3TIDSP開發(fā)最常用的軟件,無論是相關書籍還是網絡資源中2.1盤,且未改動過,那么安裝XDS100V1的默認安裝路徑安裝即可。腦后,電腦會自動加載驅動,最后可以設備管理里面看到仿真器,如圖2.2。1.2XDS100V1CCS4.2的安裝可以查閱光盤里提供的另一個文檔,我們將在稍后推出CCS4.2專門例程時增補該部分的詳細安裝方法,屆時已經購買了本開發(fā)板的用CCSsetupCCS3.3SetupCCS3.3的安裝目錄,進入到如圖3.1所示:圖ccs2000_xds100usb.txttxt文檔,我們可以看到這就是目前該版本的CCS3.3中XDS100V1所支持的仿真器型號:圖我們看到,這里并沒有F28035的型號,這時就需要大家手動添加一個txtF28027那一行,并復制到文本文圖CCS3.3Setup圖C28xxF28035,這就是我們剛剛在上面所說的地方添3.5Setup圖DSP2800DSPCLA核,有關的然后在左下角點擊保存并退出,如圖3.7:圖結束了,接下來我們將演示如何新建一個基于CCS3.3的工程。3.2新建一個基于CCS3.3DSP_ProjectE盤提前新建的一個空的文件,用戶可以按照自己習慣給你以后的DSP工程新建一個總得文件夾。我們的就是DSP_Project。圖我們可以看到,編譯器會自動生成一個與工程名同名的文件夾統(tǒng)一包含,對外獨立。如圖3.9就是在這個文件夾下編譯器生成的兩個文件。圖第二步:為工程添加TI的片級支持庫代碼包,DSP2803x_common和操作結構體,匯編文件和CMD文件,如圖3.10:圖該工程添加兩個CMD文件,如圖3.11:圖CMDDSP中的位DSP芯片本省的存儲段決定了,用戶能靈活分配的一般是RAM存儲段和Flash存儲段?;綜代碼支持文件。圖圖CMD文件、C文件和匯編文件就完成C文件,即一個實現用戶自己代碼的文件,我們把它取名為main.c,這個名字按您自己的習慣來取。FileFile->New->SourceFile,File->Save,3.14DSP_Template圖dOpinio6的對話框,請按照圖示進行逐一配置,其中最重要的是IncludeSearchPat,它告訴編譯器在哪里尋找包含的頭文件。大家如果對“..\”代碼示例中將廣泛采用這種包含形式,它的好處是可以做到模塊化封裝代碼,不同的模塊放在不同的文件夾下,當要包含其他的文件夾內的頭文件時,就要3.16Compiler3.17Linker3.18LibrariesDSP_Template工程在光盤中,用戶可以將其拷貝到英文路徑實驗一:三種不同的方法實現LED的閃爍控制DSPGPIO的三類寄存器進行操作,它們分別是:GPxDAT寄存器;SET/CLEAR寄存器;TOGGLE寄存器。GPIOMCU要做掌握的最基本的知識,通過該示例的演示,希望大家能熟練操作GPIO的輸出狀態(tài)。GPIO的操作,EVMD2D3DSPGPIO操作IO端口,使其輸出高電平或低電平,這三種方式分別以函數:Gpio_example1(),Gpio_example2(),Gpio_example3()實現,在演代碼執(zhí)行流程12260MHZ的系統(tǒng)時鐘系統(tǒng)的延時是通過軟件執(zhí)行空操作實現的,用戶可以嘗試使用DSP2803x_usDelay.asm里面的延時實現同樣的延時功能,這個匯編代碼實現的GPIO的輸出操作,后面的示例將有將仿真器與開發(fā)板連接后,編譯程序并下載,點擊運行可以觀察到兩個Alt+CDebug->Connect,將編譯器與開發(fā)板連接。當開發(fā)板與譯無誤后(Project->BulidF7快捷鍵)File->LoadProgram,在工程目圖或電機編譯器左側工具欄中的“小人”符號,如圖4.1.2,程序便開始運行。圖程序運行后我們可以看到兩個用戶指示燈D2(綠色)和D3(紅色)開始以一定的頻率在閃爍。打開main.c文件,在你當前選擇的閃燈控制函數中,比如Gpio_example3()函數中,在Delay_nMS(500)處設置端點,程序運行到這里將會DSP在全速運行時是沒有時圖圖LED閃爍頻率不同來練習CCS下的編程方法。初始化有一定的認識,它們的正確配置是DSP能夠運行程序的基本前提。flash固化模式,flashflash并執(zhí)行一些代碼的拷貝等操作;OnChip_Driver文件夾,以后和片上外設有關的基本驅動USART,SPI,Timer等都講放在這個文件夾下以方便模塊劃分和工程管理;OnChip_DriverOnChip_Driver_Inc.h的頭文件,DEBUG_EN這RAM中運行(DEBUG模式)FlashCMD文件是不哪種CMD命令的。這個示例實現了一個真正意義上的工程模板,用戶可以只需要修改宏定義DEBUG_EN的值就能實現兩種模式的切換,使用時很方便,它的實現也很簡單,就CMD命令,flash模式則RAM即可。需要注意的是:DSP的RAM畢竟有限,如果有的工程代碼超過了RAM的容量,那么就只能使用flash模式來直接下載運行了。#include這就是文件的相對包含,它的意思是告訴main.c這個被包含的頭文件圖DEBUG_EN1DEBUG模式,這時可以的值為0,這時生成的.out文件不能仿真,而是下載到Flash中進行固化的。F28xxOn-ChipFlashProgramer4.2.2,它提示系統(tǒng)時鐘為60MHZ,點擊OK進入圖4.2.3。圖圖文件替換了。點擊ExecuteOperation,開始下載。圖圖圖電后再上電LED還在閃爍,即程序又重新運行了。FlashTICMD文件進行了處理,分別將用于仿真運行CMDFlashCMD合到了一個文件中,并通過一個宏定義DEBUG_EN來進行條件編譯。時,將無法再用DEBUG模式,而必須使用Flash模式。本實驗實現一個按鍵狀態(tài)的檢測,LED燈的亮該示例在上一個工程模板的基礎上新增加了一個Delay模塊,這個模塊實現的延時函數是基于匯編級US延時單元的,所以延時比較精確,Delay模塊放在OnChip_Driver文件夾下。該示例增加了一個頭文件Debug_Cfg.h,并將DEBUG_EN宏定義放于該文件內,以后要更改調試模式就在這個文件中修改宏塊,在代碼量運行的情況下,都可以進行DEBUG調試和Flash固化。將仿真器與開發(fā)板連接后,編譯程序并下載,D2(綠色)以按下K3(EVM板上方第一個按鍵)后可以看到D3點亮(紅色),釋放按鍵后燈熄用戶可以更改Debug_Cfg.h中的DEBUG_EN宏定義,來確定是進行仿真模式flashDEBUG_EN1Jtag在線仿真模式,如果DEBUG_EN0Flash中,斷電后重新上電程用戶可以在該基礎上添加另外三個按鍵檢測的代碼,LED的亮LED的亮滅或鍵是否按下用宏定義實現,這樣便于程序閱讀 #define #define #define #define 如上的宏定義,通過宏定義可以一目了然程序的意思,同時如果連接LED或按小結:DEBUGFlash模式的切換戶可以進一步掌握GPIO寄存器的使用方法。別是Timer0,Timer1和Timer2。三個定時器相互獨立。D2D3以不同的頻率時間閃爍,定時時間不同,閃爍頻率就不同,用戶可以使用示波器觀察LED的閃爍頻率是否和定時頻率一致。=PIE中斷闡述文檔在附帶光盤中的28035_Systemcontrolandinterrrup.pdf中。以下是Timer定時器的初始化函數,定時最小單位是US,如時時間為1S。void{//本示例中我們使能并啟動了三個定時器(ier-),如果不想用某個定時器,CpuTimer0Regs.TCR.bit.TSS=0; //啟動定時器(TSS=0)CpuTimer1Regs.TCR.bit.TSS=0;; //啟動定時器(TSS=0)CpuTimer2Regs.TCR.bit.TSS= //啟動定時器(TSS=}staticvoid{}Timer0LED21Sinterruptvoid{PieCtrlRegs.PIEACK.bit.ACK1=1;}和D3(紅色)以不同的頻率在閃爍,其中D2每隔1S閃一次,D3每隔100MS2803532812只有一個來說,他們給用戶提供了更多我們比較熟悉的稱謂是USART串口。MyBSP文件夾中,MyBSPMyBspInc.hFIFOFIFO{Uint16brr_reg=(1875000/buad)-1; //15000000/8=1875000 //PIE中斷函數配置SciaRegs.SCICCR.all //1stop No//Noparity,8char//asyncmode,idle-lineprotocolSciaRegs.SCICTL1.all=0x0003; //enableTX,RX,internalSCICLK,//DisableRXERR,SLEEP,SciaRegs.SCICTL2.all=0x0003;#ifTX_INT_EN >0SciaRegs.SCICTL2.bit.TXINTENA=1; SciaRegs.SCICTL2.bit.TXINTENA=0; SciaRegs.SCICTL1.all SCI }SCIHBAUD、SCILBAUD16LSPCLK低速外設時鐘共同決定的。它們的關系是SCIBuad(波特率LSPCLK[(BRR+1)*8],反推之即BRR=(LSPCLK/Buad*8)-同時要注意,如果BRR0,那么BuadLSPCLK/16.其中LSPCLK是主時鐘分頻得到的,本示例中主時鐘為60M,低速時鐘分頻寄存器為0x02,對應4分頻,即LSPCLK60/4=15MHZ(InitSysCtrl()函數了解相關時鐘寄存器的配置過voidUSART_Transmit(Uint16{while(SciaRegs.SCICTL2.bit.TXRDY== ;}SciaRegs.SCITXBUF=}dataUint16也就不足為怪了,DSP在實際實用時只用了其低8位。interruptvoid{COM1_RxBuff[Index]=SciaRegs.SCIRXBUF.all;if(Index<Frame_Length){Index}PieCtrlRegs.PIEACK.bit.ACK9= //IssuePIE}這里我們初始化的波特率為38400。if(USART_GetChar(buffer,1)){}DB9USB轉串往DSP發(fā)送若干數據后,這些數據又會回復給電腦,如圖4.5.1。4.5.1SCIAFIFOFIFO功能后,能夠在一定程度上降低CPU的查詢CPU“減負”。其中發(fā)送使用查詢模式,接收使用中斷模式,相對于查詢接收模式可以降低CPU消耗。本示例中串口使用8位長度數據,1位停止位,無奇偶校驗。FIFO4DSPSCIA1DSP發(fā)送一個字節(jié),但是需要點4DSP才會將收到的數據返回到電腦,用戶也可以在接收中斷中設置斷點觀察是否是點擊4次以后才進入中斷。而發(fā)送過程中,我們查詢的狀態(tài)是SciaRegs.SCIFFTX.bit.TXFFST,即TXFFSTFIFO中還有多少個數據沒有被發(fā)送出去,為了減少等待的時間,33個以上的數據沒有發(fā)送時才等待,這樣相比與沒有使用FIFO的情況,降低了CPU等待的頻率和時間。DB9接口通過串口延長線與電腦相連接,如果您的電腦沒有串注意觀察一個數據要點擊發(fā)送4次才會進入中斷(在接收中斷中設置斷點)讓DSPFIFOCPU的頻注意:DebugDEBUG_EN0,voidUSART_Transmit(Uint16{#if > ;}while(SciaRegs.SCICTL2.bit.TXRDY== //如果SCITXBUF沒有準備好接收新的數據則一直等待直到標志置;}SciaRegs.SCITXBUF=}過實驗觀察FIFO的具體作用所在。DSPSPISPI內部回環(huán)測試,即通過將相連接,達到自發(fā)自收的目的,在回環(huán)測試模式下,SCKMOSI也是有波形信長度(1-16位可選),SPI使用的是低速時鐘LSPCLK,如果系統(tǒng)配置的是關于SPI速度的配置可以查閱SPI部分的數據手冊。FIFO的功能,SPIFIFO4級深度,FIFO的好CPU在發(fā)送和接收時等待的時間,如果這時還開啟了中斷的話,FIFOSPI接收TI28xxDSPFIFO功能,這也是一大特色,我們要善用之,在以上我們的串口示例中也有類似FIFO應用的例子。SPISPI設備都是收發(fā)一體的,即SCKSCKSCK的同步下,從機便將主機要讀取的數據Uint16SPIA_WriteRead(Uint16{while(SpiaRegs.SPIFFTX.bit.TXFFST>= ;}SpiaRegs.SPITXBUF=while(SpiaRegs.SPIFFRX.bit.RXFFST== ;}data=SpiaRegs.SPIRXBUF;returndata;}將仿真器與開發(fā)板連接后,編譯程序并下載,D2(綠色)指的值小1,大家可以自行分析為何要小1;8位看一下接收和發(fā)送值的變化情況,這時可以88位了。大家可以查閱手冊自行分析這是為何(或使用給出8位數據通信的方法。SPISPISTE。但是在本示例中,大家可以通過示下一個nRF4.7.1SCK圖SPI部分的手冊(光盤中附有),對照程序查看寄存器的配置,以加深對SPI的了解。線收發(fā)應用場合。圖4.8.1是其原理框圖:4.8.1nRF24L01SPIMOSI,MISO,SCK,CS外,還需要額外的CE,IRQ兩個GPIO來輔助控制nRF24L01。 {} nRF24L01API函數,用戶直接調用即可。如果用驗證nRF24L01DSPSPI是否通信正確。小結:DSPSPI的一個具體應用,通過該實驗用戶可以進一步掌握SPI的開發(fā)和使用方法。TFSD_SizeTF卡預先TFDSPLED3_TOGGLE;代碼處設置斷點,并查看SD_Size的值,其單位為GB??梢宰x寫SD卡的的扇區(qū)等。讀寫數據。圖4.9.1SPI的四種通信模式,SDmode0。圖4.9.2SDMMCSD卡的初始化,就是要部分的卡讀寫最小單位就是一個扇區(qū),一個扇區(qū)通常是512字節(jié)。4.9.2SD/MMC初始化,之后我們讀取SD的容量,并將其保存在變量SD_Size中。SD_DriverAPISD卡進行讀寫,注SDFATFAT文件系統(tǒng),大家可以查看光盤中的相關SD的根目錄新建一個名STMSD卡根目錄下所有的文件名稱,并將它們通過圖4.10.2TF圖4.10.3DSPTF卡中的文件列表,注意因為我們的文件系統(tǒng)圖小結:DSPSD卡中文件那樣只管實驗十一:LCD彩屏顯示實驗萬色(RGB666),LCD的控制,RGB565格式這樣一個像素剛16位,用戶可以根據需要選配,LCDMCU連接,為ILI9325,7783,D325等,對應支持的屏可以在LCD_Driver.c中的函數DEBUGCMD文件,textRAML0L1(3K*16位)修改成RAML1L2L3(6K),同時將econstRAML0(2K)的段內,這樣新修CMDRAMCMD文則代碼是放在flash中,這樣基本不會存在代碼放不下的問題。操作GPIO8-15時不能影響到其他的IO狀態(tài)。(如果用16位模式要將宏定義LCD_8_BIT_EN0,LCD16位模式,DSPLCD的數據端口為GPIO0-15)。LCDLCDLCD的小結:CMD文件,DSPRAM得到了更充分的利用,DEBUGCMD文件與之前的工程進行對比,比較我們改動實驗十二:JPG

碼數碼相框實驗LCD,FatFs文件系統(tǒng),Tjpgd解碼模塊融合到一起,實現了一個JPG解碼并顯示的簡易數碼相框功能。、、比例調整支持:1/1,1/2,1/4,1/83、目前作者提供的移植應用平臺有AVR,PIC24,LPC1114andWin32,特別是Win32平臺下的代碼可以用VC直接可以到該網站查詢。圖4.12.1是JPG解碼模塊的原理框圖:

圖óéFoxitPDFEditor°?è¨?ùóD(c)byFoxitSoftwareCompany,圖óéFoxitPDFEditor°?è¨?ùóD(c)byFoxitSoftwareCompany,圖小結:DSP開發(fā)方法和技巧,通過代碼的認識,同時也讓我們看到了28035的性能。PWM波形輸出,通過配置,28035PWM1APWM1B將輸6MHZ的PWMPWM7APWM7B10KHZ的PWM波;28035714PWMPWM1的ABGPIO0GPIO1;PWM7APWM7BGPIO40和GPIO41。PWM7AD3PWM7A的占空比,D3的亮度會跟著改變(10KHZ頻率下占空比可調細分數為0-6000)。PWMCPU主頻/period,periodPWM初始化時傳入的period600060000KHZ/6000=占空比的細分數可以達到6000份。6MHZPWMperiod值就為10PWM10份了,此時的PWM6MHZ10份整數占空比細分相當于多了256份的小數點細分,占空比精度提高了不少。本示例中,PWM1APWM調節(jié),PWM7A演示的是占空1、將仿真器與開發(fā)板連接后,編譯程序并下載2EVMDB9接口通過串口延長線與電腦相連接,如果您的電腦沒有USBXDS100V1仿真器,那么可以直接使用該仿真器的串口接口,您只需要將P2接口上的GPIO28Tx連接,GPIO29Rx連接即可。我們仿真器可以同時進328035發(fā)送一個整數,發(fā)送的4.14.1:圖然后切換到串口示波器一欄,如圖4.14.2,在最下邊可以發(fā)送任意一個32位(int32)28035,一90xAA開頭,0X55結尾,并使用異或校驗。具體的圖圖圖4.14.4是界面設定部分,可以設定顯示的點數,命令最大值范圍,默認4.14.428035main函 if(PWM_Data>{PWM_Data=}elseif(PWM_Data<{PWM_Data=}}程序首先會查詢接收電腦發(fā)送的整數,如果接收到數據,則先調用函數0-6000PWM7A的占空比細分D3LED亮度會呈現EPwm1Regs.CMPA.half.CMPAHRi //815-8iif(i>{i=} 進方式變化,如圖4.14.5和4.14.6。 圖 圖方法,知道如何設置PWM的頻率和修改占空比。PWM波形輸出以控制電機,通過配置,28035PWM1A和PWM1B10KHZ的方波;28035714PWM波輸PWM1ABGPIO0和PWMCPU主頻/period,periodPWM初始化時傳入的period600060000KHZ/6000=period6000,pwm300050%10KHZ的頻率下,占空比的細分數可以達到6000份。PWMH10-20KHZ之間,如果選用了,本開環(huán)控制電機示例使用的就是10KHZ的PWM波。4.15.1HH橋還應具備隔離或用Q4導通,Q2Q3Q2Q3導通,Q1Q4截止時,電流從電機的右端流到左端。這樣電機就實現了方向控制。Q2Q350%的時間導通,50%的時間截止,那么電機上獲電機H橋的控制原理請見關盤里面的一篇詳細文檔《H橋控制原理.doc

4.15.1H1、將仿真器與開發(fā)板連接后,編譯程序并下載2EVMDB9接口通過串口延長線與電腦相連接,如果您的電腦沒有USBXDS100V1仿真器,那么可以直接使用該仿真器的串口接口,您只需要將P2接口上的GPIO28Tx連接,GPIO29Rx連接即可。我們仿真器可以同時進328035GPIO0和4、將電機與H28035的外中斷配置和使用方法。280353個外中斷,這三個外中斷的的中斷觸發(fā)源可配置為GPIO0-GPIO31之間的任意一個;本示例GPIO27XINT1的中斷觸發(fā)沿,如果按鍵按下,一個下降沿將通過GPIOXINTxSEL寄存器的GPIOSEL= //1、將仿真器與開發(fā)板連接后,編譯程序并下載,點擊運行2K2(EVM板上第四個按鍵)D2的狀態(tài)會翻轉一次,D2中的手冊(28035_Systemcontrolandinterrrup.PDF)。實驗十七:電機碼盤采集實 中斷采IO結合,以實現碼盤脈沖的計正交碼盤分為A相和B90°,用戶可通過1、2、3、4引腳處引出圖4.17.1正轉脈沖波形 圖4.17.2反轉脈沖波形A相接在了外中斷上,上升沿和下降沿都可以觸發(fā)中斷,所以一個周4.17.310MSA圖

圖2倍頻,GPIO3IO,初始化為輸入,其目的是判斷當1、將仿真器與開發(fā)板連接后,編譯程序并下載,點擊運行如圖4.17.4。頻測速,該實驗室下一個PID閉環(huán)控制實驗的基

溫馨提示

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

評論

0/150

提交評論