DSP实习报告(3)

2019-08-31 11:56

逆变换波形

七、源程序代码

1主程序

//********************************************************* #include \#include

//********************************************************* #define pi 3.1415927 #define Len 128

//----------------------------------------------------------- void dct1c2 (double x[Len], double y[Len]); void idct1c2 (double y[Len], double z[Len]);

11

//-----------------------------------------------------------

double x[Len],y[Len],z[Len],temp[Len]; int in_x[Len]; int m = 0;

int intnum = 0; double xmean=0; int i=0; int flag = 0;

/**********************************************************/ void main() { unsigned int ii;

//----------------------------------- initial_sys(); mcbsp2_close(); asm(\

initial_aic23(); delayMs_SYS(1); mcbsp2_init();

mcbsp2_open();

//------------------------------------ while(1) { for(ii=0;ii!=Len;ii++) { mcbsp2_read_rdy(); //read_data2 = DRR2_2; in_x[ii] = DRR1_2; } { xmean = 0.0; for (i=0; i

12

{ x[i] = (double)(in_x[i] - xmean); } dct1c2 (x,y); idct1c2 (y,z); } m=0; //设置断点 m=0; } }

//---------------------------------------------------------- void dct1c2 (double x[Len], double y[Len]) { double s,t; int i,j; s=0.0;

for (i=0; i

for (i=1; i

y[0]=s/(sqrt(Len/1.0)); }

void idct1c2(double y[Len], double z[Len]) { double t; int i,j; for (i=0; i

13

for (j=0; j

/***************** end *************************************/

/***************** end *************************************/ 2、aic_23芯片程序

//-------------------------------------------------------- #include \#include \

unsigned int cpld_ctrl_back = 0xe7;

//-------------------------------------------------------- #define AIC23_ADDR 0x34

extern void delayMs_SYS(unsigned int msecond); extern void delayUs_SYS(unsigned int usecond);

extern void mcbsp2_init(void);

extern void mcbsp2_write_rdy(unsigned int out_data1,unsigned int out_data2);//MCBSP1发送一个数据32位

extern void mcbsp2_read_rdy(void); extern void mcbsp2_open(void); extern void mcbsp2_close(void);

extern void Delay(int numbers);

/****************************************************************/ //------------------------------------------------------------- void mcbsp2_init(void) {

SPCR1_2 = 0; SPCR2_2 = 0; delayUs_SYS(10); RCR1_2 = 0x00A0; RCR2_2 = 0x00A0; XCR1_2 = 0x00A0; XCR2_2 = 0x00A0; PCR2 = 0x000D;

14

}

void mcbsp2_write_rdy(unsigned int out_data1,unsigned int out_data2) {

while ((SPCR2_2 & 0x0002) == 0); DXR2_2 = out_data2; DXR1_2 = out_data1; }

void mcbsp2_read_rdy(void) {

while((SPCR1_2 & 0x0002) == 0); }

void mcbsp2_open() {

SPCR1_2 = SPCR1_2 | 0x0001; SPCR2_2 = SPCR2_2 | 0x0001; }

void mcbsp2_close() {

SPCR1_2 = SPCR1_2 & 0xFFFE; SPCR2_2 = SPCR2_2 & 0xFFFE; }

//----------------------------------------------------------------

void AIC23_CLK(unsigned int flag) { if(flag ==0) cpld_ctrl_back &= ~B5_MSK; else cpld_ctrl_back |= B5_MSK; CPLD_CTRL_REG = cpld_ctrl_back; }

void AIC23_DIN(unsigned int flag) { if(flag ==0) cpld_ctrl_back &= ~B6_MSK; else cpld_ctrl_back |= B6_MSK; CPLD_CTRL_REG = cpld_ctrl_back; }

void AIC23_DIN_EN(unsigned int flag) {

15


DSP实习报告(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:河北省涿鹿中学11—12学年高三语文基础训练题(五)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: