IIR濾波器綜合設(shè)計(jì)_第1頁
IIR濾波器綜合設(shè)計(jì)_第2頁
IIR濾波器綜合設(shè)計(jì)_第3頁
IIR濾波器綜合設(shè)計(jì)_第4頁
IIR濾波器綜合設(shè)計(jì)_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、寧波理工學(xué)院 I I R濾波器設(shè)計(jì)題 目 IIR濾波器綜合設(shè)計(jì) 姓 名 學(xué) 號(hào) 專業(yè)班級(jí) 指導(dǎo)教師 學(xué) 院 完成日期 實(shí)驗(yàn)?zāi)康?、熟悉CCS集成開發(fā)環(huán)境的基本操作及相關(guān)功能。2、學(xué)會(huì)LCD模塊的運(yùn)用方法。3、掌握字模提取軟件。4、掌握按鍵以及子模在DSP中讀取及顯示的方法。5、在CCS集成環(huán)境中對(duì)輸入信號(hào)進(jìn)行濾波,并觀察輸入波形。二、實(shí)驗(yàn)任務(wù)在DSP實(shí)驗(yàn)箱上完成下列功能:通過鍵盤控制:按鍵1:對(duì)輸入信號(hào)進(jìn)行低通IIR濾波,采用窗函數(shù)濾波,參數(shù):通帶范圍,阻帶最小衰減40dB。按鍵2:對(duì)輸入信號(hào)進(jìn)行高通IIR濾波,采用窗函數(shù)濾波,參數(shù):通帶范圍,阻帶最小衰減40dB。按回車鍵:退出。按鍵3:顯示

2、組員姓名及學(xué)號(hào)在LCD上顯示下列功能:1、運(yùn)行程序:顯示選項(xiàng)菜單2、按下按鍵1:顯示正在進(jìn)行低通濾波3、按下按鍵2:顯示正在進(jìn)行高通濾波4、按下按鍵3:顯示組員姓名及學(xué)號(hào)三、流程圖 開始 調(diào)試 觀察LCD屏幕判斷按下按鍵 的鍵值按下2鍵進(jìn)行高通濾波 按下1鍵進(jìn)行低通濾波 按下3鍵顯示組員和學(xué)號(hào) 按下Enter鍵 結(jié)束 按下Enter鍵 按下Enter鍵四、巴特沃斯IIR濾波器(1)濾波器的設(shè)計(jì)IIR濾波器系統(tǒng)函數(shù)為:因此:IIR濾波器主要參數(shù)是a,b參數(shù)提取。常用IIR濾波器有巴特沃思IIR濾波器及切比雪夫等濾波器等。本實(shí)驗(yàn)主要設(shè)計(jì)巴特沃思IIR濾波器。MATLAB中提取巴特沃思IIR濾波器參

3、數(shù)的指令如圖1所示。圖一、MATLAB指令輸入在MATLAB左上角找到H數(shù)組,打開,可以得到IIR低通濾波器的模型數(shù)組fH1N= 1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,0.9999,0.9996,0.9990,0.9972,0.9924,0.9801,0.9493, 0.8785,0.7425,0.5496,0.3569 , 0.2107,0.1161,0.0601,0.0290,0.0127, 0.0049,0.0015,0.0004,0.0000 ,0.0000;在CCS上信

4、號(hào)通過IIR巴特沃斯低通濾波器后,信號(hào)變成如下圖所示fOut的圖形,fIn為輸入波形的頻域表示圖。圖三、濾波器,信號(hào),通過濾波器的信號(hào)同樣的方法可以得到IIR巴特沃斯高通濾波器的模型以及信號(hào)通過IIR巴特沃斯高通濾波器后的信號(hào)。圖四、高通濾波器以及輸出信號(hào)五、字模提取模塊2、提取字模./*- 數(shù)字: 0 -*/0 x00,0 x00,0 xE0,0 xF0,0 xF0,0 x18,0 x08,0 x08,0 x08,0 x08,0 x08,0 x38,0 xF0,0 xE0,0 xC0,0 x00,/560 x00,0 x01,0 x0F,0 x1F,0 x1F,0 x30,0 x20,0 x

5、20,0 x20,0 x20,0 x20,0 x38,0 x1F,0 x0F,0 x07,0 x00,六、LCD顯示模塊1、LCD上顯示設(shè)置,用自己的姓名做例子說明: DisplayChineseChar(0, 2, 0, ChineseArray, 50, 0);/ DisplayChineseChar(0, 2, 16, ChineseArray, 52, 0);/DisplayChineseChar(0, 2, 32, ChineseArray, 54, 0);/DisplayChineseChar(0, 2, 48, ChineseArray, 84, 0);/清空DisplayChi

6、neseChar(0, 2, 0, ChineseArray, 56, 1);/DisplayChineseChar(0, 2, 16, ChineseArray, 58, 1);/DisplayChineseChar(0,2, 32, ChineseArray, 60, 1);/DisplayChineseChar(0, 2, 48, ChineseArray, 84, 1);/清空LCD上顯示結(jié)果七、操作示意: 1、編譯運(yùn)行后LCD上的顯示菜單界面 2、按下按鍵1 顯示 :正在進(jìn)行低通濾波 3、按下按鍵2顯示: 正在進(jìn)行高通濾波 按下按鍵3顯示姓名和學(xué)號(hào) 低通濾波效果圖 高通濾效果圖 八、

7、實(shí)驗(yàn)總結(jié)與體會(huì) 首先我們?cè)诶蠋熤v解下,熟悉并掌握了CCS軟件技巧和硬件使用.綜合實(shí)驗(yàn)操作時(shí),遇到很多的問題,但都經(jīng)過合作,不斷改正,完成編譯。最后將程序生成文件拷入硬件時(shí),由于數(shù)據(jù)線的問題,也讓我們頭疼了一會(huì),不過最后還是很順利地完成了實(shí)驗(yàn)。 附錄:程序代碼#include scancode.h#defineIMR*(int *)0 x0#defineIFR*(int *)0 x1#definePMST*(int *)0 x1d#define REGISTERCLKMD (*(unsigned int *)0 x58)/ 常量定義#define LCDDELAY 1#define LCDCMD

8、TURNON 0 x3f#define LCDCMDTURNOFF 0 x3e /起始列, 0-63#define LCDCMDSTARTLINE 0 xc0 /起始行, 0-63#define LCDCMDPAGE 0 xb8 /操作頁, 0-7#define LCDCMDSTARTCOLUMN 0 x40 /起始列, 0-63#define DELAYPARAM 256#define WAITSTATUS (*(unsigned int *)0 x28)#define N 32/ CTR擴(kuò)展寄存器定義ioport unsigned int port8000;ioport unsigned

9、int port8001;ioport unsigned int port8002;ioport unsigned int port8003;ioport unsigned int port8004;ioport unsigned int port8005;ioport unsigned int port8007;ioport unsigned int port3004;#define CTRGR port8000#define CTRLCDCMDR port8001#define CTRKEY port8001#define CTRCLKEY port8002#define CTRLCDCR

10、 port8002#define CTRLCDLCR port8003#define CTRLCDRCR port8004#define CTRLA port8005#define CTRLR port8007#define DELAYPARAM 256void DisplayDigital();void TurnLcdOn(); / 打開顯示void LcdCls();void TurnLcdOff(); / 清除屏幕顯示內(nèi)容void DisplayEnterSystem();void DisplayChineseChar();void LcdDelay();void interrupt x

11、int2();void Delay();void Display1();void Display2();void Display3();void Display4();#include #define IIRNUMBER 6 #define SIGNAL1F 1000#define SIGNAL2F 4500#define SAMPLEF 10000#define PI 3.1415926float InputWave();float IIR();float fH1N= 1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000

12、, 1.0000,1.0000,0.9999,0.9996,0.9990,0.9972,0.9924,0.9801,0.9493, 0.8785,0.7425,0.5496,0.3569 , 0.2107,0.1161,0.0601,0.0290,0.0127, 0.0049,0.0015,0.0004,0.0000 ,0.0000;float fA1IIRNUMBER=1.0000,0.9853,0.9738,0.3864,0.1112,0.0113;float fB1IIRNUMBER=0.1084,0.5419,1.0837,1.0837,0.5419,0.1084;fH2N= 0,0.

13、0000,0.0000,0.0001,0.0003,0.0010,0.0026,0.0059,0.0122,0.0237,0.0436,0.0771,0.1320,0.2189,0.3489,0.5218,0.7071,0.8531,0.9372,0.9757,0.9912,0.9970,0.9990,0.9997, 0.9999,1.0000 ,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000;float fA2IIRNUMBER=1.0000,-0.0000,0.6334,-0.0000,0.0557,-0.0000;float fB2IIRNUMBER=

