流水灯的实现的课程设计--基于DSP2407的流水灯的实现_第1页
流水灯的实现的课程设计--基于DSP2407的流水灯的实现_第2页
流水灯的实现的课程设计--基于DSP2407的流水灯的实现_第3页
流水灯的实现的课程设计--基于DSP2407的流水灯的实现_第4页
流水灯的实现的课程设计--基于DSP2407的流水灯的实现_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、目 录一.概述11.1 dsp介绍11.2 dsp芯片的应用1二dsp240732.1 dsp2407简介32.2 dsp2407事件管理器模块42.2.1事件管理器的引脚说明42.2.2 ev中断42.2.3定时器52.2.4比较单元5三、基本理论53.1数字i/o端口53.2数字i/o端口寄存器6四、硬件电路说明84.1供电电路84.2复位电路84.3时钟电路94.4 led和按键电路94.5dsp引脚扩展接口94.6 sci串口通讯电路104.7 can通讯接口电路114.8 数码管控制电路114.9 ad电路114.10 步进电机接口124.11 da电路134.12pwm电机控制电路

2、13五、流水灯程序设计要求14六、实验程序14七、实验结果17八、总结18九、参考文献19基于dsp2407的流水灯的实现一.概述1.1 dsp介绍数字信号处理(digital signal processing,简称dsp)是一门涉及许多学科而又广泛应用于许多领域的新兴学科。20世纪60年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得到迅速的发展。数字信号处理是一种通过使用数学技巧执行转换或提取信息,来处理现实信号的方法,这些信号由数字序列表示。在过去的二十多年时间里,数字信号处理已经在通信等领域得到极为广泛的应用。德州仪器、freescale等半导体厂商在这一领域拥有

3、很强的实力。 dsp (digital signal processor)是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或l的数字信号。再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。根据数字信号处理的要求,dsp芯片一般具有如下的一些主要特点:在一个指令周期内可完成一次乘法和一次加法。 程序和数据空间分开,可以同时访问指

4、令和数据。 片内具有快速ram,通常可通过独立的数据总线在两块中同时访问。 具有低开销或无开销循环及跳转的硬件支持。 快速的中断处理和硬件i/o支持。 具有在单周期内操作的多个硬件地址产生器。 可以并行执行多个操作。 支持流水线操作,使取指、译码和执行等操作可以重叠执行。 与通用微处理器相比,dsp芯片的其他通用功能相对较弱些。 1.2 dsp芯片的应用数字信号处理(dsp)芯片是一种特别适合于进行数字信号处理运算的微处理器可实时快速地实现各种数字信号处理算法。自20世纪80年代初诞生以来已广泛应用于通信、电子、航空航天、军事及家电产品成为一种十分重要的电子产品的核心部件。dsp芯片得到了飞速

5、的发展。dsp芯片的高速发展,一方面得益于集成电路技术的发展,另一方面也得益于巨大的市场。在近20年时间里,dsp芯片已经在信号处理、通信、雷达等许多领域得到广泛的应用。目前,dsp芯片的价格越来越低,性能价格比日益提高,具有巨大的应用潜力。dsp芯片的应用主要有:(1) 信号处理如数字滤波、自适应滤波、快速傅立叶变换、相关运算、谱分析、卷积、模式匹配、加窗、波形产生等;(2) 通信如调制解调器、自适应均衡、数据加密、数据压缩、回波抵消、多路复用、传真、扩频通信、纠错编码、可视电话等;(3) 语音如语音编码、语音合成、语音识别、语音增强、说话人辨认、说话人确认、语音邮件、语音存储等;(4) 图

6、形/图像如二维和三维图形处理、图像压缩与传输、图像增强、动画、机器人视觉等;(5) 军事如保密通信、雷达处理、声纳处理、导航、导弹制导等;(6) 仪器仪表如频谱分析、函数发生、锁相环、地震处理等;(7) 自动控制如引擎控制、声控、自动驾驶、机器人控制、磁盘控制等;(8) 医疗如助听、超声设备、诊断工具、病人监护等;(9) 家用电器如高保真音响、音乐合成、音调控制、玩具与游戏、数字电话/电视等。随着dsp芯片性能价格比的不断提高,可以预见dsp芯片将会在更多的领域内得到更为广泛的应用。数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。因此在进行数字信号处理之前需要将信号从模拟域转换到数

