DSP Homework Set 2

合集下载

dsp作业(DOC)

dsp作业(DOC)

TMS320C62xx一、DSP简介自1982年推出第一款DSP后,德州仪器公司(Texas Instrument简称TI)不断推陈出新、完善开发环境,以其雄厚的实力在业界得到50%左右的市场份额。

TI的DSP经过完善的测试出厂时,都是以TMS320为前缀。

在众多款型DSP中,TI把市场销量好和前景看好的DSP归为三大系列而大力推广,TI也称之为三个平台(Platform)。

TMS320C2000 平台,包含16位C24xx和32位C28xx的定点DSP。

C24xx系列市场销量很好,而对C28xx系列,TI认为很有市场潜力而大力推广。

C2000针对控制领域做了优化配置,集成了了众多的外设,适合逆变器、马达、机器人、数控机床、电力等应用领域。

由于C2000定位在控制领域,其包含了大量片内外设,如IO、SCI、SPI、CAN、A/D等等。

这样C2000既能作为快速微控制器(单片机)来控制对象,也能作为DSP来完成高速数字信号处理,DSP的高性能与通用微控制器的方便性紧密结合在一起,所以C2000也常被称为DSP控制器。

这里C2000采用的是与OMAP 不同的途径简化了主从式设计。

C2000系列(定点、控制器):C20X,F20X,F24X,F24XX,C28X,F28XX 该系列芯片具有大量外设资源,如:A/D、定时器、各种串口(同步和异步),WATCHDOG、CAN总线/PWM发生器、数字IO脚等。

是针对控制应用最佳化的DSP,在TI所有的DSP中,只有C2000有FLASH,也只有该系列有异步串口可以和PC 的UART相连。

3)C6000 系列:C62XX,C67XX,C64XX 该系列以高性能著称,最适合宽带网络和数字影像应用。

32bit,其中:C62XX和C64XX是定点系列,C67XX 是浮点系列。

该系列提供EMIF扩展存储器接口。

该系列只提供BGA封装,只能制作多层PCB。

且功耗较大。

TMS320C5000 平台,包含代码兼容的定点C54x和C55x。

DSP原理及应用答案

DSP原理及应用答案
(1) stack的存储空间为0x3000;
(2) SP=0x3120;
三、应用题(10分)
得分
评卷人
设CLKOUT=8MHz,试阅读下列程序。试回答,引脚XF产生什么波形的信号?若要求方波周期改为16s,T0中断周期减小到原来一半,试说明程序的修改方法。
程序:
.title "time.asm"
.mmregs
rete修正指针marar30bar3ar0ar3并反向进位测试指令bitfx11x1条件转移bcl1ntctc位为零则转移到l1条件转移banzl2ar2ar2不为0则转移到l2条件转移xc1alt小于0跳过1条指令执行传送指令mvpdtablear1程序区到数据区的传送传送指令ltdar1数据t同时移位ar11ar1堆栈指令pshmpopmpshdpopd对mmr对数据区累加指令addar2a数据加上a存于a减法指令subar2a减去数据存于a条件减法subcdena用于除法运算乘法指令mpyanum数据与ah相乘存于b数据存于乘加指令macar2a数据与t相乘后加a的内容乘加指令macar2ar3a两个数据相乘后加a的内容位操作指令rsbxssbx重复指令rptzst1第14cpl直接寻址基址方式位st1第11intm可屏蔽中断总开关st1frct乘法小数方式控制位定时器参数内容描述定时周期clkouttddr1prd1pcr1512
.text
_c_int01:STM #x,AR1
RPT #15
MVPD table,* AR1+
CALL bitrev
end:B end
bitrev:STM #8,AR0
STM #x,AR3
STM #y,AR4
RPT #14

DSP定点和浮点数格式ppt课件【2024版】

DSP定点和浮点数格式ppt课件【2024版】