14、0.0528,-0.2639,0.5279,-0.5279,0.2639,-0.0528;float fXnIIRNUMBER= 0.0 ;float fYnIIRNUMBER= 0.0 ;float fInput,fOutput;float fSignal1,fSignal2;float fStepSignal1,fStepSignal2;float f2PI;int i;float fIn256,fOut256,fAn6,fBn6;int nIn,nOut,display=0;char ConvertScanToChar(unsigned char cScanCode);/16*8 dig

15、ital arrayunsigned char DigitalArray148= 0 x00,0 x00,0 x08,0 xF8,0 xF8,0 x08,0 x08,0 x00,0 x00,0 x20,0 x20,0 x3F,0 x3F,0 x20,0 x20,0 x00, /I0 x00,0 x00,0 x08,0 xF8,0 xF8,0 x08,0 x08,0 x00,0 x00,0 x20,0 x20,0 x3F,0 x3F,0 x20,0 x20,0 x00, /I0 x00,0 xF8,0 xF8,0 x08,0 x08,0 x88,0 xF8,0 x60,0 x20,0 x3F,0

16、 x3F,0 x21,0 x03,0 x1F,0 x38,0 x20, /R0 x00,0 x00,0 x10,0 xF0,0 xF8,0 x00,0 x00,0 x00,0 x00,0 x00,0 x20,0 x3F,0 x3F,0 x20,0 x20,0 x00, /10 x00,0 x70,0 x78,0 x08,0 x08,0 xD8,0 xF0,0 x20,0 x00,0 x30,0 x38,0 x34,0 x33,0 x31,0 x38,0 x08,/20 x00,0 x00,0 x00,0 x00,0 x80,0 xC0,0 xC0,0 x80,0 x00,0 x00,0 x00

17、,0 x00,0 x31,0 x7B,0 x7B,0 x31,/:0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0 /清空;/16*16 Chinese character Arrayunsigned char ChineseArray8616=0 x20,0 xC2,0 x0C,0 x40,0 xF8,0 x48,0 x48,0 x48,0 xFF,0 x2A,0 x2A,0 x2B,0 x8A,0 x28,0 x18,0 x00,0 x04,0 xFC,0 x82,0 x61,0

18、x1F,0 x10,0 x08,0 x3C,0 x40,0 x45,0 x59,0 x41,0 x71,0 x08,0 x30,0 x00, /濾0 x20,0 x42,0 x04,0 x0C,0 x80,0 xF8,0 x88,0 x88,0 x88,0 xFF,0 x88,0 x88,0 xA8,0 x18,0 x00,0 x00,0 x04,0 x04,0 xFE,0 x41,0 x30,0 x8F,0 x40,0 x22,0 x14,0 x08,0 x14,0 x22,0 x41,0 xC0,0 x40,0 x00,/波 0 x10,0 x22,0 x6C,0 x00,0 x80,0

19、xFC,0 x04,0 xF4,0 x04,0 xFE,0 x04,0 xF8,0 x00,0 xFE,0 x00,0 x00,0 x04,0 x04,0 xFE,0 x01,0 x40,0 x27,0 x10,0 x0F,0 x10,0 x67,0 x00,0 x47,0 x80,0 x7F,0 x00,0 x00,/測(cè)0 x40,0 x42,0 xCC,0 x00,0 x10,0 x90,0 x90,0 x90,0 x90,0 x90,0 xFF,0 x10,0 x12,0 x14,0 x10,0 x00,0 x00,0 x00,0 x7F,0 x20,0 x10,0 x20,0 x60,

20、0 x3F,0 x10,0 x10,0 x01,0 x3E,0 x40,0 x80,0 x70,0 x00,/試 0 x00,0 x02,0 x22,0 x22,0 x32,0 x2E,0 xA2,0 x62, 0 x22,0 x22,0 x91,0 x09,0 x01,0 x00,0 x00,0 x00,0 x00,0 x00,0 x42,0 x22,0 x1A,0 x43,0 x82,0 x7E,0 x02,0 x02,0 x0A,0 x13,0 x66,0 x00,0 x00,0 x00, /系0 x20,0 x30,0 xAC,0 x63,0 x30,0 x88,0 xC8,0 xA8

21、, 0 x99,0 x8E,0 x88,0 xA8,0 xCC,0 x88,0 x00,0 x00,0 x22,0 x67,0 x22,0 x12,0 x92,0 x40,0 x30,0 x0F, 0 x00,0 x00,0 x3F,0 x40,0 x40,0 x41,0 x70,0 x00, /統(tǒng)0 x10,0 x10,0 x90,0 xFF,0 x90,0 xA0,0 x98,0 x88,0 x88,0 xE9,0 x8A,0 x88,0 x88,0 xA8,0 x98,0 x00,0 x01,0 x41,0 x80,0 x7F,0 x00,0 x00,0 x80,0 x84,0 x4B,

