西电DSP实验报告_第1页
西电DSP实验报告_第2页
西电DSP实验报告_第3页
西电DSP实验报告_第4页
西电DSP实验报告_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

西安电子科技大学数字信号处理课程试验汇报试验名称:DSP综合试验成绩电子工程学院140成绩姓名梁思颖学号1400055同作者李习习同作者王梦路同作者阿莫瑞试验汇报日期6月28日指导教师评语:指导教师:年月日试验汇报内容基本要求及参考格式一、试验目标二、试验所用仪器(或试验环境)三、试验基本原理及步骤(或方案设计及理论计算)四、试验数据统计(或仿真及软件设计)五、试验结果分析及回答下列问题(或测试环境及测试结果)dot_product算法试验目标针对ADSP-Blacfin609DSP,利用简单C程序实现矩阵相乘,熟悉CCES编程环境和debug调试功效。试验步骤1、开启CCES,建立一个工程(Project);2、添加文件,编写程序,编译程序,如有错误,进行调整修改;3、用调试器来评定用C语言所编写代码性能。试验结果在output窗口能够看到两个矩阵相乘结果,如图所表示。试验体会此次试验试验代码较简单:首先编写了三个子函数来实现矩阵点乘功效,然后在主函数中调用子函数,将计算结果显示出来。经过此次试验熟悉了CCES编程环境和debug调试功效操作步骤,为后续试验打下了基础。FIR滤波算法试验步骤1、开启CCES,建立一个工程(Project),编写程序;2、对给定数据文件dsp2.dat数据文件(带噪声)并调用已给fir相关函数进行fir滤波;3、要求滤波结束后生成新dsp2New.dat文件,在matlab中进行plot操作可看到滤波效果是否实现。试验结果含有噪声信号时域波形:滤波后信号时域波形:含有噪声信号频域波形:滤波后信号频域波形:试验分析本试验先利用MATLAB设计滤波器,得到滤波器参数,然后将滤波器参数在fir_coeff.h文件中设置。主函数中利用设置好参数对给定波形进行滤波。按键和LED综合试验试验步骤1、将仿真器与BF609教学板JTAG接口连接;2、先给仿真器上电再为WL-BF60X开发板上电;3、当行列扫描确定用户按下按键值时,便会对对应LED灯进行点亮操作;当有新按键按下时,原先点亮LED灯要熄灭。试验结果4个按键分别控制4盏LED灯。按键1、2、3、4分别按下时,仅有LED1、LED2、LED3、LED4被点亮,其余按键按下时,LED灯不亮,output窗口显示所按下按键。试验分析此次试验代码较长,但从原理上分析并不复杂,大致可将试验程序分为三个部分:LED灯初始化voidInit_LEDs(void){ /*PD0:LED0*/ *pREG_PORTD_DIR|=BITM_PORT_DATA_PX0; *pREG_PORTD_DATA|=BITM_PORT_DATA_PX0; /*PD9:LED1*/ *pREG_PORTD_DIR|=BITM_PORT_DATA_PX9; *pREG_PORTD_DATA|=BITM_PORT_DATA_PX9; /*PD10:LED2*/ *pREG_PORTD_DIR|=BITM_PORT_DATA_PX10; *pREG_PORTD_DATA|=BITM_PORT_DATA_PX10; /*PB12:LED3*/ *pREG_PORTB_DIR|=BITM_PORT_DATA_PX12; *pREG_PORTB_DATA|=BITM_PORT_DATA_PX12;}按键初始化voidSetKeyPorts(void){ //setPORTC-10(column0)asINPUTmode *pREG_PORTC_FER &=~(BITM_PORT_DIR_PX10); *pREG_PORTC_MUX &=~(BITM_PORT_DIR_PX10); *pREG_PORTC_INEN |=BITM_PORT_DIR_PX10; *pREG_PORTC_DIR &=~BITM_PORT_DIR_PX10; //setPORTC-11(column1)asINPUTmode *pREG_PORTC_FER &=~(BITM_PORT_DIR_PX11); *pREG_PORTC_MUX &=~(BITM_PORT_DIR_PX11); *pREG_PORTC_INEN |=BITM_PORT_DIR_PX11; *pREG_PORTC_DIR &=~BITM_PORT_DIR_PX11; //setPORTC-12(column2)asINPUTmode *pREG_PORTC_FER &=~(BITM_PORT_DIR_PX12); *pREG_PORTC_MUX &=~(BITM_PORT_DIR_PX12); *pREG_PORTC_INEN |=BITM_PORT_DIR_PX12; *pREG_PORTC_DIR &=~BITM_PORT_DIR_PX12; //setPORTC-13(column3)asINPUTmode *pREG_PORTC_FER &=~(BITM_PORT_DIR_PX13); *pREG_PORTC_MUX &=~(BITM_PORT_DIR_PX13); *pREG_PORTC_INEN |=BITM_PORT_DIR_PX13; *pREG_PORTC_DIR &=~BITM_PORT_DIR_PX13; //setPORTC-14(row0)asOUTPUTmode *pREG_PORTC_FER &=~(BITM_PORT_DIR_PX14); *pREG_PORTC_MUX &=~(BITM_PORT_DIR_PX14); *pREG_PORTC_DIR |=BITM_PORT_DATA_PX14;// *pREG_PORTC_DATA &=~BITM_PORT_DATA_PX14; *pREG_PORTC_DATA |=BITM_PORT_DATA_PX14; //setPORTC-15(row1)asOUTPUTmode *pREG_PORTC_FER &=~(BITM_PORT_DIR_PX15); *pREG_PORTC_MUX &=~(BITM_PORT_DIR_PX15); *pREG_PORTC_DIR |=BITM_PORT_DATA_PX15;// *pREG_PORTC_DATA &=~BITM_PORT_DATA_PX15; *pREG_PORTC_DATA |=BITM_PORT_DATA_PX15; //setPORTD-5(row2)asOUTPUTmode *pREG_PORTD_FER &=~(BITM_PORT_DIR_PX5); *pREG_PORTD_MUX &=~(BITM_PORT_DIR_PX5); *pREG_PORTD_DIR |=BITM_PORT_DATA_PX5;// *pREG_PORTD_DATA &=~BITM_PORT_DATA_PX5; *pREG_PORTD_DATA |=BITM_PORT_DATA_PX5;//setPORTD-14(row3)asOUTPUTmode *pREG_PORTD_FER &=~(BITM_PORT_DIR_PX14); *pREG_PORTD_MUX &=~(BITM_PORT_DIR_PX14); *pREG_PORTD_DIR |=BITM_PORT_DATA_PX14;// *pREG_PORTD_DATA &=~BITM_PORT_DATA_PX14; *pREG_PORTD_DATA |=BITM_PORT_DATA_PX14;}主函数点亮LED灯并显示对应按键编号主函数中先对按键进行判断,若按下按键1、2、3或4,则点亮对应LED灯并打印按键名称;若按下其余按键,则只打印按键名称不点亮LED灯。intmain(void){ adi_initComponents(); Init_LEDs(); SetKeyPorts(); while(1) { //setrow0low *pREG_PORTC_DATA&=~BITM_PORT_DATA_PX14; if((*pREG_PORTC_DATA&0x0400)==0)//row0-clo0pressed { *pREG_PORTD_DATA|=(BITM_PORT_DATA_PX0); *pREG_PORTD_DATA|=(BITM_PORT_DATA_PX9); *pREG_PORTD_DATA|=(BITM_PORT_DATA_PX10); *pREG_PORTB_DATA&=~(BITM_PORT_DATA_PX12); printf("key1\n"); } if((*pREG_PORTC_DATA&0x1000)==0)//row0-clo1pressed { *pREG_PORTD_DATA&=~(BITM_PORT_DATA_PX0); *pREG_PORTD_DATA|=(BITM_PORT_DATA_PX9); *pREG_PORTD_DATA|=(BITM_PORT_DATA_PX10); *pREG_PORTB_DATA|=(BITM_PORT_DATA_PX12); printf("key2\n"); } if((*pREG_PORTC_DATA&0x)==0)//row0-clo2pressed { *pREG_PORTD_DATA|=(BITM_PORT_DATA_PX0); *pREG_PORTD_DATA|=(BITM_PORT_DATA_PX9); *pREG_PORTB_DATA|=(BITM_PORT_DATA_PX12); *pREG_PORTD_DATA&=~(BITM_PORT_DATA_PX10); printf("key3\n"); } if((*pREG_PORTC_DATA&0x0800)==0)//row0-clo3pressed { *pREG_PORTD_DATA|=(BITM_PORT_DATA_PX0); *pREG_PORTD_DATA|=(BITM_PORT_DATA_PX10); *pREG_PORTB_DATA|=(BITM_PORT_DATA_PX12); *pREG_PORTD_DATA&=~(BITM_PORT_DATA_PX9); printf("key4\n"); } //setrow0high *pREG_PORTC_DATA|=BITM_PORT_DATA_PX14; //setrow1low *pREG_PORTC_DATA&=~BITM_PORT_DATA_PX15; if((*pREG_PORTC_DATA&0x0400)==0)//row1-clo0pressed { printf("key5\n"); } if((*pREG_PORTC_DATA&0x0800)==0)//row1-clo1pressed { printf("key6\n"); } if((*pREG_PORTC_DATA&0x1000)==0)//row1-clo2pressed { printf("key7\n"); } if((*pREG_PORTC_DATA&0x)==0)//row1-clo3pressed { printf("key8\n"); } //setrow1high *pREG_PORTC_DATA|=BITM_PORT_DATA_PX15; //setrow2low *pREG_PORTD_DATA&=~BITM_PORT_DATA_PX5; if((*pREG_PORTC_DATA&0x0400)==0)//row2-clo0pressed { printf("key9\n"); } if((*pREG_PORTC_DATA&0x0800)==0)//row2-clo1pressed { printf("key10\n"); } if((*pREG_PORTC_DATA&0x1000)==0)//row2-clo2pressed { printf("key11\n"); } if((*pREG_PORTC_DATA&0x)==0)//row2-clo3pressed { printf("key12\n"); } //setrow2high *pREG_PORTD_DATA|=BITM_PORT_DATA_PX5; //setrow3low *pREG_PORTD_DATA&=~BITM_PORT_DATA_PX14; if((*pREG_PORTC_DATA&0x0400)==0)//row3-clo0pressed { printf("key13\n"); } if((*pREG_PORTC_DATA&0x0800)==0)//row3-clo1pressed { printf("key14\n"); } if((*pREG_PORTC_DATA&0x1000)==0)//row3-clo2pressed { printf("key15\n"); } if((*pREG_PORTC_DATA&0x)==0)//row3-clo3pressed { printf("key16\n"); } //setrow3high *pREG_PORTD_DATA|=BITM_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论