第一篇:《DSP原理及应用》课程设计教学大纲范文
课程设计中文名称:DSP原理及应用课程设计
课程编码: 设计周数:2周 学 分:2学分
开课学期:第6学期 开课单位:通信工程学院
一、课程设计的教学目的和任务
通过本课程设计教学所要达到的目的是:通过对课程设计任务的完成,使学生理课题教学的理论
内容,并且能够掌握和熟悉DSP的开发流程和基本的编程方法。同时,由于设计中涉及到各种器件的 使用,可以起到综合运用各种技术和知识的作用。本课程设计的任务是:任务分为基本要求和提高要 求。在基本要求中,学生要通过串口对指示灯进行控制,同时完成对串口数据的采集和发送。提高要 求是通过程序编写,完成对EVM板上的FLASH 进行烧写处理,从而使基本要求的程序可以脱机运行。
二、课程设计的主要内容
在TMS320VC5410EVM板上实现对信号的采集和发送。信号通过信号源提供给串行ADC,而
DSP从串口把ADC转换后的数据读入到DSP中。最后,从同一个串口,DSP把数据发送出去,通过 DAC编程模拟信号。在示波器上可以进行观察,输入同输出的信号是相同的,仅仅具有一定的相。
在程序运行过程当中,需要对一些指示灯进行控制。
三、课程设计的基本教学条件
实验室需要每组一台电脑,一个54XEVM板,仿真器,1M信号源,20M示波器,万用表。
四、参考资料
《TMS320VC54XDSP课程实践指导书》曾浩,重大教材科《DSP技术的发展与应用》 彭启琮,高 教出版社
五、成绩评定标准
实现全部基本要求为中或者良,实现提高要求为优,实现部分基本要求为及格,其他为不及格
第二篇:DSP课程设计教学大纲
DSP课程设计教学大纲 课程名称:DSP课程设计 英文名称:Design of DSP course 学 时:2周 学 分:2 适用专业:电子信息工程、通信工程专业本科生
课程类别:必修 课程性质:集中实践环节 先修课程:数字信号处理、DSP原理与应用
教 材:《DSP系统设计与实现》,电子工业出版社,雷勇,2004年
一、课程性质与任务
DSP课程设计是数字信号处理和DSP原理与应用课程的后续实践环节。通过本课程设计,帮助学生进一步领会和深化课堂上学到的有关数字信号处理的基本概念、基本原理以及基本的数字信号处理操作,进一步理解DSP芯片的硬件实现机理及其内部结构特点,掌握DSP系统的开发流程和基本编程方法,实践工程的调试方法和仿真方法。通过DSP课程设计,加强学生的实际动手能力、分析问题与解决问题能力, 培养学生创新意识,为毕业后从事DSP系统设计方面的工作打下坚实的实践基础。
二、课程教学的基本要求:
作为电子信息工程、通信工程专业本科生的必修实践环节,DSP课程设计要求学生有较扎实的理论基础。进入课程设计前要认真复习数字信号处理和DSP原理与应用课程中的相关部分。课程设计采用课堂讲述、自学、分组实践相结合的方式,通过分析典型的例子,使学生熟悉并掌握DSP的开发流程和基本的编程方法。课程设计要求2—3人组成课设小组,在指定范围内选定题目,每组选一题,题目应侧重一个DSP芯片的具体应用方面。题目选定后,在教师的指导下,学生理解设计原理,分析重要电路单元,计算必要的参数并在此基础上编写程序,最后,在课程设计结束时独立写出理论分析完善、文理通顺、字迹工整的课程设计报告并上交软件程序。教师可根据作品的难易程度、参数指标、编程水平等进行评分。
三、课程内容及教学要求:
学生可从下列题目中任选一个作为DSP课程设计题目。
(一)C54x串口通信及A/D、D/A接口
教学要求:本题目要求学生了解AD50芯片的工作原理,理解C54x串口的工作过程,重点掌握多通道缓冲串口(McBSP)的使用,并在教师的指导下编写程序,实现C54x与AD50之间的数据传输。
重点:1.McBSP的初始化
2.C54x与AD50的硬件接口电路
3.通过McBSP实现DSP芯片与AD50之间的数据交换 难点:程序的编写与调试
(二)设计FIR数字滤波器
教学要求:复习FIR数字滤波器的设计方法,根据题目给出的技术指标,选择合适的窗函数及阶数,进一步得到系数表,实现满足一定技术指标的低通数字滤波器。
重点:1.FIR数字滤波器的设计原理 2.编程实现数字滤波器 难点:窗函数的选择与阶数的确定
(三)设计IIR数字滤波器
教学要求:复习IIR数字滤波器的设计原理,以巴特沃斯模拟滤波器为基础,通过双线性变换法设计IIR数字滤波器,课题要求学生根据给出的技术指标确定巴特沃斯滤波器阶数,求出3dB截止频率,进一步得到数字滤波器极点和零点,并在教师指导下编写程序,完成数字滤波功能。
重点:1.IIR滤波器的设计原理 2.计算滤波器相关参数 3.编程实现IIR滤波器
难点:对设计原理的理解,程序的设计与调试
(四)快速傅立叶变换的DSP实现
教学要求:复习FFT原理,深刻理解C54x辅助寄存器的使用及位倒序寻址等技巧,在教师指导下编程实现数字信号的快速傅立叶变换。
重点:1.快速傅立叶变换原理 2.C54x的位倒序寻址方式 难点:多级蝶形运算的实现
(五)正弦波信号发生器
教学要求:本题目要求学生复习正弦函数和余弦函数的泰勒级数展开式,掌握C54x系列DSP芯片的编程方法,在教师的指导下用C54x芯片产生频率、相位、幅值可变的正弦波。
重点:1.产生正弦波的算法 2.汇编语言程序的具体实现 难点:正弦波的具体编程实现
四、考核方式
1.课程设计报告占50% 2.设计程序的实际工作情况、难易程度和技术指标等,占总成绩的50%
五、课程的主要参考书
1、《DSP原理及应用》,电子工业出版社,邹彦,第1版,2006;
2、《DSP集成开发与应用实例》,电子工业出版社,张雄伟,第1版,2002;
制定人: 何静
审定:
批准:
2006年12月
第三篇:单片机原理及应用课程设计教学大纲
《单片机原理及应用》课程设计教学大纲
课程编号:13033070 课程类别:必修课
适用专业:电气信息类
学时:10 教研室主任:姜志成大纲执笔人:李春华
大纲审批人:付家才
一、课程设计的性质及目的
1.了解并掌握单片机的原理、结构、指令、接口及应用。
2.提高综合运用所学的理论知识独立分析和解决问题的能力。3.掌握汇编语言程序设计和调试。4.掌握C-51语言的设计和调试。
二、课程设计的要求
1. 根据设计要求,画出硬件接线图及程序的总体流程图,然后进行各控制模块的硬件设计及软件设计。
2.掌握如何应用单片机仿真器来开发应用系统及仿真调试的过程。
三、参考题目
题目一 校园作息时间控制系统
设计要求:
1.作息时间要求实现对上下课打铃、教学楼照明、学生宿舍灯、校园路灯四个开关量的精确控制。月时间累计误差≤1分钟。
2.能实时显示时间,并方便定期进行时间校准。
3.根据应用系统的要求,初步掌握总体结构设计的方法和构思,从中选择一种最佳设计方案。
4.根据应用系统结构规模的要求,掌握单片机外部扩充系统硬件设计的基本过程。
题目二 交通信号灯控制系统
设计要求:
1.设有一个南北(SN)向和东西(WE)向的十字路口,两方向各有两组相同交通控制信号灯,每组各有四盏信号灯,分别为直行信号灯(S)、左拐信号灯(L)、红灯(R)和黄灯(Y),交通控制信号灯布置如图1所示。
2.根据交通流量不同,交通信号灯的控制可实现手动、自动两种控制。平时使用自动控制,高峰区可使用手动控制。手动控制时,用户通过键盘对交通信号灯进行人工控制;自动控制时,交通信号灯控制规律用图2状态转换图来描述。
图1十字路口交通控制信号灯示意图
图2交通控制信号灯控制规律示意图
题目三 环境温度监测系统
设计要求:
1.可以监测8点环境温度信号,可以扩充;
2.测量范围为0.00℃~99.9℃,可以扩充到-55℃~+125℃,精度为±0.5℃; 3.用4位数码管进行循环显示,其中最高位显示通道提示符A~H,低3位显示实际温度值,每秒切换一个通道进行轮流显示;
4.可以随时查看指定通道的温度值(扩充功能)。
四、教学参考文件与教学形式
教学参考文件: 〔1〕付家才,《单片机控制工程实践技术》,化学工业出版社,2003年 〔2〕胡汉才,《单片机原理及接口设计》,清华大学出版社,2002年 〔3〕康华光,《模拟电子技术》,高等教育出版社,2004年 教学形式:根据课程设计大纲的要求,采取指导的形式。
五、考核方式及成绩评定标准
考核方式采取设计报告与实际操作,根据设计的情况和实际操作效果给出成绩,其中设计报告占60%,日常管理(包括迟到、旷课、卫生等)占10%,实际操作占30%。成绩采用优、良、中、及格和不及格五级分制评定。
六、其他必要的说明
课程设计教师可根据专业特点选做相应题目。
第四篇:DSP技术课程设计教学大纲
《DSP技术与应用》课程设计教学大纲
适用专业:电子信息工程/通信工程 学 时: 2 周
编写人:刘伟春 审定人:余建坤 何海浪
一、本课程设计的性质、目的、任务
本课程设计是为电子信息工程专业高年级本科生开设的课程设计课,其目的为通过对课程设计任务的完成,使学生理解课程教学的理论内容,并且能够掌握和熟悉DSP的开发流程和基本的编程方法,开拓学生在现代控制技术上的视野,进一步提高学生硬件设计水平和工程实践能力,同时,由于设计中涉及到各种器件的使用,可以提高学生综合运用各种技术和知识的能力,为今后从事工程实践活动培养严谨的工作作风以及创新的思维和能力。
二、本课程设计的基本理论(基础理论和基本方法)
本课程设计的基本理论包括三部分。一是数字信号处理的基本理论,包括信号处理系统的概念、离散时间信号处理系统的基本分析方法、连续时间系统的离散化处理等等;二是DSP器件的基本理论,包括器件的结构(总线、CPU、寄存器、存储器等)和工作原理,器件中片内外部设备(定时器、计数器、串行I/O接口、直接内存存取DMA等)的工作原理;三是DSP仿真开发技术基本理论,包括DSP系统设计方法,系统指标分配,器件选择的原则以及DSP系统的抗干扰设计。
三、程序与要求
课题由指导教师给定,也可由学生根据自己感兴趣的方向选择适合自己的课题,然后在教师的指导下完成设计,题目较大时,可以以组为单位实施。教师在课内外给予及时指导和答疑。基本要求:
1.掌握以实现系统要求为目标的自上而下的DSP系统设计方法,并掌握系统指标分配,器件选择的原则以及DSP系统的抗干扰设计。
2.掌握DSP仿真开发系统的结构。掌握仿真器的连接和安装,熟悉开发软件Code Composer Studio的界面和基本操作。
3.掌握TMS320C54x芯片的硬件结构,了解CPU、寄存器和存储器中各数据的含义。了解TMS320C54x芯片外部设备的工作原理,熟悉数据的处理过程和中断。了解TMS320C54x芯片的指令系统,熟悉各种指令和基本算法。
4.独立完成DSP系统的软硬件设计,程序的编写和调试。课程设计报告应包括方案选择分析、重要单元电路分析、重要参数计算、基本测试数据等。
四、主要内容提要
1.方案论证(方案比较)与总体设计; 2.单元电路的设计; 3.电子元器件的选择;
4.根据性价比和预设指标,合理选择参数进行计算; 5.程序设计,包括程序流程图与源代码的实现 6.仿真与结果分析。
五、考核方式与评分标准
1.平时表现,占10%;
2.论文排版规范,有摘要、关键词、参考文献,占20%; 3.设计报告方案合理,系统软硬件设计正确,占70%。
六、配套指导教材
[1]戴明桢等编著.TMS320C54X DSP 结构原理及应用.北京:航空航天大学出版社,第2版,2007;
[2]彭启琮编著.DSP技术的发展与应用.北京:高等教育出版社,2002;
[3]胡广书编著.数字信号处理理论、算法与实现.北京:清华大学出版社,2005; [4]北京合众达电子技术有限公司编著.SEED-DTK系列实验手册.北京合众达电子技术有限公司出版,2007。
第五篇:DSP原理及应用复习总结
DSP芯片的主要结构特点:哈佛结构、专用的硬件乘法器、流水线操作、特殊的DSP指令、快速的指令周期。
中央处理器的体系架构分为:冯·诺依曼结构和哈佛结构 冯·诺依曼结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。
哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。可以减轻程序运行时的访存瓶颈。
基础特性分类:静态DSP芯片、一致性的DSP芯片。数据格式分类:定点DSP芯片、浮点DSP芯片。用途分类:通用型DSP芯片、专用型DSP芯片。处理数据位数分类:16/32位 TMS320F2812芯片封装方式两类:179引脚的GHH球形网格阵列BGA封装、176引脚的LQFP封装。
DSP内部总线分为:地址总线和数据总线。注意:DSP外部总线:即DSP芯片与外扩存储器的总线接口,包括19根地址线和16根数据线。
时序寄存器XTIMINGx主要用于设置读写时序参数;配置寄存器XINTCNF2主要完成选择是种,设置输入引脚状态及写缓冲器深度;控制寄存器XBANK用于设置可增加周期的特定区,以及设置增加的周期数。
命令文件CMD是DSP运行程序必不可少的文件,用于指定DSP存储器分配。由两个伪指令构成,即MEMORY(定义目标存储器的配置)和SECTIONS(规定程序中各个段及其在存储器中的位置)。
28X系列DSP时钟和系统控制电路包括:振荡器、锁相环、看门狗和工作模式选择等
锁相环和振荡器的作用是为DSP芯片中的CPU及相关外设提供可编程的时钟芯片内部的外设分为告诉我社和低速外设,可以设置不同的工作频率看门狗模块用于监控程序的运行状态,它是提高系统可靠性的重要环节。
28xDSP片上晶振电路模块允许采用内部振荡器或外部时钟源为CPU内核提供时钟
DSP处理器内核有16根中断线,包括和NMI两个不可屏蔽中断和INT1至INT14等14个可屏蔽中断(均为低电平有效)。PIE中断系统共分12组,每组有8个中断复用1个CPU中断。采用三级中断机制:外设级、PIE级、CPU级
PIE中断工作原理:当某外设产生中断,IF被置1,IE也被置1,发送到PIE控制器,中断标志PIEIFRx.v被置1,中断请求发送到CPU,CPU级IFR中对应INTx被置1,IER和INTM被使能,CPU响应中断请求。
CPU定时器用户只能用T0,通用定时器是EV中的都可以用;CPU定时器只有周期中断,而EV中的通用定时器可以有上溢中断、下溢中断、周期中断、比较中断四种。
功能控制寄存器:GPxMUX、GPxDIT、GPxQUAL。
数据寄存器:GPxSET寄存器设置每个引脚为高电平;GPxCLEAR清除每个引脚信号;GPxTOGGLE反转触发每个引脚信号;GPxDAT读写每个引脚信号
事件管理器包括:通用定时器、圈比较PWM单元、捕获单元以及正交编码脉冲电路QEP 全比较PWM单元产生脉宽调制信号可以控制直流电机或步进电机的转速;捕获单元对光电编码器的输出信号进行测量可以计算电机的转速;正交编码脉冲电路根据增量编码器信号计算电机的旋转方向等信息。
通用定时器的寄存器:控制寄存器(决定通用定时器的操作模式,例如选择计数模式、时钟、预分频系数、比较寄存器的重装载条件)、全局控制寄存器(规定了通用定时器针对不同时间采取的动作、读取计数方向、定义ADC的启动信号)、比较寄存器(与通用定时器的计数值不断比较,匹配时,相应引脚跳变,请求中断)和周期寄存器(决定定时器的计数周期)是双缓冲的
通用定时器的中断:上溢中断、下溢中断、比较匹配、周期匹配
每个通用定时器都支持4种计数模式:停止/保持模式、连续递增计数模式、定向递增/递减计数模式和连续递增/递减计数模式。
EV模块各有3个全比较器,每个比较器对应两路PWM输出
每个比较单元包括3个比较寄存器CMPRX,各带一个映像寄存器;1个比较控制寄存器;1个动作控制寄存器;6路带三态输出的PWM引脚以及控制和中断逻辑。
较单元的输入包括来自控制寄存器的控制信号,通用定时器1的时钟信号及下溢信号、周期匹配信号和复位信号。比较单元输出信号是一个比较匹配信号,如果比较操作被使能的话,比价匹配信号将中断标志置位,并在对应的PWM引脚上产生跳变。比较单元的工作过程:通用定时器1的计数值不断地与比较寄存器的值进行比较,当发生匹配时,该比较单元的两个输出引脚发生跳变;ACTRA寄存器定义在发生比较匹配时每个输出引脚为高有效电平或低有效电平。
PWM单元对称/不对称波形发生器、可编程死区单元DBU、PWM输出逻辑和空间向量SVPWM状态机组成。ADC模块的特点:12位模数转换内核,内置双采样/保持器;顺序采样模式或并行采样模式;模拟输入电压范围0-3v;快速的转换时间,最高采样率12.5MSPS;16通道模拟信号输入; 并行采样:AdcRegs.ADCTRL3.bit.SMODE_SEL=1;顺序采样为0 双排序AdcTegs.ADCTRL1.bit.SEQ_CASC=0;级联排序为1 AdcRegs.ADCMAXCONV.all=0x0033并双;7并级;77顺双;F顺级 AdcRegs.ADCCHSELSEQ1.bit.CONV00=0x0 ADC工作模式:连续模式和启动/停止模式。ADC电源:上电、掉电、关闭模式。
上电顺序:给参考电源上电、给adc内部参考电源电路供电、adc模块完全供电后,等20μs才能执行第一次模数转换。
28x DSP的输入信号电压不能高于3.3V,模拟信号需经过调理后进入DSP的AD转换输入端口,未使用的模数转换器输入引脚,都要连接模拟地,否则会带来噪声信号
电源管理电路设计:多电源正确连接;不允许有电源引脚悬空;减少噪音和互相干扰,数电和模电单独供电,接地也分开,最终通过一个磁珠在单点连接
DSP编程语言特点:c语言:具有良好可读性和可移植性,开发率高;汇编语言:高的运行效率,常用语时间要求比较苛刻的地方,比如终端服务子程序。
头文件的作用:是c语言不可缺少的部分,是用户程序和函数库之间的纽带;头文件使用:用户程序只要按照头文件中的接口声明来调用库功能,编译器就会从库中提取相应的代码 C语言程序框架包含有寄存器结构定义文件、外设头文件、器件的宏与类型定义等,通过使用头外设文件,可以容易控制片内外设。
DSP程序包括:头文件包含、函数声明、宏定义、主函数main()和中断服务子程序
主函数的编程步骤:1初始换系统控制2清除所有中断并初始化PIE向量表3初始化所有用到的外设4开中断5编写用户代码 #include “DSP281x_Device.h”
#include “DSP281x_Examples.h”
interrupt void cpu_timer0_isr(void); void main(void)// {
InitSysCtrl(); DINT;
InitPieCtrl();
IER = 0x0000;
IFR = 0x0000;
InitPieVectTable(); EALLOW;
PieVectTable.TINT0 = &cpu_timer0_isr;
EDIS;InitGpio();InitCpuTimers();
ConfigCpuTimer(&CpuTimer0,100,1000000);
StartCpuTimer0();IER |= M_INT1;
PieCtrlRegs.PIEIER1.bit.INTx7 = 1;
EINT;
ERTM; …… }
interrupt void cpu_timer0_isr(void)
{
CpuTimer0.InterruptCount++;
PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;
}