22、0 x30,0 x10,0 x28,0 x47,0 xC0,0 x00,0 x00,/按0 x10,0 x28,0 xE7,0 x24,0 x24,0 xC2,0 xB2,0 x8E,0 x10,0 x54,0 x54,0 xFF,0 x54,0 x7C,0 x10,0 x00,0 x01,0 x01,0 x7F,0 x21,0 x51,0 x24,0 x18,0 x27,0 x48,0 x89,0 x89,0 xFF,0 x89,0 xCD,0 x48,0 x00,/鍵0 x04,0 x04,0 x04,0 xF4,0 x94,0 x94,0 x95,0 x96,0 x94,0 x94,0

23、x94,0 xF4,0 x04,0 x06,0 x04,0 x00,/高0 x00,0 xFE,0 x02,0 x02,0 x7A,0 x4A,0 x4A,0 x4A,0 x4A,0 x4A,0 x7A,0 x02,0 x82,0 xFF,0 x02,0 x00,0 x40,0 x20,0 xF8,0 x07,0 x00,0 xFC,0 x84,0 x84,0 x84,0 xFC,0 x82,0 x82,0 x83,0 xC2,0 x80,0 x00,0 x00,0 x00,0 xFF,0 x00,0 x00,0 x7F,0 x20,0 x10,0 x08,0 x20,0 x47,0 x18,

24、0 x60,0 x80,0 x70,0 x00, /低0 x40,0 x42,0 x44,0 xCC,0 x00,0 x00,0 xF1,0 x91,0 x95,0 xF9,0 x95,0 x93,0 xF9,0 x10,0 x00,0 x00,0 x00,0 x40,0 x20,0 x1F,0 x20,0 x40,0 xBF,0 x84,0 x84,0 xBF,0 x94,0 xA4,0 x9F,0 xC0,0 x40,0 x00,/通0 x00,0 xFC,0 x04,0 x04,0 x04,0 xE4,0 x24,0 x24,0 x24,0 xF4,0 x24,0 x04,0 x04,0

25、 xFE,0 x04,0 x00,0 x00,0 x7F,0 x20,0 x20,0 x20,0 x2F,0 x24,0 x24,0 x24,0 x2F,0 x20,0 x20,0 x20,0 x7F,0 x00,0 x00, /回0 x00,0 x04,0 xC4,0 xA4,0 x94,0 x8C,0 x87,0 xF4,0 x84,0 x84,0 xC4,0 x84,0 x06,0 x04,0 x00,0 x00,0 x04,0 x04,0 x04,0 x04,0 x04,0 x04,0 x04,0 xFF,0 x04,0 x04,0 x04,0 x04,0 x04,0 x06,0 x0

26、4,0 x00,/車0 x40,0 x42,0 x44,0 xCC,0 x00,0 x00,0 xFF,0 x49,0 x49,0 x49,0 x49,0 x49,0 xFF,0 x40,0 x00,0 x00,0 x00,0 x40,0 x20,0 x1F,0 x20,0 x40,0 x9F,0 x88,0 x85,0 x81,0 x82,0 x85,0 x88,0 xD8,0 x40,0 x00,/退 0 x00,0 x00,0 xFC,0 x40,0 x40,0 x40,0 x40,0 xFF,0 x40,0 x40,0 x40,0 x40,0 xFC,0 x00,0 x00,0 x00

27、,0 x00,0 xFE,0 x40,0 x40,0 x40,0 x40,0 x40,0 x7F,0 x40,0 x40,0 x40,0 x40,0 x40,0 xFE,0 x00,0 x00,/出0 x00,0 x02,0 x02,0 xC2,0 x02,0 x02,0 x02,0 xFE,0 x82,0 x82,0 x82,0 xC2,0 x83,0 x02,0 x00,0 x00,0 x40,0 x40,0 x40,0 x7F,0 x40,0 x40,0 x40,0 x7F,0 x40,0 x40,0 x40,0 x40,0 x40,0 x60,0 x40,0 x00,/正0 x08,0

28、 x08,0 x08,0 x08,0 xC8,0 x38,0 x0F,0 x08,0 x08,0 xE8,0 x08,0 x88,0 x08,0 x0C,0 x08,0 x00,0 x08,0 x04,0 x02,0 xFF,0 x00,0 x40,0 x41,0 x41,0 x41,0 x7F,0 x41,0 x41,0 x41,0 x60,0 x40,0 x00,/在 0 x40,0 x42,0 xCC,0 x00,0 x08,0 x08,0 xFF,0 x08,0 x08,0 x08,0 xFF,0 x08,0 x8C,0 x08,0 x00,0 x00,0 x40,0 x20,0 x1

