您好,欢迎访问三七文档
DSP课程设计总结(2014-2015学年第2学期)题目:数据采集处理和控制系统设计专业班级:电子1202学生姓名:李茹学号:12052203指导教师:李莉设计成绩:2015年7月目录一设计目的............................................................................................1二系统分析............................................................................................11.1设计要求......................................................................................11.2主要任务......................................................................................1三硬件设计............................................................................................23.1硬件总体结构............................................................................23.2DSP模块设计.............................................................................43.3电源模块设计............................................................................63.4时钟模块设计............................................................................63.5存储器模块设计.......................................................................7四软件设计..........................................................................................94.1软件总体流程...........................................................................94.2核心模块及实现代码...............................................................9五课程设计总结................................................................................29六参考文献........................................................................................291一设计目的此设计结合硬件、软件得到一个基于TMS320VC5416芯片,能完成数据采集、频谱分析、滤波、LCD显示的DSP系统。以此加强了对DSP功能的认识,复习了AltiumDesigner软件的使用方法。并在此基础上利用CCS软件编程实现A/D采集,FFT变换处理,低通滤波,显示滤波成分等功能的完整的小型数字处理系统。二系统分析1.1设计要求(1)硬件设计要求设计一个功能完备的,能够独立运行的精简DSP硬件系统,使用AltiumDesigner绘制出系统原理图和PCB图。(2)软件设计要求利用实验箱的模拟信号产生单元产生不同频率的信号,或者产生两个频率的信号叠加。在DSP中采集信号,并且对信号进行频谱分析,滤波等。通过串口命令选择算法功能,将计算的信号频率或者滤波后的信号频率在LCD上显示。1.2主要任务(1)DSP硬件系统设计设计DSP基本结构并绘制单片机最小系统原理图和PCB图。(2)数据采集处理和控制系统设计利用CCS软件编程实现数据采集x(n)→对数据FFT处理、分析频率成分→根据频率成分设计FIR低通滤波器h(n)→卷积x(n)*h(n)=y(n)得到滤波之后的信号→分析滤波之后y(n)的频率成分→LCD显示高频,低频和滤波器的截止频率。2三硬件设计3.1硬件总体结构1图1硬件总体结构本次实验使用TMS320VC5416芯片作为主芯片。外围电路包括:电源、复位电路、时钟发生器(外接晶振或外接晶体)、、外部存储器FLASH、仿真接口电路JTAG、外部中断(不用:上拉)、I/O(不用:输出悬空,输入上拉)与主机通信的并行接口HPI(不用:悬空)。(1)原理图设计图2单片机最小系统原理图READYRSDSP_R/WX2/CLKIN电源复位电路JTAG晶振FLASHWROED0-D15A0-A193(2)PCB板设计图3PCB图(1)图4PCB图(2)4如图所示,由于其右上部分地址线和数据线较多,铺铜不方便,所以Vcore层分布在TM320VC5416芯片的左下部分。+3.3V为顶层红色部分,GND为底层蓝色部分。3.2DSP模块设计图5DSP模块(1)上图为TMS320VC5416芯片的设计,该芯片不用的输入引脚要拉高,输出引脚悬空。①本设计用到了该芯片的数据信号线,初始化、中断和复位线,部分存储器控制信号线,部分振荡器/定时信号线,串口信号线,电源引脚线和JTAG测试引脚线。②主CPU每个电源管脚旁边都有一个0.1uF的去耦电容,去耦电容可以提供较稳定的电源,同时也可以降低元件耦合到电源端的噪声,间接可以减少其他元件受此元件噪声的影响。③CLKMOD1、CLKMOD2、CLKMOD3分别接1、1、0,表示锁相环一倍频5图6DSP模块(2)图6DSP模块(3)63.3电源模块设计图7电源模块73HD316为DC-DC转换芯片,将+5V电压转换成Vcore和+3.3V电压,电源和地之间要接滤波电容。Vcore为内核电压,+3.3V为外设电压,这样可以减小功耗。3.4时钟模块设计图8时钟模块10MHZ晶振的输出接到TM320VC5416芯片的X2/CLKIN管脚,芯片的X1悬空,即使用外部晶振。73.5存储器模块设计图9存储器模块存储器的数据线和地址线分别接CPU的数据线和地址线。DSP控制信号R/W_L接FLASH的WE_L和OE表示DSP向FLASH写和从FLASH读有效。当DSP从FLASH读时,DSP输出高电平,但FLASH的OE为低有效,应接一个非门。83.6复位电路设计图10复位电路如图所示有两种复位方法:(1)上电复位,利用RC的延迟特性,刚开始上电,由于电容电压不能突变,RESET处为低,直到电容充电完毕,变高,实现复位;(2)手动复位,S1闭合,电容放电,电平变低,断开,电容充电过程与上电复位相同,实现复位。发光二极管用来表示DSP的工作状态三个电源是否正常工作。3.7仿真接口电路设计图11仿真接口电路9JTAG仿真接口,用于将外部的程序、数据导入DSP内部,完成运算处理。是外部存储器与DSP的一个媒介。四软件设计4.1软件总体流程4.2核心模块及实现代码(1)主要代码//------------------头文件--------------------------------------#includeDspRegDefine.h//VC5402寄存器定义#includestdio.h//输入输出接口定义#includemath.h//数学计算定义//---------------------------------------------------------------/*******************宏定义****************************************************************************/系统各模块初始化A/D采样对采样信号进行FFT运算,并求两频率值设计FIR低通滤波器调用卷积算法对信号进行处理LCD显示频率值返回第二步10#defineUCHARunsignedchar#defineUINT16unsignedint#defineUINT32unsignedlong#defineTRUE1#defineFALSE0#defineLength256//FFT的点数//---------------------------------------------------------------//---------------LCD指令-----------------------------//基本指令集RE=0#defineCLEAR0x0001//清除显示#defineRESAC0x0002//位址歸位#defineSETPOINT0x0006//進入點設定,游標右移,DDRAM位址計數器(AC)加1#defineCURSOR0x000F//整體顯示,游標顯示,游標位置反白#defineMCURSOR0x0014//游標向右移動,AC=AC+1#defineFUCSET0x0030//功能設定,BITMPU控制界面,基本指令集,默认设置#defineCGRAMAC0x0040//設定CGRAM位址#defineDDRAMAC0x0080//設定DDRAM位址//第一行AC範圍為80H..8FH//第二行AC範圍為90H..9FH//第三行AC範圍為A0H..AFH//第四行AC範圍為B0H..BFH//#defineREADBFRS=0,RW=1,DB7,DB6,DB5,DB4,DB3,DB2,DB1,DB0//BFAC6AC5AC4AC3AC2AC1AC0//讀取忙碌旗標(BF)和位址//就是读取指令寄存器,PORT8006,BF=1,表示LCD忙碌//#defineWRITERAMRS=1,RW=0,DB7,DB6,DB5,DB4,DB3,DB2,DB1,DB0//D7D6D5D4D3D2D1D0//寫入資料到RAM//就是写数据寄存器:PORT8005//#defineREADRAMRS=1,RW=1,DB7,DB6,DB5,DB4,DB3,DB2,DB1,DB0//D7D6D5D4D3D2D1D0//讀取RAM的值//就是从数据寄存器讀取資料,PORT8007//擴充指令集RE=1#defineIDLE0x01//待命模式#defineCGRAMSET0x02//捲動位址或RAM位址選擇#defineREVERSE0x04//反白選擇#defineSLEEP0x0c//脫離睡眠模式#defineEFUCSET0x66//擴充功能設定,8BITMPU控制界面,為擴充指令集動作,繪圖顯示ON11#defineSISA0x40//設定IRAM位址或捲動位址#defineSETGDRAM0x80//設定繪圖RAM位址//---------------------------------------------------------/*端口定义*///---------------------------------------------------------ioportUINT16port8002;//定义输出AD端口为0x8002;ioportUINT16port8004;//写指令寄存器ioportUINT16port8005;//写数据寄存器ioportUINT16port8006;//读指令寄存器ioportUINT16port8007;//读数据寄存
本文标题:dsp课程设计报告
链接地址:https://www.777doc.com/doc-4928769 .html