版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、鄭州航空工業(yè)管理學(xué)院電子通信工程系DSP原理及應(yīng)用課程設(shè)計報告設(shè)計題目:基于TMS320F2812 DSP處理器的信號儀的設(shè)計與實現(xiàn) 學(xué) 號: 101308205 姓 名: 韓 紅 印 專 業(yè): 電子信息工程 設(shè)計日期: 2013年6月8 日 指導(dǎo)老師: 陳 宇 老 師 1、 引言串行外設(shè)接口(SPI Serial Peripheral Interface)總線系統(tǒng)是一種同步串行外設(shè)接口,最早由Motorola公司推出,SPI是一種告訴、全雙工、同步的通信總線,信號線集束在芯片只用到4根管腳,既節(jié)省芯片管腳資源,又便于PCB布局。SPI接口以串行方式建立微處理器與外圍設(shè)備之間的信息通信,主要應(yīng)
2、用對象有AD轉(zhuǎn)換器、EEPROM、FLASH、實時時鐘及數(shù)字信號處理器等,本設(shè)計就SPI接口在AD轉(zhuǎn)換器方面的的應(yīng)用,并結(jié)合數(shù)模轉(zhuǎn)換器AD7303和TMS320F2812內(nèi)置模數(shù)轉(zhuǎn)換器來進行展開有關(guān)討論,并對正弦信號波形進行處理,對數(shù)模轉(zhuǎn)換性能進行必要的分析、處理。2、 設(shè)計目的及要求1、編寫串行外設(shè)接口SPI的驅(qū)動程序;2、了解數(shù)模轉(zhuǎn)換的基本操作,設(shè)計基于數(shù)模轉(zhuǎn)換芯片AD7303的正弦信號發(fā)生電路;3、編寫TMS320F2812利用SPI接口驅(qū)動AD7303輸出正弦信號波形的應(yīng)用程序。4、熟悉CCS集成開發(fā)環(huán)境的使用,能對程序進行跟蹤,分析結(jié)果;5、熟悉SPI外設(shè)接口的相關(guān)知識,能通過SPI
3、接口與外圍電路(芯片)進行通信。3、 總體設(shè)計4.1硬件部分數(shù)模轉(zhuǎn)換操作的應(yīng)用基礎(chǔ) 數(shù)模轉(zhuǎn)換器(ADC)基本上是一個比例上的問題,即由ADC產(chǎn)生的數(shù)字值跟輸入模擬量與轉(zhuǎn)換器量程的比值有關(guān)的。利用專用的數(shù)模轉(zhuǎn)換芯片,可以實現(xiàn)將數(shù)字信號轉(zhuǎn)換成模擬量輸出的功能。在EXPIV型實驗箱上,使用的是AD7303數(shù)模芯片,它可以實現(xiàn)同時轉(zhuǎn)換2路模擬信號數(shù)出,并有8位精度(8位電壓輸出DAC),采用+2.7V至+5.5V單電源供電,DA轉(zhuǎn)換時間1.2s。其控制方式較為簡單:首先將需要轉(zhuǎn)換的數(shù)值及控制指令同時通過SPI總線傳送到AD7303上相應(yīng)寄存器,經(jīng)過一個時間延遲,轉(zhuǎn)換后的模擬量就從AD7303輸出引腳輸
4、出。4.1.2 AD7303簡介AD7303是一款雙通道、8位電壓輸出DAC,采用+2.7 V至+5.5 V單電源供電。它內(nèi)置片內(nèi)精密輸出緩沖,能夠?qū)崿F(xiàn)軌到軌輸出擺幅。這款器件采用多功能三線式串行接口,能夠以最高30MHz的時鐘速率工作,并與QSPI(隊列穿行外設(shè)接口)、SPI(串行外設(shè)接口)、MICROWIRE(導(dǎo)電帶)以及數(shù)字信號處理器接口標(biāo)準(zhǔn)兼容。串行輸入寄存器為16位,其中高8位用作DAC的數(shù)據(jù)位,其余低8位組成一個控制寄存器。圖4-1-1 AD7303的芯片結(jié)構(gòu)框圖圖4-1-2 AD7303的芯片外觀結(jié)構(gòu)及尺寸信息圖4-1-3 AD7303 的模擬輸出表圖4-1-4 AD7303 的
5、移位寄存器的控制位(高八位)和數(shù)據(jù)位(低八位)圖4-1-5 AD7303 的移位寄存器的位定義和設(shè)置4.1.3 應(yīng)用AD7303的DAC電路設(shè)計圖4-1-6 AD7303芯片與TMS320F2812芯片的SPI接口連接圖4-1-7 AD7303通道A模擬信號調(diào)理電路圖4-1-8 AD7303通道B模擬信號調(diào)理電路4.2 軟件部分4.2.1 程序流程圖無限循環(huán)處理器上電復(fù)位CPU及串行外設(shè)接口初始化產(chǎn)生128個點的正弦信號波形按AD7303輸入移位寄存器的位定義,傳輸數(shù)據(jù),進行數(shù)模轉(zhuǎn)換雙路波形輸出4.2.2 在CCS集成開發(fā)環(huán)境下新建工程(1)實驗準(zhǔn)備設(shè)置軟件仿真模式,啟動CCS3.3,并設(shè)置成
6、軟件仿真狀態(tài)。如圖4-2-1、圖4-2-2、圖4-2-3、圖4-2-4。圖4-2-1 CCS3.3 Simulator/Emulator設(shè)置圖4-2-2 CCS3.3設(shè)置成Simulator模式圖4-2-3圖4-2-4 CCS3.3界面(2)建立新工程圖4-2-5 設(shè)置工程名稱圖4-2-6 添加Example_281x_da.c文件到工程圖4-2-7 添加DSP281x_Headers_nonBIOS.cmd文件到工程圖4-2-8 添加DSP281x_GlobalVariableDefs.c文件到工程圖4-2-9 添加F2812_EzDSP_RAM_lnk.cmd文件到工程圖4-2-10 添加
7、DSP281x_DefaultIsr.c、DSP281x_PieCtrl.c、DSP281x_PieVect.c、DSP281x_Spi.c、DSP281x_SysCtrl.c文件到工程圖4-2-11 添加DSP281x_CodeStartBranch.asm文件到工程圖4-2-12 打開Example_281x_da.c(3)對Project下的Build Options進行如圖4-2-13到圖4-2-23的操作.圖4-2-13 編譯器基本設(shè)置圖4-2-14 編譯器高級設(shè)置圖4-2-15 編譯器反饋信息設(shè)置圖4-2-16 目錄填寫“C:my fir projectsine waveDebug
8、”圖4-2-17 編譯器匯編設(shè)置圖4-2-18 編譯器的解析設(shè)置圖4-2-19 填入“C:my fir projectsine waveDSP281x_headersinclude;C:my fir projectsine waveDSP281x_commoninclude”圖4-2-20 編譯器診斷項設(shè)置圖4-2-21鏈接器的基本設(shè)置圖4-2-22 庫文件搜索路徑“C:my fir projectsine waveDSP281x_headersinclude”包含到庫文件“rts2800_ml.lib”圖4-2-23 鏈接器高級設(shè)置(4)執(zhí)行“File”下的“Load Program”操作,
9、如下圖4-2-24和圖4-2-25。圖4-2-24 執(zhí)行“File/Load Program”圖4-2-25 執(zhí)行“File/Load Program”結(jié)果(5)執(zhí)行“Graph”的“Time/Frequency”操作,如圖4-2-26、圖4-2-27和圖4-2-28。圖4-2-26 執(zhí)行“Graph”的“Time/Frequency”操作圖4-2-27 執(zhí)行相關(guān)參數(shù)設(shè)置(時域)圖4-2-28 執(zhí)行相關(guān)參數(shù)設(shè)置(頻域)(6)設(shè)置斷點,生成波形圖4-2-29 設(shè)置斷點在Simulator環(huán)境下觀察信號的時域及FFT Magnitude波形圖4-2-30 生成的正弦波形圖4-2-31 時域正弦波圖
10、4-2-32 對正弦波進行快速傅里葉變換后的頻域波形4.2.4 程序清單;* CPU類型 : DSP TMS320F2812 ;* 軟件環(huán)境 : CCS3.3;* 接線說明 : 1、F2812CPU板的JUMP1的2和3腳短接,JUMP2的1和2腳短接;;* 2、實驗箱底板的開關(guān)K9撥到右側(cè),選擇CPU2.;* 測試現(xiàn)象 : 設(shè)置好CCS的環(huán)境,打開本工程,編譯、下載、運行。;* 利用示波器觀察實驗箱DA單元的二號孔"輸出1"有正弦波輸出。*/ /*頭文件*/#include "DSP281x_Device.h" / DSP281x Headerfile
11、 Include File#include "DSP281x_Examples.h" / DSP281x Examples Include File#include "math.h"#define pi 3.1415926unsigned int curve128; unsigned int curve1128; unsigned int curve2128;/ Prototype statements for functions found within this file.void spi_init(void);void delay(void); v
12、oid main(void) int i,p,data;/ Step 1. Initialize System Control:/ PLL, WatchDog, enable Peripheral Clocks/ This example function is found in the DSP281x_SysCtrl.c file. InitSysCtrl();/ Step 2. Initalize GPIO: / This example function is found in the DSP281x_Gpio.c file and/ illustrates how to set the
13、 GPIO to it's default state./ InitGpio(); / Skipped for this example / Setup only the GP I/O only for SPI functionality EALLOW; GpioMuxRegs.GPFMUX.all=0x000F;/ Select GPIOs to be SPI pins / Port F MUX - x000 0000 0000 1111 EDIS;/ Step 3. Clear all interrupts and initialize PIE vector table:/ Dis
14、able CPU interrupts DINT;/ Initialize PIE control registers to their default state./ The default state is all PIE interrupts disabled and flags/ are cleared. / This function is found in the DSP281x_PieCtrl.c file. InitPieCtrl();/ Disable CPU interrupts and clear all CPU interrupt flags: IER = 0x0000
15、; IFR = 0x0000;/ Initialize the PIE vector table with pointers to the shell Interrupt / Service Routines (ISR). / This will populate the entire table, even if the interrupt/ is not used in this example. This is useful for debug purposes./ The shell ISR routines are found in DSP281x_DefaultIsr.c./ Th
16、is function is found in DSP281x_PieVect.c. InitPieVectTable();/ Step 4. Initialize all the Device Peripherals:/ This function is found in DSP281x_InitPeripherals.c/ InitPeripherals(); / Not required for this example/ spi_fifo_init(); / Initialize the Spi FIFO spi_init(); / init SPI for(i=0; i<128
17、;i+) data=(int)(127.5*(1+sin(2*pi*i/127); /產(chǎn)生128個點的正弦信號波形 curvei=data; curve1i=data&0x00ff|0x0100; /將數(shù)據(jù)打包成“從移位寄存器到DAC A數(shù)據(jù)寄存器 curve2i=data&0x00ff|0x2500; /將數(shù)據(jù)打包成“從移位寄存器到DAC B數(shù)據(jù)寄存器 /且用數(shù)據(jù)寄存器同時更新A和B兩個DA的值 for(;) for(p=0;p<128;p+) /*將數(shù)據(jù)寫入AD7303*/ SpiaRegs.SPITXBUF=curve1p; delay(); /*將數(shù)據(jù)寫入AD73
18、03*/ SpiaRegs.SPITXBUF=curve2p; delay(); void spi_init() RESET=0; / Reset SCISpiaRegs.SPICCR.all =0x000F; / Reset on, rising edge, 16-bit char bits SpiaRegs.SPICTL.all =0x000E; / Enable master mode, normal phase, SpiaRegs.SPISTS.all=0x0080; / enable talk, and SPI int disabled.SpiaRegs.SPIBRR =0x0000
19、; / Baud rate; SpiaRegs.SPIPRI.bit.FREE = 1; / Set so breakpoints don't disturb xmission SpiaRegs.SPICCR.bit.SPISWRESET=1; / Enable SPI void delay(void) /延時子程序 unsigned int k; for(k=0;k<50;k+);4.3 調(diào)試部分4.3.1 硬件調(diào)試(進行硬件調(diào)試時要先進行相關(guān)設(shè)置)(1)將CCS設(shè)置Emulator的方式(通過硬件仿真調(diào)試器XDS510連接C2000開發(fā)板進行硬件仿真調(diào)試的方式),并且指定通過
20、XDS510 USB接口仿真器C2000硬件評估電路板。如圖4-3-1。圖4-3-1 Emulator方式設(shè)置(2) 打開路徑“C:my fir projectsine wave”文件中的工程文件。 (3)編譯鏈接工程。選擇菜單“Project”的“Rebuild All”項,或單擊工具條中的按鈕。注意編譯過程中CCS3.3主窗口下部“Build”提示窗中顯示編譯信息,最后將給出錯誤和警告的統(tǒng)計數(shù)。如圖4-3-2圖4-3-2 編譯結(jié)果(4)下載程序。執(zhí)行FileàLoad Program,在隨后打開的對話框中選擇剛剛建立的C:my fir projectsine waveDebugs
21、ine wave.out文件,點擊“打開”按鈕如圖4-3-3。CCS將程序加載到硬件仿真器上,并打開Disassembly窗口,該窗口顯示反匯編指令。圖4-3-3 下載sine wave.out文件(5)運行程序。先使用Debug下的Go main命令,然后選擇DebugRun。(6)測試輸出信號。先將示波器一信號輸入線接在實驗板上的END上,然后將另一個信號輸入線接在A/D信號輸出口上,調(diào)試示波器,示波器屏幕上將出現(xiàn)一個正弦波。如圖4-3-4所示:圖4-3-4 波形輸出單擊完成和保存設(shè)置(7)通過傳輸線連接到試驗臺并通過示波器進行輸出,可測得模擬輸出電壓約為3.3V,即的電壓約為1.6V。(基本符合AD7303的設(shè)置,即)4.3.2 軟件調(diào)試這次課程設(shè)計所需的基本資料和程序平時已經(jīng)由老師已經(jīng)給定,所以我在操作過程按所給資料進行必要的整合和設(shè)計,基本上可以很好地實現(xiàn)設(shè)計的要求??梢韵仁褂肈ebug8Go
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度茶葉品牌加盟店加盟合同及售后服務(wù)協(xié)議
- 孤殘兒童成長環(huán)境改善路徑考核試卷
- 口腔清潔用品行業(yè)法律法規(guī)更新考核試卷
- 船舶結(jié)構(gòu)與原理課程設(shè)計
- 標(biāo)準(zhǔn)的體育課程設(shè)計
- 植物作畫課程設(shè)計圖
- 課程設(shè)計潤滑方式
- 廢舊電纜 課程設(shè)計
- 探究異常檢測-洞察分析
- 舞蹈與數(shù)字技術(shù)融合-洞察分析
- 中外美術(shù)史試題及答案
- 2025年安徽省銅陵市公安局交警支隊招聘交通輔警14人歷年高頻重點提升(共500題)附帶答案詳解
- 公共政策分析 課件 第8章政策評估;第9章政策監(jiān)控
- 人教版八年級上學(xué)期物理期末復(fù)習(xí)(壓軸60題40大考點)
- 企業(yè)環(huán)保知識培訓(xùn)課件
- 2024年度管理評審報告
- 暨南大學(xué)《微觀經(jīng)濟學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 醫(yī)藥銷售合規(guī)培訓(xùn)
- DB51-T 5038-2018 四川省地面工程施工工藝標(biāo)準(zhǔn)
- 三年級數(shù)學(xué)(上)計算題專項練習(xí)附答案
- 2024年廣東省深圳市中考英語試題含解析
評論
0/150
提交評論