29、F,0 x20,0 x41,0 x51,0 x4F,0 x41,0 x41,0 x41,0 x7F,0 x41,0 x41,0 x61,0 x20,0 x00,/進(jìn)0 x00,0 x10,0 x88,0 xC4,0 x23,0 x40,0 x42,0 x42,0 x42,0 x42,0 x42,0 xC2,0 x43,0 x62,0 x40,0 x00,0 x02,0 x01,0 x00,0 xFF,0 x00,0 x00,0 x00,0 x00,0 x00,0 x40,0 x80,0 x7F,0 x00,0 x00,0 x00,0 x00,/行0 x00,0 x02,0 x82,0 x82,

30、0 xF2,0 x4A,0 x26,0 x80,0 x60,0 x00,0 xFF,0 x20,0 x40,0 x80,0 x00,0 x00,/38.0 x40,0 x44,0 x44,0 x44,0 xC4,0 xFE,0 x42,0 x63,0 x42,0 x00,0 xF8,0 x00,0 x00,0 xFF,0 x00,0 x00,/40.0 x10,0 x10,0 xD0,0 xFF,0 x50,0 x90,0 x08,0 x88,0 x78,0 x0F,0 xC8,0 x08,0 x0C,0 x88,0 x00,0 x00,/42./*- 文字: 0 -*/*- 宋體12; 此字

31、體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0 x00,0 x00,0 xE0,0 xF0,0 xF0,0 x18,0 x08,0 x08,0 x08,0 x08,0 x08,0 x38,0 xF0,0 xE0,0 xC0,0 x00,/440 x00,0 x01,0 x0F,0 x1F,0 x1F,0 x30,0 x20,0 x20,0 x20,0 x20,0 x20,0 x38,0 x1F,0 x0F,0 x07,0 x00,/*- 文字: -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0 x00,0 x00,0 x30,0 x30,0 x38,0 x08,0 x88

32、,0 x88,0 x88,0 x88,0 xD8,0 xF8,0 x70,0 x20,0 x00,0 x00,/460 x00,0 x00,0 x18,0 x18,0 x38,0 x20,0 x21,0 x21,0 x21,0 x21,0 x21,0 x3B,0 x1E,0 x1E,0 x04,0 x00,/*- 文字: 2 -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0 x00,0 x00,0 x20,0 x70,0 x78,0 x08,0 x08,0 x08,0 x08,0 x08,0 x88,0 xF8,0 xF8,0 x70,0 x00,0 x00,/480

33、x00,0 x00,0 x30,0 x30,0 x38,0 x3C,0 x34,0 x36,0 x32,0 x33,0 x31,0 x31,0 x30,0 x38,0 x08,0 x00,0 x80,0 x84,0 x44,0 x44,0 x24,0 x14,0 x04,0 xFF,0 x04,0 x14,0 x24,0 x24,0 x46,0 xC4,0 x40,0 x00,/./50 ./520 x80,0 x80,0 x40,0 x40,0 x20,0 x11,0 x0A,0 x04,0 x0A,0 x11,0 x10,0 x20,0 x40,0 xC0,0 x40,0 x00,.0 x

34、20,0 x10,0 x0D,0 x02,0 x05,0 x18,0 x40,0 x7F,0 x40,0 x3F,0 x22,0 x07,0 x38,0 x40,0 xE0,0 x00,/*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0 x00,0 x00,0 xE0,0 xF0,0 xF0,0 x18,0 x08,0 x08,0 x08,0 x08,0 x08,0 x38,0 xF0,0 xE0,0 xC0,0 x00,/560 x00,0 x01,0 x0F,0 x1F,0 x1F,0 x30,0 x20,0 x20,0 x20,0 x20,0 x

35、20,0 x38,0 x1F,0 x0F,0 x07,0 x00,/*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0 x00,0 x00,0 x20,0 x70,0 x78,0 x08,0 x08,0 x08,0 x08,0 x08,0 x88,0 xF8,0 xF8,0 x70,0 x00,0 x00,/580 x00,0 x00,0 x30,0 x30,0 x38,0 x3C,0 x34,0 x36,0 x32,0 x33,0 x31,0 x31,0 x30,0 x38,0 x08,0 x00,/*- 文字: . -*/*- 宋體12; 此字體下對(duì)