7、字域,这通常通过模数转换器实现。而数字信号处理的输出经常也要变换到模拟域,这是通过数模转换器实现的。数字信号处理的算法需要利用计算机或专用处理设备如dsp和专用集成电路(asic)等。数字信号处理的研究方向应该更加广泛、更加深入特别是对于谱分析的本质研究,对于非平稳和非高斯随机信号的研究,对于多维信号处理的研究等,都具有广阔前景。数字信号处理技术发展很快、应用很广、成果很多。多数科学和工程中遇到的是模拟信号。以前都是研究模拟信号处理的理论和实现。模拟信号处理缺点:难以做到高精度,受环境影响较大,可靠性差,且不灵活等。数字系统的优点:体积小、功耗低、精度高、可靠性高、灵活性大、易于大规模集成、可

8、进行二维与多维处理。随着大规模集成电路以及数字计算机的飞速发展,加之从60年代末以来数字信号处理理论和技术的成熟和完善,用数字方法来处理信号,即数字信号处理,已逐渐取代模拟信号处理。数字信号处理是利用计算机或专用处理设备,以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等处理,以得到符合人们所需要的信号形式。数字信号处理是将信号以数字方式表示并处理的理论和技术。数字信号处理与模拟信号处理是信号处理的子集。数字信号处理技术及设备具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等突出优点,这些都是模拟信号处理技术与设备所无法比拟的。数字信号处理是20世纪60年代,随着信息学科和计算

9、机学科的高速发展而迅速发展起来的一门新兴学科。它的重要性日益在各个领域的应用中表现出来。其主要标志是两项重大进展,即快速傅里叶变换(fft)算法的提出和数字滤波器设计方法的完善。数字信号处理是把信号用数字或符号表示成序列,通过计算机或通用(专用)信号处理设备,用数值计算方法进行各种处理,达到提取有用信息便于应用的目的。例如:滤波、检测、变换、增强、估计、识别、参数提取、频谱分析等。二dsp24072.1 dsp2407简介2407开发板分为ti 2000-011 dsp2407增强型、dsp2407+cpld开发板、shx-dsp2407a开发板。引dsp2407+cpld开发板套件是一套基t

10、ms320lf2407a+epm240的dsp+cpld的学习开发平台,充分发挥dsp2407和altera max ii的灵活性和功能强大,用户手册详实易懂,大量源码轻松上手(分dsp和cpld两部分),我们为用户提供一个完整的ip核通过cpld进行系统资源分配,用户可以根据需要进行裁剪或追加功能。由于我们的外设都是通过cpld连接与dsp连接进行电平转换、隔离和总线。 仲裁等先进技术,所以使用极为方便灵活、简洁、并且运行及其稳定。这种结构可以充分利用了cpld的灵活性和功能强大的ip核进行功能更强的系统应用。是初学者和从事开发的科研工作者学习2407和cpld的首选之品。 本开发板供初学者

11、学习使用,也可作为系统板嵌入到用户的产品供用户进行二次开发以便缩短产品开发周期。shx-dsp2407a开发板是dsp 2407系列产品中的重要一员。它的最大优点是直观简单明了,极为适于初学者。此棋板采用统一的系统结构、模块结构和机械结构,以多种典型dsp处理器构成的dsp基本系统、标准总线和相同物理尺寸的dsp嵌入式控制模板,将2407的功能发挥的淋漓尽致,为学习者提供了强大、有效的学习平台。用户手册详实易懂,大量源码轻松上手(分dsp和cpld两部分),我们为用户提供一个完整的ip核通过cpld进行系统资源分配,用户可以根据需要进行裁剪或追加功能。2.2 dsp2407事件管理器模块2.2

12、.1事件管理器的引脚说明2.2.2 ev中断事件管理器中断总共分三组,每组均分别配一个cpu申断(int2,3和4)。因为每组中断均有多个中断源,所以cpu中断请求通过外设中断扩展控制器(pie)模块来处理。 中断请求有以下几个响应阶段: (1) 中断源。如果外设中断发生,evxifra、evxifrb、或evxifrc(x=a或 b)相应标志位被置l。 (2) 中断使能。事件管理器中断可以分别由寄存器evximra、evximrb或 evximrc (x=a或b)来使能或禁止。 (3) pie请求。如果中断标志位和中断屏蔽位被置l,那么外设会向pie模块 发送一个外设中断请求。 (4) cp

13、u响应。cpu接收到中断后,ifr响应的位被置l,并相应中断。cpu响 应中断后,中断响应被软件控制。 (5) pie响应。pie使用中断向量更新pivr寄存器。 中断软件。中断软件有两级响应,包括gisr和sisr。2.2.3定时器每个时间管理模块有两个通用定时器(gp),每个定时器有四种可选操作模式: (1) 停止保持模式 此模式操作停止并保持其当前状态,定时器的计数器,比较输出和预定计数器多保持不变 (2) 连续递增计数模式 此模式gp将按照已定标的输入时钟计数,直到定时器计数器的值和周期存 储器的值匹配为止。 (3) 定向增减技术模式 此模式,定时器将根据tdira/b引脚的输入,对定

14、时器的时钟进行递增和递减计数。 (4) 连续增减技术模式 此模式与定向的增减模式一样,但是在本模式下,引脚tdira/b的状态对计数的方向没有影响。2.2.4比较单元三、基本理论指导实验的基本理论是dsp的数字i/o端口以及其寄存器的配置。通过对这些理论的掌握和运用,达到了解和熟悉一般dsp数字i/o的知识。3.1数字i/o端口tms320lf2407系列有多达41个通用、双向的数字i/o(gpio)引脚,其中大多数是基本功能和一般i/o复用引脚,tms320lf2407系列的大多数都可以用来实现其他功能。数字i/o端口模块采用了一种灵活的方法,以控制专用i/o和复用i/o引脚的功能,所有i/

15、o和复用引脚的功能可以通过9个16位控制寄存器来设置,这些寄存器可以分为两类:i/o口复用控制寄存器(mcrx):用来控制选择i/o引脚作为基本功能或一般i/o引脚功能。数据和方向控制寄存器(pxdatdir):当i/o引脚作为一般i/o引脚功能时,用数据和方向控制寄存器可控制数据和i/o引脚的数据方向,这些寄存器直接和i/o引脚相连。3.2数字i/o端口寄存器图1给出了tms320lf2407系列i/o端口复用引脚配置简图,从图上可以看出一些寄存器单元的配置对应于实际i/o引脚的内部结构之间的联系。图1 复用引脚配置图表1中所列的是数字i/o模块可用的寄存器单元,和其他240xa外设一样,这

16、些寄存器被存储器映射到数据空间,地址从7090h到709fh。寄存器单元中保留的位所是无效的,读时为0,写对它无影响。表1 数字数字i/o模块控制寄存器地址地址存储寄存器说明7090hmcrai/o复用控制寄存器a7092hmcrbi/o复用控制寄存器b7094hmcrci/o复用控制寄存器c7098hpadatdiri/o端口a数据和方向寄存器709ahpbdatdiri/o端口b数据和方向寄存器709chpcdatdiri/o端口c数据和方向寄存器709ehpddatairi/o端口d数据和方向寄存器7095hpedatairi/o端口e数据和方向寄存器7096hpedatdiri/o端口

17、f数据和方向寄存器下面介绍i/o口复用输出控制寄存器。下面描述了i/o口复用控制寄存器a(mcra)i/o口复用控制寄存器b(mcrb),i/o口复用控制寄存器c(mcrc),其中表2是i/o口复用控制寄存器a(mcra)的配置,对寄存器的每个位的值做了详细的描述。 l i/o口复用控制寄存器a(mcra)地址7090h注:r=可读,w=可写,_0=复位后的值表2 i/o口复用控制寄存器a(mcra)的配置四、硬件电路说明4.1供电电路2407开发板既可使用独立的5v/1a 开关电源供电,也可使用usb 线直接供电,使用方便。电路部分的1117 输出所接的100uf/16v 的电容不能省略,这

18、样更好的保证电压稳定。4.2复位电路2407开发板上使用专门的复位芯片sp708r,保证dsp 芯片可靠复位,并提供手动复位按钮,方便用户调试4.3时钟电路00ic2407 用20m 外部晶体给dsp 提供时钟,并使能2407a 片上pll 电路。由pll 控制寄存器控制,可由软件动态的修改。tms320lf2407 的cpu 最高可工作在40m 的主频下,也即是对20m 输入频率进行2 倍频。4.4 led和按键电路开发板上有4个led发光管和一个自由按键4.5dsp引脚扩展接口4.6 sci串口通讯电路dsp内置sci通讯模块,采用接口芯片是max232,可以使用一根直连串口线直接和pc通

19、讯。4.7 can通讯接口电路开发板中can总线收发器采用的是pca82c250。它将cantx和canrx转化成canh和canl在can总线上传输。4.8 数码管控制电路使用dsp的spi接口(io方式)控制数码管。4.9 ad电路dsp 内置16 通道10 位adc 。在00ic2407 板上通过运放隔离只扩展了2 通道,分别位于通道0 和通道8,dsp 能接收的adc 输入电压为03.3v,在2407 板上没有单独采用基准源。直接使用系统的3.3v 。板上所引的2 路ad 输入电压范围为03 .3v, 在输入dsp 之前,已经采用电压跟随器增加了阻抗。4.10 步进电机接口开发板上提供