练习
〔1〕试写出下述X,Y定点乘法C言语模拟程 序 设x=18.4,y=36.8,Qx=10;Qy=9;Qz=5
〔2〕试写出下述X,Y定点除法C言语模拟程 序 设x=18.4,y=36.8,Qx=10;Qy=9;Qz=15
共占用至少79 位
表示的数值
1s 1. f 2e-127
1s 0. f 2126
x 0
1s
NaN
1 e 254 e 0, f 0 e 0, f 0 e 255, f 0 e 255, f 0
最高位〔第31位〕为符号位s
通常情况,即 1 ≤ e ≤ 254 时
x1s1.f2e-127
四种特殊情况 ① 当 e=0、f≠0 时,尾数是个非归一化的数
② 当 e=0、f=x 0 时,x1=s 00.f2-126
③ 当 e=255、f=0 时,x为正〔s=0〕或负〔s=1〕的无穷 大
④ 当 e=255、f≠0 时,x为一个无效数〔NaN—Not a Number〕
例 ① 32位单精度浮点数
2〕数值范围与精度
给定字长N,采用Qn格式表示小数
数值范围: 精 度:
2N1 2n
~
2N1 1 2n
1 2n
16位字长Qn格式的数值范围与精度
3〕动态范围
动态范围:数据表示格式中可以表示的最大值与最小值之比
N位定点数的动态范围:
D Rfix= (2N 1 1/ 2 1 n )/2n 2N11
00001010b〔10〕除以00000011b〔3〕 与上面例子一样,结果为Q5格式011.01010b 最后对结果的小数点位置左移n-m 位 对于本例3-2=1>0,那么结果的小数点左移一位,最后

dsp内指令执行的流程

dsp内指令执行的流程

dsp内指令执行的流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!dsp内指令执行的流程DSP内指令执行的流程通常包括以下几个阶段:一、取指阶段1.1、从指令缓存中取出指令1.2、解码指令,识别操作码和操作数二、执行阶段2.1、根据操作码进行相应的运算操作2.2、访问寄存器文件,读取或写入操作数三、访存阶段3.1、如果指令需要访问存储器,则发送地址到数据存储器3.2、从数据存储器读取数据或向其写入数据四、写回阶段4.1、将运算结果写回寄存器文件4.2、更新程序计数器,指向下一条指令五、中断处理阶段5.1、检查是否有中断请求5.2、如果发生中断,则执行相应的中断服务程序总结:DSP的指令执行流程是一个典型的流水线过程,通过多个阶段的协同工作,实现对指令的高效执行。

DSP红绿灯课程设计2812

DSP红绿灯课程设计2812

DSP红绿灯课程设计2812一、教学目标本课程旨在通过DSP红绿灯项目的设计与实现,让学生掌握数字信号处理(DSP)的基本原理和技能,培养学生的实际工程能力和团队协作精神。

具体的教学目标如下:1.理解DSP的基本概念和原理。

2.掌握DSP芯片的结构和编程方法。

3.学习DSP红绿灯控制系统的原理和设计方法。

4.能够使用DSP芯片进行程序设计和调试。

5.能够设计和实现简单的DSP红绿灯控制系统。

6.培养学生的团队协作和沟通能力。

情感态度价值观目标:1.培养学生的创新意识和解决问题的能力。

2.培养学生对交通控制系统的兴趣和责任感。

3.培养学生的团队合作和积极进取的精神。

二、教学内容本课程的教学内容主要包括DSP的基本原理、DSP芯片的结构和编程方法、DSP红绿灯控制系统的原理和设计方法。

具体的教学大纲如下:1.引言:介绍DSP红绿灯控制系统的基本概念和应用背景。

2.DSP基本原理:讲解DSP的基本原理和数字信号处理的基本概念。

3.DSP芯片结构:介绍DSP芯片的结构和功能,包括中央处理器、存储器和接口等。

4.DSP编程方法:讲解DSP的编程方法和编程语言。

5.DSP红绿灯控制系统设计:介绍DSP红绿灯控制系统的原理和设计方法,包括控制算法、硬件设计和软件编程等。

6.项目实践:学生分组进行DSP红绿灯项目的设计和实现。

三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。

1.讲授法:通过讲解DSP的基本原理和概念,让学生掌握基本知识。

2.讨论法:通过小组讨论和报告,培养学生的思考和表达能力。

3.案例分析法:通过分析实际案例,让学生了解DSP红绿灯控制系统的应用和设计方法。

4.实验法:通过项目实践,让学生亲手进行DSP红绿灯系统的设计和实现,提高学生的实际工程能力。

四、教学资源为了支持教学内容和教学方法的实施,我们将选择和准备适当的教学资源,包括教材、参考书、多媒体资料和实验设备等。

DSP作业和答案(盐城工学院)(精)

DSP作业和答案(盐城工学院)(精)

第一章1 DSP芯片的特点有哪些?2 DSP芯片的选型一般是从哪几个方面进行考虑?3简述 TI 公司的 DSP 三大平台和它们各自的应用场合。

4 DSP芯片发展趋势应该朝着哪些方面发展?第二章1 如何对 CCS3.3的单处理器目标系统进行配置?2 简单程序的开发步骤有哪些?3 DSP探针的作用有哪些?第三章1TMS320X28xx 编译器输出哪些代码文件?2 编译器的集成预处理功能完成哪些预处理任务?3 DSP 的寄存器是如何定义的?试举例说明。