36、應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0 x00,0 x00,0 x00,0 xF8,0 xF8,0 x88,0 x88,0 x88,0 xC8,0 xC8,0 x88,0 x88,0 x88,0 x08,0 x00,0 x00,/600 x00,0 x00,0 x18,0 x1D,0 x39,0 x20,0 x20,0 x20,0 x20,0 x20,0 x20,0 x3B,0 x1F,0 x0F,0 x06,0 x00,/*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16

37、 -*/*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0 x00,0 x00,0 xE0,0 xF0,0 xF0,0 x18,0 x08,0 x08,0 x08,0 x08,0 x08,0 x38,0 xF0,0 xE0,0 xC0,0 x00,/660 x00,0 x01,0 x0F,0 x1F,0 x1F,0 x30,0 x20,0 x20,0 x20,0 x20,0 x20,0 x38,0 x1F,0 x0F,0 x07,0 x00,/*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0 x00,0 x00,

38、0 x30,0 x30,0 x38,0 x08,0 x88,0 x88,0 x88,0 x88,0 xD8,0 xF8,0 x70,0 x20,0 x00,0 x00,/680 x00,0 x00,0 x18,0 x18,0 x38,0 x20,0 x21,0 x21,0 x21,0 x21,0 x21,0 x3B,0 x1E,0 x1E,0 x04,0 x00,/*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0 x00,0 x00,0 x70,0 xF0,0 xD8,0 xC8,0 x88,0 x88,0 x88,0 x88,0 x88,0 x88,

39、0 xF8,0 x70,0 x20,0 x00,/700 x00,0 x08,0 x1E,0 x1E,0 x33,0 x21,0 x21,0 x21,0 x21,0 x21,0 x23,0 x23,0 x1E,0 x1E,0 x0C,0 x00,/*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0 x00,0 x80,0 xC0,0 xBC,0 x84,0 x84,0 x84,0 xF4,0 x82,0 x82,0 x83,0 x82,0 x80,0 xC0,0 x80,0 x00,/72./*- 文字:.-*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:

40、寬x高=16x16 -*/0 x10,0 x10,0 xD0,0 xFF,0 x90,0 x10,0 xFC,0 x84,0 x84,0 x84,0 xF4,0 x82,0 x83,0 xC2,0 x80,0 x00,/74./*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=16x16 -*/0 x04,0 x84,0 xE4,0 x9C,0 x86,0 xC4,0 x80,0 xFC,0 x84,0 x84,0 xF4,0 x82,0 x83,0 xC2,0 x80,0 x00,/76./*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16

41、 -*/0 x00,0 x00,0 xE0,0 xF0,0 xF0,0 x18,0 x08,0 x08,0 x08,0 x08,0 x08,0 x38,0 xF0,0 xE0,0 xC0,0 x00,/780 x00,0 x01,0 x0F,0 x1F,0 x1F,0 x30,0 x20,0 x20,0 x20,0 x20,0 x20,0 x38,0 x1F,0 x0F,0 x07,0 x00,/*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0 x00,0 x00,0 x20,0 x70,0 x78,0 x08,0 x08,0 x08,0 x08,0

42、x08,0 x88,0 xF8,0 xF8,0 x70,0 x00,0 x00,/800 x00,0 x00,0 x30,0 x30,0 x38,0 x3C,0 x34,0 x36,0 x32,0 x33,0 x31,0 x31,0 x30,0 x38,0 x08,0 x00,/*- 文字: . -*/*- 宋體12; 此字體下對(duì)應(yīng)的點(diǎn)陣為:寬x高=8x16 -*/0 x00,0 x00,0 x00,0 x00,0 x80,0 x80,0 x40,0 x60,0 x30,0 xF0,0 xF8,0 xF8,0 x00,0 x00,0 x00,0 x00,/820 x00,0 x00,0 x06

43、,0 x07,0 x05,0 x04,0 x24,0 x24,0 x24,0 x3F,0 x3F,0 x3F,0 x24,0 x24,0 x24,0 x00,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0, /840 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0, 0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0,0 x0 /清空;unsigned int uWork;int nCount,nCursorCount;unsigned

44、int nScanCode,nKeyCode,state;unsigned int cKey,tKey;main()nIn=0; nOut=0;fInput=fOutput=0;f2PI=2*PI;fSignal1=PI*0.6;fSignal2=0.0;fStepSignal1=2*PI/16;fStepSignal2=7*PI/8;state=4;tKey=0;cKey=tKey;REGISTERCLKMD=0;CTRGR=0;/ 初始化ICETEK-CTRCTRGR=0 x80;CTRGR=0;CTRLR=0;/ 關(guān)閉東西方向的交通燈CTRLR=0 x40;/ 關(guān)閉南北方向的交通燈Tur

