基于DSP的流水灯系统设计说明.docx

上传人:b****8 文档编号:10297089 上传时间:2023-02-09 格式:DOCX 页数:24 大小:259.85KB
下载 相关 举报
基于DSP的流水灯系统设计说明.docx_第1页
第1页 / 共24页
基于DSP的流水灯系统设计说明.docx_第2页
第2页 / 共24页
基于DSP的流水灯系统设计说明.docx_第3页
第3页 / 共24页
基于DSP的流水灯系统设计说明.docx_第4页
第4页 / 共24页
基于DSP的流水灯系统设计说明.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

基于DSP的流水灯系统设计说明.docx

《基于DSP的流水灯系统设计说明.docx》由会员分享,可在线阅读,更多相关《基于DSP的流水灯系统设计说明.docx(24页珍藏版)》请在冰豆网上搜索。

基于DSP的流水灯系统设计说明.docx

基于DSP的流水灯系统设计说明

 

课程设计说明书

 

题目:

基于DSP的流水灯系统设计

 

学院:

专业班级:

学号:

学生:

指导教师:

2017年1月13日

理工大学课程设计(论文)任务书

电气与信息工程学院

学号

学生

专业(班级)

题目

基于DSP的流水灯系统设计

设计

技术

参数

1.使用TMS320VC5416作为CPU;

2.具有简单的键盘输入可控制功能;

3.具有存放程序的外部FLASH芯片;

4.外部输入电压+5V电源;

5.设计JTAG接口方便测试以及调试;

6.设计8为数码管显示电路,实现8个流水灯正向反向依次闪烁,时间间隔为0.5s

设计

要求

1.画出最小DSP系统电路图以及控制电路图(电源、存储、JTAG、复位等),使用Protell或者Visio画出硬件设计电路图或者框图;

2.给出系统设计软件流程图以及程序;

3.掌握运用CCS软件实现软件调试以及烧写。

注:

可填写说明书(论文)的字数要求或要完成的图纸数量。

1.不少于3000字;

2.页数不少于8页;

3.给出所有电路图结构图。

工作

计划

1.选择DSP芯片;

2.硬件设计与调试;

3.软件编程与调试;

4.系统集成;

5.系统调试与性能测试;

参考

资料

1.红怡.DSP技术与应用实例.电子工业,2003.6.

2.雄伟.DSP集成开发与应用实例.电子工业,2002.6

3.雄伟.DSP芯片原理的开发与应用.电子工业,2000.2

4.戴逸民.基于DSP的现代电子系统设计.电子工业,2002.12

5.钮心忻,义先.软件无线电技术与应用.邮电,2000.9

6.小牛,楼义才,徐建良.软件无线电原理与应用.电子工业,2001.1

7.红,吴冠.TMS320C54xDSP应用系统设计.航空航天大学,2002.5

指导教师签字

系主任签字

理工大学课程设计成绩评定表

学生:

学号:

专业班级:

课程设计题目:

基于DSP的流水灯系统设计

指导教师评语:

 

 

成绩:

指导教师:

年月日

摘要1

第一章TMS320VC5416芯片2

1.1TMS320VC5416芯片特点2

1.中央处理单元2

2.存储器3

3.数据寻址3

4.程序存储器寻址3

5.中断3

6.流水线3

7.运算速度3

8.低功耗方式4

9.片上的外设4

10.JTAG扫描逻辑电路4

1.2TMS320VC5416的指令集4

1.算术指令4

2.逻辑指令5

3.程序控制指令5

4.读取和存储指令5

第二章硬件设计6

2.1整体框图6

2.2电源电路6

2.3存储电路7

2.4时钟电路7

2.5复位电路8

2.6JTAG电路8

2.7键盘电路9

2.8显示模块9

第三章软件设计10

1.1设计流程10

1.2软件设计步骤10

3.2.1进入CCS10

3.2.2新建一个项目10

3.2.3新建一个源文件11

3.2.4在项目中添加源文件11

3.2.5程序代码11

1.初始化程序11

2.主函数程序:

12

3.向量文件13

4.MEMORY程序15

3.2.6对项目进行编译和15

3.2.7装载可执行文件16

3.2.8运行程序并查看结果:

16

设计心得及体会17

 

摘要

 

DSP(DigitalSignalProcessing)也就是我们常说的数字信号处理,它是利用计算机或专用处理设备,以数字形式对信号进行采集,变换,滤波,估值,增强,压缩,识别等处理,以得到符合人们需要的信号形式。

DSP的主要应用有数字化移动,数据调制解调器,磁盘/光盘控制器需求,图形图像处理需求,汽车电子系统等。

DSP在航空航天方面,主要用于雷达和声纳信号处理;在通信方面,主要用于移动,IP,ADSL和HFC的信号传输;在控制方面,主要用于电机控制,光驱和因公安驱动器;在电子娱乐方面,主要用于高清晰电视,机顶盒,家庭影院,DVD等应用;还有数字相机,网络相机等等。

可以说没有DSP就没有对互联网的访问,也没有多媒体,也没有无线通信。

随着科学技术的发展,将会出现更多的DSP新应用领域。

本设计使用TMS320VC5416作为CPU,进行基于DSP的流水灯系统设计,要求:

1.具有简单的键盘输入可控制功能;

2.具有存放程序的外部FLASH芯片;

3.外部输入电压+5V电源;

4.设计JTAG接口方便测试以及调试;

5.设计8为数码管显示电路,实现8个流水灯正向反向依次闪烁,时间间隔为0.5s

关键词:

DSP;TMS320VC5416;流水灯;最小系统;JTAG接口

第一章TMS320VC5416芯片

1.1TMS320VC5416芯片特点

本设计用到的芯片是IT公司的TMS320VC5416,其引脚封装图如下所示:

TMS320VC5416是为实现低功耗,高性能而专门设计的定点DSP芯片,它主要应用于无线系统中。

TMS320VC5416基本特点:

1.中央处理单元

先进的多总线结构,有一条程序总线(PB),三条数据总线(CB,DB和EB)和四条地址总线(PAB,CAB,DAB和EAB);1个40位的算术逻辑单元(ALU),1个40位的桶形移位器和2个独立的40位累加器A和B;1个17x17的乘法器和两个40位加法器,乘法器可以耦合到加法器以完成单周期的MAC指令;部集成了维特比加速器以及与它相关的比较,选择和存储单元(CSSU);指数编码器用来在单周期计算40位累加器值的指数;2个地址产生器,其中包括8个辅助寄存器和2个辅助寄存器运算单元。

2.存储器

192Kx16-bit可寻址存储空间,其中包括64K字程序空间,64K字数据空间和64K字I/O空间,对于548,549,5402和5410还可以外部扩展程序空间

3.数据寻址

5416提供了7种数据寻址方式:

立即数寻址;绝对寻址;累加器寻址;直接寻址;间接寻址;存储器映射寄存器寻址;堆栈寻址;

4.程序存储器寻址

使用程序计数器(PC)寻址,但是,对于一些指令需要用到绝对寻址。

5.中断

5416支持软件中断(如INTR,TRAP,RESET)和硬件中断,中断可分为可屏蔽中断(如TINT,INT0等)和不可屏蔽中断(如RESET和NMI),其中RESET的优先级最高,不可屏蔽中断的优先级高于可屏蔽中断的优先级,硬件中断的优先级则高于软件中断的优先级。

6.流水线

5416有6级流水线:

预取指,取指,解码,访问,读取和执行。

7.运算速度

指令周期为25/20/15/12.5/10ns,运算能力为40/50/66/80/100MIPS(百万条指令/秒)。

8.低功耗方式

TMS320VC5416可以在3.3V或2.7V电压下工作,三个低功耗方式(IDLE1,IDLE2和IDLE3)可以节省DSP的功耗,所以它特别适合于无线移动设备。

9.片上的外设

可软件编程的等待状态发生器,使得与速度较慢的设备通讯更加方便;片上的锁相环时钟发生器可以对外部始终信号进行倍频或分频,从而得到自己所需要的时钟频率,当分频时还可节省系统的功耗;可以禁止对外部数据总线,地址总线以及控制信号的控制;可以软件编程的定时器;

10.JTAG扫描逻辑电路

符合国际IEEE1149.1标准的边界扫描逻辑接口,即JTAG扫描逻辑电路,用于仿真和测试,可以实现在线仿真。

1.2TMS320VC5416的指令集

5416的指令可以分为四个大类:

算术指令,逻辑指令,程序控制指令,读取和存储指令

1.算术指令

包括了加法指令(ADD...),减法指令(SUB...),乘法指令(MPY...),乘加指令(MAC...)和乘减指令(MAS...),32位操作数指令(DADD,DSUB...)和一些专用指令(ABDST,FIRS,SQDST...)。

其部分指令都只需要一个指令周期,只有个别指令需要2-3个指令周期。

2.逻辑指令

包括了与指令(AND...),或指令(OR...),异或指令(XOR...),移位指令(ROL...)和测试指令(BITF...)。

根据操作数的不同,这些指令需要1-2个指令周期。

3.程序控制指令

包括了转移指令(B,BC...),调用指令(CALL...),中断指令(INTR,TRAP),返回指令(RET...),重复指令(RPT...),堆栈操作指令(FRAME,POPD...)和其它程序控制指令(IDLE,NOP...)。

这些指令根据情况不同分别需要1-6个指令周期。

4.读取和存储指令

包括了读取指令(LD...),存储指令(ST...),条件存储指令(CMPS,SACCD...),并行的读取和乘法指令(LD||MAC...),并行的读取和存储指令(ST||LD...),并行的存储和乘法指令(ST||MAC...),并行的读取和加减指令(LD||ADD,LD||SUB)以及其它读取类型和存储类型指令(MVDD,PORTW,READA...)。

这些指令根据情况不同分别需要1-5个指令周期。

 

第二章硬件设计

2.1整体框图

2.2电源电路

2.3存储电路

2.4时钟电路

 

2.5复位电路

2.6JTAG电路

 

2.7键盘电路

2.8显示模块

 

第三章软件设计

1.1设计流程

1.2软件设计步骤

3.2.1进入CCS

用仿真机将计算机与ZY13DSP12BD实验箱连接好,并依次打开实验箱电源、仿真机电源,然后运行CCS软件。

3.2.2新建一个项目

点击Project-New,并将项目保存在自己定义的文件夹下,注意文件夹一定要用英文名,不要将文件夹取名为中文名,因为CCS软件不能识别以中文命名的文件夹。

3.2.3新建一个源文件

点击File-New-SourceFile可以打开一个文本编辑窗口,点击保存按键,保存在和项目相同的一个文件夹下面(main),保存类型选择*.ASM(如果源文件是C语言编写的,保存类型选择*.C,本实验中的例程是使用汇编语言编写的,所以选择*.ASM为保存类型)。

3.2.4在项目中添加源文件

在新建立了一个源文件以后,要想使用CCS编译器对该源文件进行编译还需要将源文件添加到项目中去。

添加方法是在工程管理器中右键单击LED.pjt,在弹出的菜单中选择AddFiles,然后将刚才建立的main.asm文件添加到该项目中去。

3.2.5程序代码

输入以下程序代码:

1.初始化程序

.mmregs

.includec54.inc

.defc54init

.sect"progsys"

c54init:

STM#0x7208,SWWSR;0111001000001000

STM#0,SWCR

STM#0xF800,BSCR;1111100000000000

STM#0,ST0

STM#0x2b00,ST1;0010101100000000

STM#0x2fe4,PMST;0010111111100100

STM#0xFFFF,IFR

STM#0x0000,IMR;关闭所有中断

STM#0,CLKMD

clkcon:

LDMCLKMD,A

AND#0x01,A

BCclkcon,ANEQ

STM#0x43ff,CLKMD;0100001111111111

STM#0x0010,TCR1;timer1stop

STM#0x0010,TCR;TSS=1Timerstop

STM#12800,PRD

STM#0x0020,TCR

RSBXINTM

NOP

NOP

RET

.end

2.主函数程序:

.mmregs

.ref_c_int00

.includec54.inc

.refc54init

;数码管地址

Digital0.set0x0010

Digital1.set0x0011

Digital2.set0x0012

Digital3.set0x0013

Digital4.set0x0014

Digital5.set0x0015

Digital6.set0x0016

Digital7.set0x0017

.data

DATA:

.word80FCH,8060H,80DAh,80F2h,8066H,80B6H,80BEH,80E0H;测试数据

.sect"progsys"

.align0x10

_c_int00:

STM#0x0f80,SP

CALLc54init

LD#DATA,DP

LOOP:

STM#DATA+7,AR1

PORTW*AR1-,Digital7

CALLDelay

PORTW*AR1-,Digital6

CALLDelay

PORTW*AR1-,Digital5

CALLDelay