4 TMS320X28xx 定点处理器是如何实现浮点运算的? IQmath 主要由哪几部分组成?第四章1 写出 TMS320X28xx 的工作频率、内核电压和 I/O电压的关系, 内核电压和I/O电压的上电次序有没有特定的要求?2 TMS320X281x 处理器外设功能有哪些?简要介绍。

第六章1 若要将高速外设模块的时钟频率设置为 SYSCLKOUT/8,低速外设模块的时钟频率设置为 SYSCLKOUT/10,应该如何设置寄存器HISPCP 和寄存器 LOSPCP 的值?答:将高速外设模块时钟前分频寄存器 HISPCP 的值设置为 0x0004, 将高速外设模块时钟前分频寄存器 HISPCP 的值设置为 0x0005。

2 画出程序监视器功能框图,对照图简要说明它的工作原理。

第八章第十三章1 已知 XCLKIN=30MHz,要使 ADC 模块的时钟为 3.125MHz ,应该对哪些寄存器中的哪些段进行设置,设置的数值分别为多少?答:应该对 PCLKCR 中的 ADCENCLK 、 PLLCR 中的 DIV 、 HISPCP 中的HSPCLK 、 ADCTRL3中的 ADCCLKPS 、 ADCTRL1中的 CPS 进行设置。