20、的5v 的步进电机接口,标准6 芯,兼容市场上的5 芯接口。4.11 da电路板上外扩的da 转换器为ti 公司的tlc5620,该芯片为串行接口的4 路8 位da 转换器,2407 通过spi 口与其接口,由于tlc5620 的工作频率是1m,所有spi 的工作频率也设定在1m,由于tlc5620 的4 路da 输出已经加了跟随器,所以本开发板上没有另外加。4.12pwm电机控制电路pwm 电机控制实验针对微型直流电机。两路带死区的pwm 信号从dsp 引脚上直接产生。电机驱动采用的是4 个npn 的三极管,可控制正反转。五、流水灯程序设计要求1. 熟悉dsp2407 dsk开发板结构和使用

21、。 掌握dsp开发环境ccs的使用和一般编程技巧。掌握dsp开发板系统调试的一般步骤及方法。2. dsp2407具有42个i/o端口,这些端口可以作为输入,也可作为输出,同时dsp2407具有4个定时器分别位于eva和evb中,掌握定时器和中断的使用。六、实验程序6.1程序主要文件:(1) .vectors.asm:包含了lf2407中断向量表文件(2) .ledc:这是实验的主程序,包含了系统的初始化及对片外扩展的高32k数据 控件的操作(3) .2407cmd.cmd:声明了系统的存贮器配置与程序各段的连接关系6.2向量表程序: .ref .ref .sectrsvectint1int2i

22、nt3int4int5int66.3 源程序编辑源程序输完之后(如图1.5所示),应该用菜单命令“filesave”(文件保存)及时保存到d:tic2xxmyprojectsworksy1 asm路径及文件名下。对于较长的源程序,如果一次不能输入完毕而需要中途退出,也应该及时保存,以便在下一次能继续前次的工作。在长程序文件的输入过程中,不时地进行存储是一种好习惯,也可避免因电源意外掉电而造成前功尽弃。6.4 编译6.5源程序:nothing;直接返回的中断服务程序符号_t int0;复位向量符号.vectorsb c int0 ;pm 0复位向量 lbnothing ;pm 2 中断优先级1

23、4bnothing ;pm 4 中断优先级2 5bnothing ;pm 6 中断优先级3 6 b nothing ;pm 8 中断优先级4 7 b_nothing ;pma 中断优先级5 8bnothing ;pm c 中断优先级6 96.4man.c程序#include 2407c.h#include#define uint unsigned intunsigned char data4=0x01,0x02,0x04,0x08 ;uint index;void disable() asm( setc intm);void enable() asm( clrc intm); void ini

24、tial() asm( setcsxm);/ 抑制符号位扩展asm( clrcovm);/ 累加器中结果正常溢出asm( clrccnf);/ b0被配置为数据存储空间asm( setcintm);/ 禁止所有中断*scsr1=0x0e04;/ clkin=15m,clkout=2*clkin=30m*wdcr=0x00e8;/ 不使能看门狗,因为scsr2中的 /wdoverride/ 即wd保护位复位后的缺省值为1,故可以用软件禁止看门狗*imr=0x0002;/ int2中断*ifr=0x0ffff;/ 清除全部中断标志,写1清0*mcra=0x0000;index=0; void ti

25、merlint() *evaimra=*evaimra|0x0780; /允许定时器1周期中断 *evaifra=*evaifra&0x0780; /清除定时器1周期中断标志 *t1con=0x1602; /timer为连续增记数模式, *t1pr=0x0f00e; / *t1cmpr=0x00ff; *t1cnt=0x00; void interrupt t1int() int flag; flag=*evaifra&0x0080; /读取中断标志if(flag!=0)outport(3,dataindex); *t1cnt=0x00; *evaifra=*evaifra&0x0080; i

26、ndex+=1; if(index=4) index=0; enable(); return; void interrupt nothing() enable(); return; main() disable(); initial(); timerlint(); enable(); *t1con=*t1con|0x0040; while(1); 七、实验结果实验实现了程序控制dsp2407的中断和计数器功能,四个灯实现了从d5循环闪亮。八、总结dsp作为嵌入式处理器家族的一大类,其结构特点决定了它尤其适合做数字信号处理的应用,而学好数字信号处理对日后的信息处理的深入学习和应用有着重要意义,因而学好dsp技术也就有着深远的意义。通过此次课程设计我学习了一个实际的电子系统的完整的设计流程,掌握了pcb设计软件altium designer的使用方法,并熟悉了ccs工程的建立和

温馨提示

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

评论

0/150

提交评论