PORTW*AR1-,Digital4

CALLDelay

PORTW*AR1-,Digital3

CALLDelay

PORTW*AR1-,Digital2

CALLDelay

PORTW*AR1-,Digital1

CALLDelay

PORTW*AR1-,Digital0

CALLDelay

BLOOP

Delay:

STM#999,AR3;循环次数1000

LOOP1:

STM#999,AR2;循环次数1000

LOOP2:

BANZLOOP2,*AR2-;如果AR2不等于0,AR2减1,再判断

BANZLOOP1,*AR3-;如果AR1不等于0,AR1减1,跳转到LOOP1

RET

.end

3.向量文件

****************************vectors.asm****************

*PlugintheentrypointatRESETintheinterruptvectortable

*

*

.includec54.inc

.sect".vectors"

.ref_c_int00

;mainprogrom

;.reftimer0,hpisys,usb_read

.align0x80;mustbealignedonpageboundary

RESET:

;resetvector

B_c_int00;branchtomainprogrom

NOP

NOP

nmi:

RETE;enableinterruptsandreturnfromone

NOP

NOP

NOP;NMI~

;softwareinterrupts

sint17.space4*16

sint18.space4*16

sint19.space4*16

sint20.space4*16

sint21.space4*16

sint22.space4*16

sint23.space4*16

sint24.space4*16

sint25.space4*16

sint26.space4*16

sint27.space4*16

sint28.space4*16

sint29.space4*16

sint30.space4*16

int0:

RETE

NOP

NOP

NOP

int1:

RETE

NOP

NOP

NOP

int2:

RETE

NOP

NOP

NOP

tint:

RETE

NOP

NOP

NOP

rint0:

RETE

NOP

NOP

NOP

xint0:

RETE

NOP

NOP

NOP

DMAC0:

RETE

NOP

NOP

NOP

DMAC1:

RETE;tint1

NOP

NOP

NOP

int3:

RETE

NOP

NOP

NOP

HPINT:

RETE

NOP

NOP

NOP

DMAC2:

RETE;rint1

NOP

NOP

NOP

NOP

xint1:

RETE

NOP

NOP

NOP

DMAC4:

RETE

NOP

NOP

NOP

DMAC5:

RETE

NOP

NOP

NOP

.end

4.MEMORY程序

-msensor.map

MEMORY

{

PAGE0:

PROG:

origin=0x2000,len=0x0f80/*8k-128word*/

VECT:

origin=0x2f80,len=0x80/*128word*/

PAGE1:

DRAM:

origin=0x3000,len=0xf80/*4kword*/

}

SECTIONS

{

.progsys:

load=PROGPAGE0

.vectors:

load=VECTPAGE0

.data:

load=DRAMPAGE1align16

}

3.2.6对项目进行编译和

点击Project-CompileFile,在项目编译成功之后点击Project-Build选项对该项目进行,生成*.out文件。

3.2.7装载可执行文件

要让程序代码在DSP部运行必需将生成的*.OUT文件装载到DSP部,装载方法是点击:

File-LoadPrograme再选择生成的LED.out文件就可以将程序装载到DSP的部存储器中。

3.2.8运行程序并查看结果:

点击Debug-Run让程序在DSP部运行。

结果如下图:

 

设计心得及体会

为期两周的DSP课程设计结束了,在这次课程设计过程中,我学会了很多课本以外的东西,获得了许多难能可贵的经验。

通过这次的课程设计,提高自己动手能力的同时也学到了很多有关方面的知识,对DSP有了更深入的理解,巩固了以前学到的知识,是自己更加充实。

通过调试以上程序运行无误,完成了流水灯要求,使用DSP芯片设计流水灯;使用数码管显示;利用程序延时,接口转换实现流水灯。

通过本次课程设计实现了用DSP芯片设计流水灯,学习到了很多关于DSP的基础知识。

并且更加深刻的巩固了课堂上所学的课本知识,DSP技术有了更进一步的认识和了解。

掌握了DSP的基本实验方法,提高了工程设计和组织实验能力。

通过这次课程设计,我学会了原理图的绘制,元件的生成与调用,学会了流程图的绘制,这些技术的掌握对以后的工作、学习都有很大的帮助。

在这次课程设计中,通过自己查找相关资料,遇到问题积极解决,与同学积极讨论,最终完成了课程设计,我也体会到了成功的喜悦。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1