设置的数值分别是:PCLKCR 中的 ADCENCLK 设置为 1(或 PCLKCR=0x0008, PLLCR 中的 DIV 设置为 1010(PLLCR=0x000A, HISPCP 中的 HSPCLK 设置为011(HISPCP=0x0003, ADCTRL3中的 ADCCLKPS 设置为 0010, ADCTRL1中的CPS 设置为 1。

【转】dsp定点运算基本方法

【转】dsp定点运算基本方法

【转】dsp定点运算基本⽅法⽬录参考:⼀DSP定点算数运算1 数的定标在定点DSP芯⽚中,采⽤定点数进⾏数值运算,其操作数⼀般采⽤整型数来表⽰。

⼀个整型数的最⼤表⽰范围取决于DSP芯⽚所给定的字长,⼀般为16位或24位。

显然,字长越长,所能表⽰的数的范围越⼤,精度也越⾼。

如⽆特别说明,本书均以16位字长为例。

DSP芯⽚的数以2的补码形式表⽰。

每个16位数⽤⼀个符号位来表⽰数的正负,0表⽰数值为正,l则表⽰数值为负。

其余15位表⽰数值的⼤⼩。

因此,⼆进制数0010000000000011b=8195⼆进制数1111111111111100b= -4对DSP芯⽚⽽⾔,参与数值运算的数就是16位的整型数。

但在许多情况下,数学运算过程中的数不⼀定都是整数。

那么,DSP芯⽚是如何处理⼩数的呢?应该说,DSP芯⽚本⾝⽆能为⼒。

那么是不是说DSP芯⽚就不能处理各种⼩数呢?当然不是。

这其中的关键就是由程序员来确定⼀个数的⼩数点处于16位中的哪⼀位。

这就是数的定标。

通过设定⼩数点在16位数中的不同位置,就可以表⽰不同⼤⼩和不同精度的⼩数了。

数的定标有Q表⽰法和S表⽰法两种。

表1.1列出了⼀个16位数的16种Q表⽰、S表⽰及它们所能表⽰的⼗进制数值范围。

从表1.1可以看出,同样⼀个16位数,若⼩数点设定的位置不同,它所表⽰的数也就不同。

例如,16进制数2000H=8192,⽤Q0表⽰16进制数2000H=0.25,⽤Q15表⽰但对于DSP芯⽚来说,处理⽅法是完全相同的。

从表1.1还可以看出,不同的Q所表⽰的数不仅范围不同,⽽且精度也不相同。

Q越⼤,数值范围越⼩,但精度越⾼;相反,Q越⼩,数值范围越⼤,但精度就越低。

例如,Q0 的数值范围是⼀32768到+32767,其精度为1,⽽Q15的数值范围为-1到0.9999695,精度为1/32768=0.00003051。

因此,对定点数⽽⾔,数值范围与精度是⼀对⽭盾,⼀个变量要想能够表⽰⽐较⼤的数值范围,必须以牺牲精度为代价;⽽想精度提⾼,则数的表⽰范围就相应地减⼩。

DSP最小系统电路设计(精)

DSP最小系统电路设计(精)

目录摘要 . ................................................................................................................ I 第1章绪论 . .................................................................................................... 1 第2章总体设计 . .. (2)2.1系统要实现的功能 . ............................................................................... 2 2.2 系统的设计流程 ................................................................................... 2 1.2原理框图 . (3)第3章 DSP 最小系统电路设计 . (4)3.1 电源电路设计 ...................................................................................... 4 3.2 复位电路设计 ...................................................................................... 5 3.3 时钟电路设计 ...................................................................................... 5 3.4 JTAG 接口电路设计 ............................................................................ 6 3.5 DSP 的串行接口电路设计 . .................................................................. 6 3.6 存储器FLASH扩展设计 . (7)第4章软件设计 . (8)4.1 仿真工作原理及测试步骤 .................................................................. 9 4.2 测试程序 .............................................................................................. 9 4.3 测试的注意事项 (10)总结 ................................................................................................................. 11 致谢 ................................................................................................................. 12 参考文献 (13)第1章绪论DSP 有两种涵义,一种是Digital Signal Processing ,指的是数字信号处理技术;一种是Digital Signal Processor,指的是数字信号处理器。

DSP2812寄存器汇总

DSP2812寄存器汇总
P201
PIE, INT9组使能寄存器
PIEIFR9
P201
PIE, INT9组标志寄存器
PIEIER10
P201
PIE, INT10组使能寄存器
PIEIFR10
P201
PIE, INT10组标志寄存器
PIEIER11
P201
PIE, INT11组使能寄存器
PIEIFR11
P201
PIE, INT11组标志寄存器
P187
CPU定时器2控制寄存器
TIMER2TPR
P187
CPU定时器2预定标寄存器低位
TIMER2TPRH
P187
CPU定时器2预定标寄存器高位
CPU中断寄存器
IER
P196
CPU中断使能寄存器
IFR
P196
CPU中断标志寄存器
INTM
P196
CPU全局中断标志位
PIE(外设中断控制器)中断寄存器
EVAIFRA
P257
EVA中断标志寄存器A
EVAIMRA
P257
EVA中断屏蔽寄存器A
EVAIFRB
P257
EVA中断标志寄存器B
EVAIMRB
P257
EVA中断屏蔽寄存器B
EVAIFRC
P257
EVA中断标志寄存器C
EVAIMRC
P257
EVA中断屏蔽寄存器C
EVBIFRA
P257
EVB中断标志寄存器A
P293
ADC自动序列状态寄存器
ADCRESULT0
P293
ADC转换结果缓冲寄存器0
ADCRESULT1
P293
ADC转换结果缓冲寄存器1

DSP常用汇编语言指令简介

DSP常用汇编语言指令简介
南航自动化学院DSP技术应用实验 室
;指定当前工作寄存器
MAR *+,AR1 ;把当前寄存器AR0的内容加
间接寻址方式 TMS320LF240X中八个辅助寄存器(AR0-AR8) 提供了灵活而强大的间接寻址能力,在使用时,包 括: (1)设置辅助寄存器指针(ARP) 例如: MAR *,AR1 LDP #04H LAR AR1,0 ;指明当前寄存器为AR1 ;指明当前数据页码 ;把地址为200H单元内容 ;装载入AR1寄存器
南航自动化学院DSP技术应用实验 室
直接寻址方式 使用直接寻址方式时,包括: (1)设置数据页 例如:LDP #4 ; 指向第4个数据页 (2)指明偏移量 例如: LDP #4 ;指向第4个数据页 ADD 1 ; 把地址为204h的数据单元内 ; 容加到累加器内
南航自动化学院DSP技术应用实验 室
2. 工作寄存器等指令举例
Example1:MAR *+,AR1;把当前工作寄 存器的内容加1,然后再改变工作寄存器为 AR1。 Example2:LAR AR4,#8123h;把AR4的 值改变为立即数。 LAR AR0,16;(DP=6)把 地址=310H的内存单元内容装入AR0。 Example3:SAR AR0,*+;(如果当前工 作寄存器=AR1)把AR0的内容拷贝到AR1 南航自动化学院DSP技术应用实验 指向的内存单元。 室
4. 转移指令举例
南航自动化学院DSP技术应用实验 室
EQ NEQ LT LEQ GT GEQ NC C NOV BIO NTC TC UNC
ACC = 0 ACC <>0 ACC < 0 ACC <=0 ACC > 0 ACC >=0 C=0 C=1 OV = 0 BIO_ low TC = 0 TC = 1

DSP编程技巧

DSP编程技巧

DSP编程技巧DSP( Digital Signal Processing,数字信号处理)是一种通过对数字信号进行算法处理来获取信息的技术。

在DSP编程中,有一些技巧可以帮助提高程序的性能和效率。

下面是关于DSP编程的27种技巧。

1.使用定点数表示数据:定点数的运算速度更快,占用的存储空间更少,而且可以更好地适应硬件设计。

2.使用滤波器来处理信号:滤波器可以降低噪声和干扰,并提取出感兴趣的频率成分。

3.使用快速傅里叶变换(FFT):FFT可以将时域信号转换为频域信号,从而更容易分析信号的频率特性。

4.选择合适的窗函数:窗函数可以改善信号的频谱分析效果,减小谱泄露,提高分辨率。

5.使用多通道处理:如果有多个信号通道需要处理,可以使用多线程或并行处理来提高处理速度。

6.使用分块处理:如果信号很长,可以将其分成多个块来处理,以避免内存溢出的问题。

7.避免过量的I/O操作:减少I/O操作可以提高程序的效率,尽量使用缓冲区读写数据。

8.使用循环展开:循环展开可以减少循环的迭代次数,从而提高程序的运行速度。

9.使用矩阵运算:矩阵运算可以简化复杂的运算逻辑,提高程序的可读性和可维护性。

10.合理选择数据类型:合理选择数据类型可以减少存储空间的占用,提高程序的性能。

11.避免复杂的条件语句:复杂的条件语句会降低程序的执行效率,尽量简化条件判断,尽量避免使用浮点数的条件判断。

12.使用平移运算代替乘法运算:平移运算可以用来代替乘法运算,从而提高程序的运行速度。

13.使用循环缓存:循环缓存可以减少内存访问次数,从而提高程序的效率。

14.使用尽可能少的内存:减少内存的使用可以提高程序的性能,避免内存溢出问题,可以使用动态内存分配代替静态内存分配。

15. 使用预处理指令:使用预处理指令可以提高程序的效率和可读性,比如#define、#ifdef和#ifndef等。

16.优化算法:合理选择算法可以提高程序的运行速度和效率,比如使用快速傅里叶变换代替离散傅里叶变换。

DSP课程大作业英文版_图文(精)

DSP课程大作业英文版_图文(精)

Lab Report of DSP姚志浩 5090309481 F0903018Lab 1 Discrete-Time Fourier Transform(1 Generate and plot the discrete-time signalSolution:It’s a simple sequence ,we can get the discrete-time signal using Matlab.Chat 1-1 simple sequence sample(2 Determine and plot the DTFT of the signalS olution:DTFT is the Z-Transform on the Unit Circle, we can easily find the Z-Transform :W ith ‘freqz’ function,we can get the amplitude-frequency and phase frequency response curve.Chart 1-2 DTFT Of the sequence(3 A linear and time-invariant system is described by the difference equationwhere abcd is equal to the last four digits of your student ID number.(i Is the system BIBO-stable?(ii Determine and sketch the impulse response , of the system. Determine the stability of the system byobserving .(iii Determine and plot the output of the system, if the input is.S olution:(1 My student ID number is 5090309481,corresponding a b c d will be9 4 8 1,and the difference equation will be;Characteristic equation will be ,we can get three pole points : ,All the pole points are in the unit circle, so the system is stable.(2 C reate a function “impseq” to get a impulse signal.H ere we use the function “filter”, we can get the impulse response:Chart 1-3 Unit Step ResponseW e get ans = 22.1234, so the system is stable.(3 if the input is ,the input sequence and output sequence are showed :A ddendum:Matlab Program List 1-1.n=[0:30]x=(0.93.^n.*cos(0.14*pi*n+pi/3;stem(n,x;title('x(n';xlabel('n';ylabel('x(n'1-2 .n=[0:30];x=(0.89.^n.*(stepseq(0,30,0w=[0:500]*2*pi/500;X=exp(j*w./(exp(j*w-0.89*ones(1,501;mag=abs(X;ang=angle(Xfigure(1;plot(w/pi,mag;gridylabel('|X(w|';xlabel('w(in pi unit';title('DTFT of x(n-magnitude'figure(2;plot(w/pi,ang;gridylabel('argX(w/pi';xlabel('w (in pi unit';title('DTFT of x(n-angle'1-3.(2 num=[9,-4,8,-1];den=[1,-0.65,0.35,0]x=impseq(0,0,100;n=[0:100]h=filter(num,den,xstem(n,h;xlabel('n';ylabel('y(n';title('Impluse Response' ;sum(abs(h(3num=[9,-4,8,-1];den=[1,-0.65,0.35,0]n=[0:200];x=(2+5*cos(0.27*pi*n+3*sin(0.77*pi*n.*stepseq(0,200,0figure(1;stem(n,x;xlabel('n';ylabel('x(n';title('Input Sequence';h=filter(num,den,x;figure(2;stem(n,h;xlabel('n';ylabel('y(n';title('Output Response' Functions :(1function [x,n]=impseq(n0,n1,n2n=[n1:n2];x=[(n-n0==0];(2function [x, n] = stepseq(n1,n2,n0if nargin ~=3disp('input error;';return;elseif ((n0 n2|(n1>n2error(' input error¡'endn = n1:n2;x = ((n-n0>=0;Lab 2Spectral Analysis(1 A signal , where and, is plagued by a Gaussian white noise . Suppose that the signal-to-noise ratio is -3 or 0 dB and the sampling rate is. Plot the spectra of and, 。

DSP汇编指令总结

DSP汇编指令总结

DSP汇编指令总结DSP汇编指令总结⼀、寻址⽅式:1、⽴即寻址:短⽴即寻址(单指令字)长⽴即数寻址(双指令字)第⼀指令字第⼆指令字16位常数=16384=4000h2、直接寻址ARU 辅助寄存器更新代码,决定当前辅助寄存器是否和如何进⾏增或减。

N规定是否改变ARP值,(N=0,不变)4.3.1、算术逻辑指令(28条)4.3.1.1、加法指令(4条);4.3.1.2、减法指令(5条);4.3.1.3、乘法指令(2条);4.3.1.4、乘加与乘减指令(6条);4.3.1.5、其它算数指令(3条);4.3.1.6、移位和循环移位指令(4条);4.3.1.7、逻辑运算指令(4条);4.3.2、寄存器操作指令(35条)4.3.2.1、累加器操作指令(6条)4.3.2.2、临时寄存器指令(5条)4.3.2.3、乘积寄存器指令(6条)4.3.2.4、辅助寄存器指令(5条)4.3.2.5、状态寄存器指令(9条)4.3.2.6、堆栈操作指令(4条)4.3.3、存储器与I/O操作指令(8条)4.3.3.1、数据移动指令(4条)4.3.3.2、程序存储器读写指令(2条)4.3.3.3、I/O操作指令(2条)4.3.4、程序控制指令(15条)4.3.4.1、程序分⽀或调⽤指令(7条)4.3.4.2、中断指令(3条)4.3.4.3、返回指令(2条)4.3.4.4、其它控制指令(3条)4.3.1、算术逻辑指令(28条)4.3.1.1、加法指令(4条);▲ADD▲ADDC(带进位加法指令)▲ADDS(抑制符号扩展加法指令)▲ADDT(移位次数由TREG指定的加法指令)4.3.1.2、减法指令(5条);★SUB(带移位的减法指令)★SUBB(带借位的减法指令)★SUBC(条件减法指令)★SUBS(减法指令)★SUBT(带移位的减法指令,TREG决定移位次数)4.3.1.3、乘法指令(2条);★MPY(带符号乘法指令)★MPYU(⽆符号乘法指令)4.3.1.4、乘加与乘减指令(6条);★MAC(累加前次积并乘)(字数2,周期3)★MAC(累加前次积并乘)★MPYA(累加-乘指令)★MPYS(减-乘指令)★SQRA(累加平⽅值指令)★SQRS(累减并平⽅指令)4.3.1.5、其它算数指令(3条);★ABS(累加器取绝对值指令)★NEG(累加器取补码指令)★NORM(累加器规格化指令)返回4.3.1.6、移位和循环移位指令(4条);▲ SFL(累加器内容左移指令)▲ SFR(累加器内容右移指令)▲ROL(累加器内容循环左移指令)▲ROR(累加器内容循环右移指令)返回4.3.1.7、逻辑运算指令(4条);▲ AND(逻辑与指令)▲ OR(逻辑或指令)▲ XOR(逻辑异或指令)▲ CMPL(累加器取反指令)返回4.3.2、寄存器操作指令(35条)4.3.2.1、累加器操作指令(6条)▲ LACC(装载累加器指令)▲ LACT(装载累加器)*按TREG低4位指定的次数移位▲ LACL(装载累加器低16位指令)▲ ZALR(装载累加器指令)▲ SACL(移位并存储累加器低半部)▲ SACH(移位并存储累加器⾼半部)返回4.3.2.2、临时寄存器指令(5条)▲ LT(装载TREG指令)▲ LTA(装载TREG并累加上次乘积指令)▲ LTS (装载TREG并减去上次乘积指令)▲ LTD(装载TREG并累加上次乘积及数据移动指令)▲LTP(装载TREG和累加器指令)返回4.3.2.3、乘积寄存器指令(6条)▲ PAC (乘积寄存器内容载⼊累加器)▲ APAC (PREG与累加器相加)▲ SPAC(累加器和乘积寄存器相减)▲ LPH(装载PREG⾼16位指令)▲ SPL(存储PREG低16位指令)▲ SPH(存储PREG⾼16位指令)返回4.3.2.4、辅助寄存器指令(5条)★LAR(装载当前辅助寄存器AR)★SAR(存储辅助寄存器指令)★MAR(修改当前辅助寄存器)★SBRK(从当前辅助寄存器减去短⽴即数)返回4.3.2.5、状态寄存器指令(9条)★LST(装载状态寄存器)★SST(存储状态寄存器)★SETC(控制位置“1”指令)★SETC(控制位置“1”指令)★LDP(装载数据指针DP指令)★BIT(位测试指令)★BITT(测试由TREG指定bit code指令)★CMPR(⽐较当前辅助寄存器AR和AR0)返回4.3.2.6、堆栈操作指令(4条)★PUSH(累加器低16位进栈指令)★POP(栈顶内容弹出⾄累加器低16位指令)★POP(栈顶内容弹出⾄累加器低16位指令)★POPD(弹栈⾄数据存储器指令)返回4.3.3、存储器与I/O操作指令(8条)4.3.3.1、数据移动指令(4条)▲DMOV(数据存储器内部数据移动指令)▲SPLK(存储长⽴即数⾄数据存储器指令)▲BLDD(数据存储器内部的数据块移动)▲ BLPD(从程序存储器到数据存储器的数据块传送)4.3.3.2、程序存储器读写指令(2条)★TBLR(读程序存储器数据到数据存储器)★TBLW(写程序存储器)4.3.3.3、I/O操作指令(2条)★IN(数据输⼊指令)★OUT(数据输出指令)4.3.4、程序控制指令(15条)4.3.4.1、程序分⽀或调⽤指令(7条)★B(⽆条件转移指令)★BANZ(辅助寄存器内容不等于零转移)★CALL(⽆条件⼦程序调⽤指令)★BACC(按累加器内容转移指令)★CALA(由累加器指定地址的⼦程序调⽤指令)★CC(条件调⽤指令)4.3.4.2、中断指令(3条)★INTR(软中断指令)★TRAP(软件陷阱中断)★NMI(⾮屏蔽中断)4.3.4.3、返回指令(2条)★RET(⽆条件从⼦程序或中断返回)★RETC(条件返回指令)4.3.4.4、其它控制指令(3条)★RPT(重复执⾏下条指令)★NOP(空操作)★IDEL(暂停)返回。

DSP实验报告定时器2

DSP实验报告定时器2

实验二DSP系统定时器的使用一、实验目的:1、掌握5402 DSP片上定时器的初始化设置及应用;2、掌握DSP系统中实现定时的原理及方法;3、了解5402 DSP中断寄存器IMR、IFR的结构和使用;4、掌握5402 DSP系统中断的初始化设置过程和方法;5、掌握在C语言中嵌入汇编语句实现数字I/O的方法。

二、实验原理:1、定时器及其初始化在5402内部包括两个完全相同的定时器:定时器0和定时器1。

每个定时器分别包括3个寄存器:定时器周期寄存器PRD、定时器寄存器TIM、定时器控制寄存器TCR,其中TCR 寄存器中包括定时器分频系数TDDR、定时器预分频计数器PSC两个功能寄存器。

通过PRD 和TDDR可以设置定时器的初始值,TIM(16bits)和PSC(4bits)是用于定时的减法计数器。

CLKOUT是定时器的输入时钟,最大频率为100Mhz。

定时器相当于20bit的减法计数器。

定时器的结构如图1所示。

图1 定时器的组成框图定时器的定时周期为:CLKOUT×(TDDR+1)×(PRD+1)其中,CLKOUT为时钟周期,TDDR和PRD分别为定时器的分频系数和时间常数。

在正常工作情况下,当TIM减到0后,PRD中的时间常数自动地加载到TIM。

当系统复位或者定时器单独复位时,PRD中的时间常数重新加载到TIM。

同样地,每当复位或PSC减到0后,定时器分频系数TDDR自动地加载到PSC。

PSC在CLKOUT作用下,作减1计数。

当PSC 减到0时,产生一个借位信号,令TIM作减l计数。

TIM减到0后,产生定时中断信号TINT,传送至CPU和定时器输出引脚TOUT。

例如:欲设置定时器0的定时周期为1ms,当DSP工作频率为100Mhz时,通过上式计算可得出:TDDR=15,PRD=6520。

2、定时器的使用下面是一段定时器应用程序,每检测到一次中断,ms+1,利用查询方式每计500个数就令XF引脚的电平翻转一次,在XF引脚输出一矩形波信号,因定时器1ms中断一次,故500ms就使LED翻转一次,这样LED指示灯就不停地闪烁。

DSP作业程序

DSP作业程序

1.捕获逻辑:允许捕捉单元1和2工作,禁止捕捉单元3,捕捉上升沿事件,选择T1定时器为时基,允许中断,低优先级.捕捉逻辑(CAP1\CAP2\CAP3\CAP4\CAP5\CAP6)CAP_INIT:LDP #DP_PF2;//指向7090h~7100h//LACL MCR AOR #0038H;//IOPA3、IOPA4和IOPA5被配置为特殊功能方式//SACL MCR ASETC INTMLDP #DP_EV ASPLK #042H,GPTCONASPLK #0,T1CNTSPLK #0E46H,T1CON;//TMODE=10连续向上计数模式,TPS=110 64分频////TENABLE=1定时器计数使能,TCLKS=00内部时钟定时器2、4有自身周期寄存器//SPLK #0FFFFH,T1PRSPLK #00H,EV AIMRASPLK #00H,EV AIMRBSPLK #2650H,CAPCONA;//捕获上升沿CAP1、CAP2捕获允许//SPLK #03H,EV AIMRC;CAP1SPLK #0FFFFH,EV AIFRA;//清EV A全部中断标志//SPLK #0FFFFH,EV AIFRBSPLK #0FFFFH,EV AIFRCCLRC INTMRET2.SCI模块:将SCI编程为既能接收又能发送数据的工作方式,采用空闲线模式。

通信波特率19200bps,1位停止位,8位字符传送,采用偶校验,允许发送和接收中断,高优先级中断。

(禁止接收错误中断)SCI初始化程序:SCI_INIT:LDP #0E1H;//DP指向0E0H(0/1110/0000B)数据页,地址为7000H~707FH// LACL MCRAOR #03HSACL MCRALDP #DP_PF1SPLK #0067H(0077H),SCICCR;//地址位唤醒模式,8位数据传输,1位停止位//;//采用偶校验//自测试模式?//SPLK #0007H,SCICTL1; //接收,发送,内部时钟使能,SLEEP=1//SPLK #0003H,SCICTL2; //接受,发送中断使能//SPLK #0017H,SCIPRI 高优先级中断(D4-D3仿真时有用)SPLK #0000H,SCIHBAUDSPLK #009BH,SCILBAUD ; 波特率为19200bpsSPLK #0027H,(002FH)SCICTL1 ; 串口初始化完成LAR AR1,#SCIRXBUFLAR AR2,#SCITXBUFLAR AR3,#RXD_PTRLAR AR4,#TXD_PTRLDP #0SPLK #0001h,IMRSPLK #0FFFFh,IFRCLRC INTMRET3.SPI模块:将SPI编程为主模式,8位字符传送,时钟控制选择上升沿无延时,允许中断,高优先级中断,波特率位80kbps。

DSP作业答案

DSP作业答案

1. DSP有哪些显著特点?答:DSP的特点有:1)在一个指令周期内可完成一次乘法和一次加法;2)程序和数据空间分开,可以同时访问指令和数据;3)片内有大容量的快速RAM;4)快速中断处理和硬件I/O支持;5)可以并行执行多个操作;6)支持流水线操作,使取指、译码和执行等操作可以重叠执行。

2.简述TMS320LF2407A的片内资源。

答:TMS320LF2407A的片内资源有:1)40MIPS处理能力;2)两个事件管理模块能提供16路PWM输出、四个16位定时器,很便于对电机的控制;3)16路AD模拟通道;4)集成了CAN总线控制器;5)16位串行外设接口和串行通讯接口;6)高达40个可编程或复用的通用输入输出引脚;7)片内32K的flash程序存储器和2K数据程序RAM、2K单口RAM和544字节双口RAM ;8)程序和数据空间可外扩至64K。

3.TMS320LF2407A通用定时器有哪些功能?简述其工作模式。

答:功能如下:1)计时;2)使用定时器的比较功能产生PWM波;3)给事件管理器的其他子模块提供基准时钟。

有四种操作模式,分别为:停止/保持模式,连续递增计数模式,定向增/减计数模式,连续增/减计数模式。

4.简述DSP C语言与ANSI C的主要区别。

答:DSP C语言以ANSI C为基础,并对ANSI C进行了相应的限定和扩展。

以下是LF2407 C语言的一些不同于一般标准C的特征:1)标识符和常量所有标识符的前100个字符是有效的,区分大小写;不允许多字节字符;多字符的字符常数按序列中的最后一个字符来编码,例如:‘abc’==‘c’。

2)数据类型整型、双精度型等数据类型长度与常见编译器中数据类型不同,所有的浮点型都是由MS320C2x/C2xx/C5x的32位的二进制浮点格式来表示。

size_t(sizeof操作符的结果)定义为unsigned int;ptrdiff_t(指针加减的结果)定义为int。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档