45、nLcdOn();/ 打開顯示LcdCls();/ 清除顯示內(nèi)存CTRLCDCMDR=LCDCMDSTARTLINE;/ 設(shè)置顯示起始行CTRLCDCR=0;tKey=port8002; / 清鍵盤緩沖區(qū)/REGISTERCLKMD=0 x1007;/ 設(shè)DSP主頻改為兩倍PLL時(shí)鐘=32MHzasm(ssbxINTM);/ 關(guān)中斷,進(jìn)行關(guān)鍵設(shè)置時(shí)不許打擾port3004=0;/ 使能XINT2uWork=PMST;/ 設(shè)置PMST寄存器PMST =uWork&0 xff;/ 中斷向量表起始地址=80HIMR = 4;/ 使能XINT2IFR = 4;/ 清中斷標(biāo)志位asm(rsbxINTM)

46、;/ 開中斷DisplayEnterSystem();for (;) switch(state)case 0: if(display)display=0;LcdCls();break;case 1:if(display)display=0;Display1();fInput=InputWave();fInnIn=fInput;nIn+; nIn%=256;fOutput=IIR(fH1,fA1,fB1);fOutnOut=fOutput;nOut+;/* break point */if ( nOut=256 )nOut=0;break;case 2:if(display)display=0;

47、Display2(); fInput=InputWave();fInnIn=fInput;nIn+; nIn%=256;fOutput=IIR(fH2,fA2,fB2);fOutnOut=fOutput;nOut+;nOut%=256;/* break point */break;case 3:if(display)display=0;Display3();break;default:break; float InputWave()for ( i=IIRNUMBER-1;i0;i- )fXni=fXni-1;fYni=fYni-1; /輸出也參加移位fXn0=2*sin(double)fSig

48、nal1)/5+cos(double)fSignal2);fYn0=0.0;fSignal1+=fStepSignal1; if ( fSignal1=f2PI )fSignal1-=f2PI;fSignal2+=fStepSignal2;if ( fSignal2=f2PI )fSignal2-=f2PI;return(fXn0);float IIR(float fHn,float fAn,float fBn)float fSum;fSum=0;for(i=0;iIIRNUMBER;i+)fSum+=(fXni*fBni);fSum+=(fYni*fAni);return(fSum);voi

49、d LcdCls()int i,j;port8001=LCDCMDSTARTLINE;LcdDelay(LCDDELAY);port8002=0;LcdDelay(LCDDELAY);for ( i=0;i8;i+ )port8001=LCDCMDPAGE+i;LcdDelay(LCDDELAY);port8002=0;LcdDelay(LCDDELAY);port8001=LCDCMDSTARTCOLUMN;LcdDelay(LCDDELAY);port8002=0;LcdDelay(LCDDELAY);for ( j=0;j64;j+ )port8003=0;LcdDelay(LCDDEL

50、AY);port8002=0;LcdDelay(LCDDELAY);port8001=LCDCMDPAGE+i;LcdDelay(LCDDELAY);port8002=0;LcdDelay(LCDDELAY);port8001=LCDCMDSTARTCOLUMN;LcdDelay(LCDDELAY);port8002=0;LcdDelay(LCDDELAY);for ( j=0;j64;j+ )port8004=0;LcdDelay(LCDDELAY);port8002=0;LcdDelay(LCDDELAY);void TurnLcdOff()port8001 = LCDCMDTURNOFF

51、;LcdDelay(LCDDELAY);port8002 = 0;LcdDelay(LCDDELAY);void TurnLcdOn()port8001 = LCDCMDTURNON;/設(shè)置打開LCD命令字LcdDelay(LCDDELAY);/延遲port8002 = 0;/完成命令字LcdDelay(1024);/延遲,等待打開LCDport8001 = LCDCMDSTARTLINE;/設(shè)置起始行命令字LcdDelay(LCDDELAY);/延遲port8002 = 0;/完成命令字LcdDelay(LCDDELAY);/延遲port8001 = LCDCMDPAGE;/設(shè)置當(dāng)前操作頁L

52、cdDelay(LCDDELAY);/延遲port8002 = 0;/完成命令字LcdDelay(LCDDELAY);/延遲port8001 = LCDCMDSTARTCOLUMN;/設(shè)置起始列命令字LcdDelay(LCDDELAY);/延遲port8002 = 0;/完成命令字LcdDelay(LCDDELAY);/延遲void DisplayChineseChar(int nStartLine, int nPage, int nStartColumn, unsigned char Array16, int nCharIndex, int nBufferIndex)int i;port80

