




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、攻讀碩士學位研究生試卷(作業(yè))封面(2013至2014學年度第二學期) 題 目 基于DSP鍵盤發(fā)聲裝置的設計 科 目 DSP應用與開發(fā) 姓 名 倪曉勇 專 業(yè) 電子與通信工程 學 號 2013201307 入學年月 2013年9月 簡短評語成績:授課教師簽字:目 錄1、設計目的12、系統(tǒng)分析12.1、設計任務12.2、設計要求13、TMS320F2812芯片介紹13.1 TMS320F2812芯片的簡介13.2 關于TMS320F2812參數(shù)23.3管腳的定義和說明23.4 F2812結構圖44、系統(tǒng)整體設計54.1、硬件設計組成框圖54.2、總體電路圖65、 單元電路設計65.1、2*3鍵盤
2、電路設計65.2、時鐘源電路設計75.3、復位電路設計85.4、電源轉換電路設計85.5、蜂鳴器的設計96、元器件選擇97、 運行描述98、軟件設計108.1程序流程圖108.2程序代碼119、 參考文獻171、設計目的DSP課程設計是對課程所學理論知識的深化和提高。目的是能綜合應用所學知識,設計與制造出具有簡單功能的小型鍵盤輸入發(fā)聲裝置。 能夠較全面地鞏固和應用DSP課程中所學的基本理論和基本方法,初步掌握小型DSP系統(tǒng)設計的基本方法,并學會用C語言對DSP系統(tǒng)進行編程及DSP試驗箱和相關軟件的運用。 培養(yǎng)獨立思考、獨立收集資料、獨立設計規(guī)定功能的單片機系統(tǒng)的能力;培養(yǎng)分析、總結及撰寫技術報
3、告的能力,本次課程設計目的在于:1、學習用鍵盤控制 DSP管腳輸出頻率,從而控制蜂鳴器發(fā)聲。2、學習DSP的C語言編程方法。3、學習DSP程序的調試及編寫,及運用觀察變量的方法查看程序的運行情況。2、系統(tǒng)分析2.1、設計任務本次設計名為鍵盤輸入分頻輸出裝置,要求用六個按鍵,組成3行3列鍵盤,用掃描按鍵的方法控制蜂鳴器發(fā)出對應的聲音從而實現(xiàn)按鍵控制蜂鳴器發(fā)出不同頻率的聲音。2.2、設計要求硬件部分:1、 按照系統(tǒng)設計要求繪制(3行3列按鍵及分明器)電路圖。2、 按照電路圖統(tǒng)籌安排各元器件在電路板上的分布,并焊接電路板。3、 了解各引腳功能,將電路板與TMS320F2812相關引腳相連接。軟件部分
4、:1、 搞清楚各個引腳功能,調入引腳頭文件。2、 了解了各引腳控制的行列后,編寫鍵盤掃描程序。3、 編寫延時程序,實現(xiàn)按鍵去抖。最終實現(xiàn)鍵盤輸入分頻輸出,并由蜂鳴器發(fā)出不同頻率的響聲。3、TMS320F2812芯片介紹3.1 TMS320F2812芯片的簡介本設計需要DSP實驗箱,.DSP芯片是一種具有特殊結構的嵌入式微處理器,現(xiàn)在芯片一般都具有哈佛結構的并行總線體系,流水線操作功能,快速的中斷處理和硬件I/O支持,低開銷循環(huán)及跳轉的硬件支持,單周期硬件地址產生器,單周期硬件乘法器以及一套適合數(shù)字信號處理的指令集。TMS320F2812作為使用的DSP芯片。它包含33個電源引腳(為使器件正常運
5、行,所有電源引腳必須正確連接且不能懸空),時鐘源模塊,DSP有六種信號可以使DSP控制器復位。所以在設計的初期,我把它分成了四個模塊。它們分別是:電平轉換部分、晶振和復位部分、鍵盤部分和液晶顯示。其中復位采用電源復位的方式,由引腳PORESET引起。為了可靠復位,其中高電平的有效時間至少6個CPU時鐘周期。 3.2 關于TMS320F2812參數(shù)TMS320F2812的具體參數(shù)如下:1、主處理芯片:TMS320F2812,運行速度為150M。2、工作速度可達150MIPS。3、片上的RAM 18*16Bit。4、片上擴展RAM 存儲空間64K×16Bit。5、自帶的16路12bitA
6、/D,最大采樣速率12.5msps。6、4路的DAC7617轉換,100K/S,12Bit。7、兩路UART串行接口,符合RS232標準。8、16路PWM輸出。9、1路CAN接口通訊。10、片上128*16bit FLASH.自帶128位加密位。11、設計有用戶可以自定義的開關和測試指示燈。12、4組標準擴展連接器,為用戶二次開發(fā)提供條件。13、具有IEEE1149.1相兼容的邏輯掃描電路該電路僅用于測試和仿真。 14、4層板設計工藝,工作穩(wěn)定可靠。15、具有自啟動功能設計,可以實現(xiàn)脫機工作。16、可以選配多種應用接口板,包括語音板,網(wǎng)絡板等。3.3管腳的定義和說明P1接口主要是擴展評估板上空
7、閑的DSP外設引腳,以便于定制用戶的硬件環(huán)境。注意:由于這組引腳是直接來自于F2812 DSP芯片,因此,這些引腳為TTL 3.3V標準,其輸出最高電壓為3.3V,如果要接入5V器件,外接時時要注意電平轉換。(在擴展板上使用3.3V-5V兼容器件與擴展接口連接)。表1 管腳的定義及管腳的說明管腳號管腳名說明1+5v電源有POWER提供+5V電源2+5v電源有POWER提供+5V電源3PWM1PWM1輸出引腳4PWM2PWM2輸出引腳5PWM3PWM3輸出引腳6PWM4PWM4輸出引腳7PWM5PWM5輸出引腳8PWM6PWM6輸出引腳9PWM7PWM7輸出引腳10PWM8PWM8輸出引腳11P
8、WM9PWM9輸出引腳12T1PWMT1輸出引腳13T2PWMT2輸出引腳14T3PWMT3輸出引腳15T4PWMT4輸出引腳16T1CTRP定時器1比較輸出17GND地線18GND地線19T2CTRP定時器2比較輸出20TT3CTRP定時器3比較輸出21T4CTRP定時器4比較輸出22C1CTRIP比較器1比較輸出23C2CTRP比較器2比較輸出24C3CTRP比較器3比較輸出25TDIRA定時器計數(shù)方向選擇信號A26TCKINA定時器時鐘輸入A27SCITXB異步串口TX端B28SCIRXB異步串口RX端B29SPSIMASPI從收主發(fā)端30SPSOMASPI主發(fā)從收端31SPICLKAS
9、PI時鐘32SPISTEASPI Slave設備發(fā)送始能33GND地線34GND地線3.4 F2812結構圖圖1 ICETEK-F2812-A實物圖左上腳為P1端口,右下角腳為P4端口。TMS320F2812引腳圖圖 2 TMS320F2812引腳圖4、系統(tǒng)整體設計4.1、硬件設計組成框圖主 控 制 器蜂鳴器鍵盤陣列系統(tǒng)復位時鐘振蕩電平轉換 圖3硬件組成框圖4.2、總體電路圖總體電路圖如圖4所示:圖4 總體電路圖其中PWM1-PW3是輸入引腳,PWM4-PWM5是輸出引腳,PWM6是蜂鳴器輸出引腳,XTAL1和XTAL2為晶振輸入引腳,VCC接電源(+5V),RESET復位引腳,GND接地,M
10、P/MC接入存儲器。如果是低電平接片內存儲器,高電平接片外存儲器。5、 單元電路設計5.1、3*3鍵盤電路設計3*3鍵盤電路如圖5所示圖5 3*3鍵盤電路鍵盤工作原理:從圖中可以看出,當一個鍵被按下時,按鍵對應的行線和列線的狀態(tài)均為低電平,其他鍵對應的均為高電平,具體來講,把行線相連的引腳均設為輸入方式,把列線相連的引腳均設為輸出方式。程序首先把所有列線上輸出低電平,然后調用掃描程序逐列讀取列線上的輸入,如果沒有鍵按下,行線將一直保持全1的狀態(tài),否則相應的行線上將出現(xiàn)低電平并被程序所獲知。然后檢測按鍵所在的列,延時一段時間后,程序逐漸發(fā)出掃描碼,即掃描的列為0,其他行為1。如果沒有任何一條輸入
11、的行線為低電平,則說明掃描的列線上沒有按鍵被按下接著掃描下一列。如果在某一列上發(fā)0可以在行線上收到不全為1的輸入,即表明該行是按鍵所在的行,從而可以確定按鍵所在的位置。5.2、時鐘源電路設計時鐘源可以由兩種方式產生:一種是利用內部振蕩器與外部無源晶振產生;另一種是利用外部有源晶振產生。本系統(tǒng)選擇的是前者。而且上在實驗箱內部。時鐘振蕩電路如圖6所示,時鐘電路主要使用的是DSP的內部振蕩器,外接6MHZ的晶振產生時鐘。圖6 最小系統(tǒng)框圖5.3、復位電路設計圖7 復位電路復位電路(如圖7)由電容,電阻和按鈕開關組成,可實現(xiàn)上電復位和手動復位功能。當加載電源時,電源電壓通過RC串聯(lián)電路對電容C進行充電
12、,充電時間常數(shù)為t=RC。當充電時間超過5t時,電容C1上的電壓接近電源電壓,復位完成。對于本系統(tǒng)來說,要求復位時間超過6個系統(tǒng)時鐘周期。所以,C1和R1的值,應該根據(jù)所用芯片的工作頻率來定,否則,系統(tǒng)無法正常工作。另外,按鈕S1用于手動復位,R2和S1串聯(lián)作為電容C1的放電回路,當S1按下,C1的放電回路接通,芯片的復位端接地,芯片處于復位狀態(tài)。放開S1,C1的放電電路斷開。由于C1上的電壓已經放完,所以,C1通過電源再次充電,完成復位動作。放電的時間遠遠小于充電時間,否則,電路無法正常工作。5.4、電源轉換電路設計電源電路(如圖8)是各種電子設備的核心電路,電子設備的小型化和低成本化使電源
13、電路向輕薄和高效率方向發(fā)展,因此在設計電路時選擇一款合適的電源電路芯片是首要任務。本課程設計要求電壓控制在3.3V左右,因此在設計中加入了電壓轉換電路,將5V電壓轉換為3.3V電壓。在實際操作中采用了使用電源箱調節(jié)電壓達到3.3V左右。圖8電源轉換電路圖5.5、蜂鳴器的設計蜂鳴器設計(如圖9所示)的總體思想:由DSP的固定的頭文件初始化各個端口的功能,置相應的端口為I/O功能,并設置其為輸入或輸出功能,依次掃描鍵盤,如果有電平由高電平向低電平調變則由相應的延時參數(shù)延時產生不同的頻率,輸出到蜂鳴器上,從而發(fā)出不同的響聲。蜂鳴器由DSP通用I/O管腳輸出控制,由管腳S13控制蜂鳴器的輸出頻率,DS
14、P的I/O管腳直接驅動外部蜂鳴器工作。在實際的連接當中,9個按鈕的引線依次接P1口的管腳3管腳11。蜂鳴器的引線接P4口的管腳25。正5V電源接P1口的管腳1。地線接P1口的管腳17。程序直接運行即可。圖9 蜂鳴器電路圖6、元器件選擇元氣件的選擇主要是限流電阻的選擇,根據(jù)按鍵工作電流(0mA)以及DSP工作電壓(3.3V),因此可以選擇3.3K以上的電阻作為上拉電阻,本系統(tǒng)中我們選擇4.7K。同時由于外接電源是5V的,而芯片工作電壓是3.3,因此也需要一個電阻用于壓降,在此我們也選擇4.7K電阻。元器件清單如表2所示。表2 電路元件配置表元件名稱參數(shù)個數(shù)電阻4.7K5蜂鳴器給定1發(fā)光二極管1T
15、MS320F2812芯片給定1DSP系統(tǒng)試驗箱給定1按鈕給定9排針8除表中所列元器件外,還需導線若干以及供電源一個。7、 運行描述在運行時,首先應先在計算機上安裝上CCS軟件,然后把程序加載到Example中進行調試,如果調試出現(xiàn)錯誤,要進行修改。若程序正常通過,則可將電路板與計算機相連,然后安裝電路板的驅動,驅動安好后,將焊接好的電路與電路板相連,注意針引腳的相連,在本設計中用的是電路板的PWM1、PWM2、PWM3、PWM4、PWM5、PWM6針口,注意不要連錯。同時還要注意DSP用的是3.3V的電壓,注意電壓的調節(jié)。一切硬件連接好后,即可將軟件下載到DSP芯片中,運行,查看結果。將按鍵按
16、下后都會發(fā)出不同的聲音,但由于電路存在一定的干擾,有的按鍵按下后時響時不響。鍵盤分頻發(fā)聲裝置基本制作成功。8、軟件設計8.1程序流程圖根據(jù)硬件設計思想和硬件圖的總體設計,畫出軟件實現(xiàn)流程圖程序流程圖是人們對解決問題的方法、思路或算法的一種描述。它采用簡單規(guī)范的符號,畫法簡單,并且結構清晰,邏輯性強。經過對硬件部分的分析,理論上技術的實現(xiàn),基于分塊設計的思想可以得出基本程序實現(xiàn)思路。初始化程序以后,將管腳定義為I/O口方式,并且定義管腳的輸出輸入端,接入高電平。若給入高電平,設置行列值。例如。將行設置為輸入端,列設置為輸出端。首先先判斷是否有鍵按下,無鍵按下時(加入一段延時程序),有鍵按下時,給
17、行值,對列值進行判斷,如果循環(huán)成立,則能確定是哪個按鍵按下。開 始檢測輸入口是否為低電平是否返回主程序初始化設置送行掃描信號蜂鳴器不發(fā)聲檢測是哪列按下輸出高電平給PRD賦值調用中斷圖10程序流程圖8.2程序代碼程序如下:#include "DSP281x_Device.h" / DSP281x Headerfile Include File#include "DSP281x_Examples.h" / DSP281x Examples Include Fileinterrupt void inter(void);/中斷申明 無返回值void Delay(
18、unsigned int ndelay);/子程序聲明Uint16 jishu=0,new1,a1,a2;#define Number 8unsigned int music1Number2= 162,1480,144,1480,129,1480,121,1480,108,1480,97,1480,86,1480,81,1480;/*#define nMusicNumber 40/宏定義 二維數(shù)組(一段音樂)的位數(shù)unsigned int musicnMusicNumber2= 182,480,151,480,135,480,121,480,135,480,151,480,182,480,0,
19、480,182,480,151,480,135,480,121,480,135,480,151,480,182,480,0,480,182,240,151,240,135,240,121,240,135,240,151,240,182,240,0,240,182,240,151,240,135,240,121,240,135,240,151,240,182,240,0,240,182,1920,151,1920,135,1920,121,1920,135,1920,151,1920,182,1920,0,1920 ;*/void main(void) /int j=0,Count=0; Ini
20、tSysCtrl();/初始化系統(tǒng)管腳語句 DINT;/關中斷 InitPieCtrl();/初始化PIE寄存器 IER = 0x0000;/寄存器復位 中斷使能寄存器 包含所有可屏蔽中斷使能位 IFR = 0x0000;/寄存器復位 中斷標志寄存器 用于識別和清楚未屏蔽中斷位 InitPieVectTable();/初始化PIE向量表 EALLOW; PieVectTable.TINT0 = &inter;/指定中斷服務子程序地址 EDIS; EALLOW; GpioMuxRegs.GPAMUX.all=0x0000;/工作方式設置為I/O GpioMuxRegs.GPADIR.al
21、l=0x0007;/pwm1-pwm3為輸出, GpioMuxRegs.GPBMUX.all=0x0000; GpioMuxRegs.GPBDIR.all=0x0001; EDIS; CpuTimer0Regs.PRD.all=new1; CpuTimer0Regs.TPR.all = 0;/TPR-預定標計數(shù)器,16位,PIC(8-15位),TDDR(0-7位)取值(0-15),可位操作,CpuTimer0Regs.TIM.all = 0;/TIM-計數(shù)寄存器CpuTimer0Regs.TPRH.all = 0;/TPRH-高16位,一般不用,付0CpuTimer0Regs.TCR.bit.
22、TSS = 1;/TCR-控制寄存器,位操作 tss位停止寄存器CpuTimer0Regs.TCR.bit.SOFT = 1;/soft遇到軟件中斷直接運行CpuTimer0Regs.TCR.bit.FREE = 1;CpuTimer0Regs.TCR.bit.TRB = 1;/重裝載位PRD值CpuTimer0Regs.TCR.bit.TIE = 1;/一直請求中斷CpuTimer0.InterruptCount = 0; StartCpuTimer0();/0-計數(shù)器重新工作,1-停止 IER |= M_INT1;/0X0001 中斷1PieCtrlRegs.PIEIER1.bit.INT
23、x7 = 1;/向量控制寄存器,第一組里的第七個,1-開中斷EINT; /防止可屏蔽中斷影響 ERTM; / 防止事件相互影響 /GpioDataRegs.GPBDAT.bit.GPIOB0=1; while(1) GpioDataRegs.GPADAT.bit.GPIOA0=0; GpioDataRegs.GPADAT.bit.GPIOA1=0; GpioDataRegs.GPADAT.bit.GPIOA2=0;if(GpioDataRegs.GPADAT.bit.GPIOA3=1)&&(GpioDataRegs.GPADAT.bit.GPIOA4=1)&&(
24、GpioDataRegs.GPADAT.bit.GPIOA5=1) new1=0; Delay(296); a1=0;a2=0;/if(GpioDataRegs.GPADAT.bit.GPIOA0=0)|(GpioDataRegs.GPADAT.bit.GPIOA1=0)|(GpioDataRegs.GPADAT.bit.GPIOA2=0) GpioDataRegs.GPADAT.bit.GPIOA0=0; GpioDataRegs.GPADAT.bit.GPIOA1=1; GpioDataRegs.GPADAT.bit.GPIOA2=1;if(GpioDataRegs.GPADAT.bit.
25、GPIOA3=0)&&(GpioDataRegs.GPADAT.bit.GPIOA4=1)&&(GpioDataRegs.GPADAT.bit.GPIOA5=1) new1=56700;/new1=music100*350; Delay(music101*201); a1=0;a2=1; if(GpioDataRegs.GPADAT.bit.GPIOA3=1)&&(GpioDataRegs.GPADAT.bit.GPIOA4=0)&&(GpioDataRegs.GPADAT.bit.GPIOA5=1) new1=music110*
26、350; Delay(music111*200); a1=0;a2=1; if(GpioDataRegs.GPADAT.bit.GPIOA3=1)&&(GpioDataRegs.GPADAT.bit.GPIOA4=1)&&(GpioDataRegs.GPADAT.bit.GPIOA5=0) new1=music120*350; Delay(music121*200); a1=0;a2=1; GpioDataRegs.GPADAT.bit.GPIOA0=1; GpioDataRegs.GPADAT.bit.GPIOA1=0; GpioDataRegs.GPADAT
27、.bit.GPIOA2=1;if(GpioDataRegs.GPADAT.bit.GPIOA3=0)&&(GpioDataRegs.GPADAT.bit.GPIOA4=1)&&(GpioDataRegs.GPADAT.bit.GPIOA5=1) new1=music130*350; / GpioDataRegs.GPBDAT.bit.GPIOB0=0; Delay(music131*200); / GpioDataRegs.GPBDAT.bit.GPIOB0=1; a1=0;a2=1; if(GpioDataRegs.GPADAT.bit.GPIOA3=1)&a
28、mp;&(GpioDataRegs.GPADAT.bit.GPIOA4=0)&&(GpioDataRegs.GPADAT.bit.GPIOA5=1) new1=music140*350; Delay(music141*200); a1=0;a2=1; if(GpioDataRegs.GPADAT.bit.GPIOA3=1)&&(GpioDataRegs.GPADAT.bit.GPIOA4=1)&&(GpioDataRegs.GPADAT.bit.GPIOA5=0) new1=music150*350; Delay(music151*200
29、); a1=0;a2=1; GpioDataRegs.GPADAT.bit.GPIOA0=1; GpioDataRegs.GPADAT.bit.GPIOA1=1; GpioDataRegs.GPADAT.bit.GPIOA2=0;if(GpioDataRegs.GPADAT.bit.GPIOA3=0)&&(GpioDataRegs.GPADAT.bit.GPIOA4=1)&&(GpioDataRegs.GPADAT.bit.GPIOA5=1) new1=music160*350; Delay(music161*200); a1=0;a2=1; if(GpioDataRegs.GPADAT.bit.GPIOA3=1)&&(GpioDataRegs.GPADAT.bit.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 診所引流現(xiàn)場管理制度
- 診療技術授權管理制度
- 調解中心監(jiān)督管理制度
- 財政特設專戶管理制度
- 貨代公司各類管理制度
- 貨物裝卸安全管理制度
- 貨船安全生產管理制度
- 2025年中國感應式皂液器行業(yè)市場全景分析及前景機遇研判報告
- 2025年中國動作感應手柄行業(yè)市場全景分析及前景機遇研判報告
- 液壓工具質保協(xié)議書范本
- 2025-2030年中國發(fā)泡包裝行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025至2030中國材料疲勞試驗機行業(yè)項目調研及市場前景預測評估報告
- 2025年陜西、山西、寧夏、青海四?。儠x寧青)高考 生物真題試卷 附答案
- 2024年西昌市教育和體育局考核聘用公立幼兒園教師真題
- 2025設備租賃合同版本范文
- 2025年浙江杭州錢塘區(qū)和達能源有限公司招聘筆試沖刺題(帶答案解析)
- 2025年衣物清潔多元化發(fā)展趨勢白皮書-天貓家清第一財經商業(yè)數(shù)據(jù)中心
- 冷鏈物流園建設項目投融資與財務方案
- 保險業(yè)務員分級考試試題及答案
- 2024統(tǒng)編版七年級道德與法治下冊期末測試卷(含答案)
- 酒店經銷商合同協(xié)議書
評論
0/150
提交評論