53、01 = LCDCMDSTARTLINE + nStartLine;LcdDelay(LCDDELAY);/延遲port8002 = 0;/完成命令字LcdDelay(LCDDELAY);/延遲port8001 = LCDCMDPAGE + nPage;/設(shè)置當(dāng)前操作頁LcdDelay(LCDDELAY);/延遲port8002 = 0;/完成命令字LcdDelay(LCDDELAY);/延遲port8001 = LCDCMDSTARTCOLUMN + nStartColumn;/設(shè)置起始列命令字LcdDelay(LCDDELAY);/延遲port8002 = 0;/完成命令字LcdDelay

54、(LCDDELAY);/延遲/左上角for (i = 0; i 16; i +)if (nBufferIndex = 0)port8003 = ArraynCharIndexi;LcdDelay(LCDDELAY);port8002 = 0;LcdDelay(LCDDELAY);elseport8004 = ArraynCharIndexi;LcdDelay(LCDDELAY);port8002 = 0;LcdDelay(LCDDELAY); port8001 = LCDCMDPAGE + nPage + 1;/設(shè)置起始行命令字LcdDelay(LCDDELAY);/延遲port8002 =

55、0;/完成命令字LcdDelay(LCDDELAY);/延遲port8001 = LCDCMDSTARTCOLUMN + nStartColumn;/設(shè)置起始列命令字LcdDelay(LCDDELAY);/延遲port8002 = 0;/完成命令字LcdDelay(LCDDELAY);/延遲for (i = 0; i 16; i +)if (nBufferIndex = 0)port8003 = ArraynCharIndex + 1i;LcdDelay(LCDDELAY);port8002 = 0;LcdDelay(LCDDELAY);elseport8004 = ArraynCharInd

56、ex + 1i;LcdDelay(LCDDELAY);port8002 = 0;LcdDelay(LCDDELAY);void DisplayEnterSystem()DisplayDigital(0, 0, 0, DigitalArray, 0, 0);/IDisplayDigital(0, 0, 8, DigitalArray, 2, 0);/IDisplayDigital(0, 0, 16, DigitalArray, 4, 0);/RDisplayChineseChar(0, 0, 32, ChineseArray, 0, 0);/濾DisplayChineseChar(0, 0, 4

57、8, ChineseArray, 2, 0);/波DisplayChineseChar(0, 0, 0, ChineseArray, 4, 1);/測(cè)DisplayChineseChar(0, 0, 16, ChineseArray, 6, 1);/試DisplayChineseChar(0, 0, 32, ChineseArray, 8, 1);/系DisplayChineseChar(0, 0, 48, ChineseArray, 10, 1);/統(tǒng)DisplayChineseChar(0, 2, 0, ChineseArray, 12, 0);/按DisplayChineseChar(0

58、, 2,16, ChineseArray, 14, 0);/鍵DisplayDigital(0, 2, 32, DigitalArray, 6, 0);/1DisplayDigital(0, 2, 40, DigitalArray, 10, 0);/:DisplayChineseChar(0, 2, 0, ChineseArray, 18, 1);/低DisplayChineseChar(0, 2, 16, ChineseArray, 20, 1);/通DisplayChineseChar(0, 2, 32, ChineseArray, 0, 1);/濾DisplayChineseChar(0

59、, 2, 48, ChineseArray, 2, 1);/波DisplayChineseChar(0, 4, 0, ChineseArray, 12, 0);/按DisplayChineseChar(0, 4,16, ChineseArray, 14, 0);/鍵DisplayDigital(0, 4, 32, DigitalArray, 8, 0);/2DisplayDigital(0, 4, 40, DigitalArray, 10, 0);/:DisplayChineseChar(0, 4, 0, ChineseArray, 16, 1);/高DisplayChineseChar(0,

60、 4, 16, ChineseArray, 20, 1);/通DisplayChineseChar(0, 4, 32, ChineseArray, 0, 1);/濾DisplayChineseChar(0, 4, 48, ChineseArray, 2, 1);/波DisplayChineseChar(0, 6, 0, ChineseArray, 12, 0);/按DisplayChineseChar(0, 6, 16, ChineseArray, 22, 0);/回DisplayChineseChar(0, 6, 32, ChineseArray, 24, 0);/車DisplayChine

溫馨提示

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

評(píng)論

0/150

提交評(píng)論