dsp实验报告 哈工大 实验二 异步串口通信实验

合集下载

哈尔滨工业大学威海校区《DSP生产实习报告》_090240328_尤伟

哈尔滨工业大学威海校区《DSP生产实习报告》_090240328_尤伟

1.2DSP5509 开发板的概述
鸿翔电子 HX-5509A 开发板是为学习、评估 TI 的 TMS320VC5509A 而开发的,主要包 含两部分:硬件模板和相应的测试软件。 鸿翔电子 HX-5509A 开发板上集成了 DSP、SDRAM、Codec、USB、MMC/SD、Ethernet 等接口外设以及开放给用户的 DSP 总线扩展 。 这样使其能够应用在语音处理及其它相关领 域。 相应的测试软件包括: CPU 看门狗实验 LED 跑马灯实验 CPU Timer 定时器实验 实时时钟实验 扩展 SDRAM 读写实验 扩展 FLASH 读写实验 键盘扫描实验 外部中断输入实验 AIC23 播音实验 LCD 显示实验 串口通信实验 USB2.0 通信实验 网络通信实验 MMC/SD 卡通信实验
2.4 增强 HPI 与 GPI0A .............................................................................................. 5 2.5 中断 .................................................................................................................... 6 2.6VC5509 Bootloader................................................................................................. 6 2.7 VC5509 的片上外设 .............................................................................................. 7 2.7.1 定时器 ....................................................................................................... 7 2.7.2 2.7.4 USB1.1 接口......................................................................................... 7 2 通路、10 位 AD ............................................................................... 7 2.7.3 实时时钟 RTC ............................................................................................. 7 2.7.5 GPIO........................................................................................................... 7 3. 外扩 SDRAM 存储器 ................................................................................................ 7 4.1 音频输入与输出................................................................................................... 8 4.2 TLV320AIC23B 与微处理器的接口 .......................................................................... 8 二、熟悉 DSP 仿真器的使用 ............................................................................................. 8 1.功能与特点 .......................................................................................................... 8 2.驱动安装 ............................................................................................................. 9 3.CCS Setup 设置 ................................................................................................... 12 三、熟悉 DSP 开发环境 .................................................................................................. 15 四、了解 ARM、FPGA、AVR 等开发板的功能 .................................................................. 17 ARM 处理器 ............................................................................................................ 17 ARM 处理器特点 ..................................................................................................... 17 ARM 处理器系列 ..................................................................................................... 18 ARM 处理器结构 ..................................................................................................... 18 ARM 寄存器结构 ..................................................................................................... 18 ARM 指令结构......................................................................................................... 18 FPGA 的基本特点..................................................................................................... 19 AVR 单片机的基本特点 ............................................................................................ 19

DSP实验报告

DSP实验报告

实验一数字IO应用实验—、实验目的1. 了解DSP开发系统的组成和结构2. 在实验设备上完成I/O硬件连接,编写I/O实验程序并运行验证。

3. 内存观察工具的使用二、实验设备计算机,CCS3.1版本软件,DSP仿真器,教学实验箱三、实验原理2.键值读取程序:该部分有两种方法进行键值的判断。

方法1:利用内存观察工具进行观察方法2:利用LED1-LED8的亮灭对应显示键值。

a)外部中断1的应用参照实验五;b)内存观察键值:程序中定义了三个变量“W”“row”和“col”。

“W”代表是CPLD中键盘的扫描数值,“row”和“col”分别代表键盘的行和列,由行和列可以判定按键的位置。

上述三个变量可以在观察窗口中观察的。

c)利用LED灯显示键值原理,参看实验一。

具体的LED灯显示值以查表的形式读出,请参看“”库文件。

本实验的CPLD地址译码说明:基地址:0x0000,当底板片选CS0为低时,分配有效。

CPU的IO空间:基地址+0x0200 LED灯output 8位外部中断用XINT1:由CPLD分配,中断信号由键盘按键产生。

中断下降沿触发。

KEY_DAT_REG(R):基地址+0x0004;四、实验步骤和内容1.2407CPU板JUMP1的1和2脚短接,拨码开关S1的第一位置ON,其余置OFF;2.E300板上的开关SW4的第一位置ON,其余OFF;SW3的第四位置ON其余的SW置OFF“DEBUG→Connect”)4.打开系统项目文件 \e300.test\ normal \05_key interface \;“\Debug\”文件“Debug\Go Main”跳到主程序的开始;7.指定位置设置断点;8.View--〉Watch Window打开变量观察窗口;9. 将变量“w”“row”和“col”添加到观察窗口中,改变变量观察窗口的显示方式为HEX显示。

“Debug--〉Animate”全速运行,然后点击E300板上键盘按键,观察窗口中变量变化,同时LED1-LED8灯也相应变化,指示键值。

(精编)哈工大通信原理实验报告

(精编)哈工大通信原理实验报告

(精编)哈工大通信原理实验报告H a r b i n I n s t i t u t e o f T e c h n o l o g y通信原理实验报告课程名称:通信原理院系:电子与信息工程学院班级:姓名:学号:指导教师:倪洁实验时间:2015年12月哈尔滨工业大学实验二帧同步信号提取实验一、实验目的1.了解帧同步的提取过程。

2.了解同步保护原理。

3.掌握假同步,漏同步,捕捉动态和维持态的概念。

二、实验原理时分复用通信系统,为了正确的传输信息,必须在信息码流中插入一定数量的帧同步码,帧同步码应具有良好的识别特性。

本实验系统帧长为24比特,划分三个时隙,每个时隙长度8比特,在每帧的第一时隙的第2至第8码元插入七位巴克码作为同步吗。

第9至24比特传输两路数据脉冲。

帧结构为:X11100101010101011001100,首位为无定义位。

本实验模块由信号源,巴克码识别器和帧同步保护电路三部分构成,信号源提供时钟脉冲和数字基带脉冲,巴克码识别器包裹移位寄存器、相加器和判决器。

其余部分完成同步保护功能。

三、实验内容1.观察帧同步码无错误时帧同步器的维持状态。

2.观察帧同步码有一位错误时帧同步器的维持态和捕捉态3.观察帧同步器假同步现象和同步保护器。

四、实验步骤1.开关K301接2.3脚。

K302接1.2脚。

2.接通电源,按下按键K1,K2,K300,使电路工作。

3.观察同步器的同步状态将信号源中的SW001,SW002,SW003设置为11110010,10101010,11001100(其中第2-8位为帧同步码),SW301设置为1110,示波器1通道接TP303,2通道接TP302,TP304,TP305,TP306,观察上述信号波形,使帧同步码(SW001的2-8位)措一位,重新做上述观察,此时除了TP303外,个点波形不变,说明同步状态仍在维持。

4.观察同步器的失步状态。

关闭电源,断开K302,在开电源(三个发光二极管全亮)。

dsp实验报告哈工大实验二异步串口通信实验

dsp实验报告哈工大实验二异步串口通信实验

dsp实验报告哈工大实验二异步串口通信实验异步串口通信实验一. 实验目的1. 了解*****F2407A DSP 片内串行通信接口(SCI)的特点。

2. 学会设置SCI 接口进行通信。

3. 了解ICETEK-LF2407-A 板上对SCI 接口的驱动部分设计。

4. 学习设计异步通信程序。

二. 实验设备计算机,ICETEK-LF2407-EDU 实验箱(或ICETEK 仿真器+ICETEK-LF2407-A 系统板+相关连线及电源)。

三. 实验原理1. *****F2407A DSP 串行通信接口模块*****F240x 器件包括串行通信接口SCI 模块。

SCI 模块支持CPU 与其他使用标准格式的异步外设之间的数字通信。

SCI 接收器和发送器是双缓冲的,每一个都有它自己单独的使能和中断标志位。

两者都可以独立工作,或者在全双工的方式下同时工作。

2. ICETEK-LF2407-A 板异步串口设计由于DSP 内部包含了异步串行通信控制模块,所以在板上只需加上驱动电路部分即可。

驱动电路主要完成将SCI 输出的0-3.3V 电平转换成异步串口电平的工作。

转换电平的工作由MAX232 芯片完成,但由于它是5V 器件所以它同DSP 间的信号线必须有电平转换,此板采用的是74LS245。

3. 串行通信接口设置CPU 进行串行通信时可以采用两种方式,一种是轮询方式,即CPU 不断查询串口状态进行接收和发送,缺点是占用CPU 时间太多;另一种是中断方式,SCI 的接收和发送都可以产生中断信号,这样CPU 可以在完成其他一些工作的同时进行串行通信。

串行通信接口波特率计算,内部生成的串行时钟由系统时钟SYSCLK 频率和波特率选择寄存器决定。

串行通信接口使用16 位波特率选择寄存器,数据传输的速度可以被编程为***** 多种不同的方式。

不同通信模式下的串行通信接口异步波特率由下列方法决定:BRR=1―***** 时的串行通信接口异步波特率:SCI 异步波特率=SYSCLK/ [( BRR+1)*8]其中,BRR=SYSCLK/(SCI 异步波特率*8)-1;BRR=0 时的串行通信接口异步波特率:SCI 异步波特率=SYSCLK/16这里BRR 等于波特率选择寄存器的16 位值。

DSP实验报告_6

DSP实验报告_6

实验一: 闪灯实验熟悉DSP 软硬件测试系统实验目的1.了解SHARC 系列高性能数字信号处理器的程序开发过程和编程语言;2.熟悉集成开发工具VisualDSP++, 学会使用VisualDSP++进行SHARC 系列ADSP 的程序开发、编译与调试;3.掌握SHARC 系列ADSP 的程序加载设计和加载过程。

实验内容利用波形产生信号板, 结合FPGA 编程技术和程序编程器, 编写测试ADSP21065L 和FPGA 之间硬件连接的应用程序, 同时完成应用程序的加载和脱机操作, 在信号指示灯“HL2”上产生可调周期的脉冲信号, “点亮”与“熄灭”指示灯HL2。

实验要求通过DSP 编程, 在其FLAG11引脚上模拟如下波形的周期信号:要求:(1) 500H T ms >,500L T ms >. (2) 并用示波器查看波形, 测量信号周期。

实验步骤1. 熟悉电路图, 清楚波形产生电路板ADSP21065L 与可编程FPGA 器件之间的连接关系;2. 编写FPGA 程序。

在FPGA 内部将ADSP21065L 的标志引脚FLAG11(引脚号26)设置为输出, 作为FPGA 的输入信号, 在FPGA 内部编程将该信号直接输出在发FPGA 的37引脚号上, 设置37引脚为输出信号, 驱动板上的HL2 LED 指示灯;3. 启动VisualDsp++4.5,选择project 工程选项菜单, 创建一个名称为Test.dpj 的工程文件, 选择处理器的型号为ADSP-21065L ;4.弹出一个对话框, 选择是否需要加入VDSP kernel ,选择“NO ”;5. 在工程中加入以下参考源文件:\exp1\test(boot)\ boot1.asm 和boot1.ldf 6.编译, 链接调试, 生成可执行文件。

7.运行程序, 可以看到波形发生电路板上的指示灯“HL2”不断闪动。

8. 利用示波器观测系统时钟,并测量产生信号的波形和周期。

DSP第二次实验报告

DSP第二次实验报告

DSP实验报告(第二次实验)实验四、正弦信号发生器学院:信息工程学院班级:11级通信工程3班姓名:李慧学号:2011551309指导老师:姚志强完成日期:2014.4.12验四、正弦信号发生器一、 实验目的1. 掌握利用DSP 产生正弦信号的原理2. 熟悉子程序调用的程序结构以及堆栈的使用3. 掌握CCS 的图形输出操作二、 实验设备1. 集成开发环境Code Composer Studio (简称CCS )2. 实验代码Sin.s54、Lab.cmd 和Lab.gel三、实验内容1. 阅读理解多项式逼近正弦的文档2. 阅读和理解Sin.s543. 调试正弦波发生器4. 加入断点,并选取图形观测,利用动画及时更新5. 试利用迭代的方法来实现正弦信号发生器四、实验结果和提示1.2345sin()= 3.140625 + 0.02026367 - 5.325196 + 0.5446778 + 1.800293x x x x x x ,x 为第一象限内的弧度值。

因为sin()sin(),sin()sin()x x x x π-=-=-,所以只需将第二,三,四象限内的弧度值转换到第一象限即可计算出相应的正弦函数值。

由于有限精度,规定弧度值从~ππ-,其中π=0x7FFF ,π/2=0x4000,π-=0x8000。

利用级数展开产生正弦波,必须在调用计算子程序之前备份好累加器A 中的当前弧度值,以便计算结束后实现x 增量。

正弦波的频率可以通过增幅的大小来进行控制,如果假定程序循环一次为一个时间单位,则正弦波的周期为65536/步长,频率为周期倒数。

x 自动增长时要注意当x 超过π后必须调整到~ππ-的范围内才能调用计算子程序,即若,2x x x ππ>=-则。

2. 需要使用临时数据时,必须用frame 语句留出所需空间,使用结束后要将堆栈指针还原以防堆栈内存泄漏。

要注意的是frame 的下一条指令不能使用直接寻址。

DSP实验报告(二)

DSP实验报告(二)

DSP实验报告(二)实验二应用FFT对信号进行频谱分析一、实验目的1、在理论学习的基础上,通过本次实验,加深对快速傅里叶变换的理解,熟悉FFT算法及其程序的编写。

2、熟悉应用FFT对典型信号进行频谱分析的方法。

3、了解应用FFT进行信号频谱分析过程中可能出现的问题,以便在实际中正确应用FFT。

二、实验原理与方法①一个连续信号的频谱可以用它的傅立叶变换表示为+ Xa(jW)=-jWtx(t)edtòa-如果对该信号进行理想采样,可以得到采样序列x(n)=xa(nT)同样可以对该序列进行z变换,其中T为采样周期X(z)=+ x(n)z-n+ -令z为ejw,则序列的傅立叶变换X(ejw)=x(n)ejwn-其中ω为数字频率,它和模拟域频率的关系为w=WT=W/fs式中的是采样频率。

上式说明数字频率是模拟频率对采样率的归一化。

同模拟域的情况相似。

数字频率代表了序列值变化的速率,而序列的傅立叶变换称为序列的频谱。

序列的傅立叶变换和对应的采样信号频谱具有下式的对应关系。

1X(e)=Tjw+ - w-2pXa(j)T即序列的频谱是采样信号频谱的周期延拓。

从式可以看出,只要分析采样序列的谱,就可以得到相应的连续信号的频谱。

注意:这里的信号必须是带限信号,采样也必须满足Nyquist定理。

在各种信号序列中,有限长序列在数字信号处理中占有很重要的地位。

无限长的序列也往往可以用有限长序列来逼近。

有限长的序列可以使用离散傅立叶变换。

当序列的长度是N时,定义离散傅立叶变换为:X(k)=DFT[x(n)]=其中W=e2pj-NN-1n=0WNkn它的反变换定义为:1x(n)=IDFT[X(k)]=N根据式和,则有N-1n=0X(k)WNknX(z)|z=Wnk=NN-1n=0x(n)WNnk=DFT[x(n)]j2pN可以得到X(k)2pk的点,就NN是将单位圆进行N等分以后第k个点。

所以,X(k)是z变换在单位圆上的等距采样,或者说是序列傅立叶变换的等距采样。

DSP原理与应用实验4-异步串口通讯

DSP原理与应用实验4-异步串口通讯

课程名称DSP原理与应用实验序号实验4实验项目异步串口通讯实验地点实验学时实验类型指导教师实验员专业班级学号姓名年月日二、实验原理与内容1、UART 简介TMS320DM6437 集成了UART 控制器,支持2 个UART 外设连接。

UART 支持基于工业标准的TL16C550 异步通信模块,支持FIFO 模式数据传输,最大支持16 字节数据的缓存,从而减轻接收和发送数据时CPU 程序的时钟消耗。

TMS320DM6437 集成的UART 控制器可以扩展2 个UART,其对应的信号线分为两组:其中只有UART0 支持modem 模式控制。

SEED-DEC6437 配置UART0 为RS485 模式,UART1 为RS232 模式。

2、UART 的寄存器说明TMS320DM6437 的UART 的寄存器如表示:3、波特率的设置UART 的位时钟是从固定的27MHz 的时钟获取的,支持最高128 kbps 的数据率。

UART的时钟产生原理如下图:UART 波特率产生原理图UART 包含一个可编程的波特率发生器,将输入时钟经过分频产生需要的位时钟,分频值可以在1-65535。

位时钟的频率是波特率的十六倍频,每一个接收发送的数据位占用16个位时钟,接收时,位采样也在第八个位时钟时采样。

分频器值的计算公式如下:分频数= 当前时钟输入(27MHz)/(16 ×期望的波特率)当输入时钟为27MHz 时,支持的波特率如下图所示三、实验软硬件环境SEED—DTK67实验箱,CCS软件,接口线UART 实验,包含文件1. main.c:实验主程序,包含了系统初始化,外扩接口初始化及配置。

2. linker.cmd:声明了系统的存储器配置与程序各段的连接关系。

3. DEC6437.gel:系统初始化程序。

四、实验过程(实验步骤、记录、数据、分析)1. 将DSP 仿真器与计算机连接好;2. 将DSP 仿真器的JTAG 插头与SEED-DEC6437 单元的J9 相连接;3. 打开SEED-DTK6437 的电源。

DSP实验报告2(精)

DSP实验报告2(精)

实验报告2 ——DSP汇编语言编程基础一.实验目的1、了解DSP 的寻址方式;2、了解DSP 的汇编语言与C 语言混合编程。

二、实验器材1、安装有CCS 的PC 机一台;三、实验内容1、建立一个工程;2、用汇编语言编程实现一个可被C 程序调用的例程。

四、实验步骤1、汇编语言和C 语言混合编程:①运行CCS ,建立一个工程,取名exp2a ,并保存到c:\ti\myprojects\xxx\Experiment2 \目录下。

②编辑如下C 文件,取名exp2a.c 并保存到c:\ti\myprojects\xxx\Experiment2\exp2a\目录。

/* Assembly routine */extern int sum(int *);/* define x[] as global array */int x[2]={0x1234,0x4321};/* define result s as global variable */int s;void main(){s = sum (x); /* return sum product */}③编辑如下汇编文件,取名exp2_sum.asm 并保存到c:\ti\myprojects\xxx\Experiment2\ exp2a\目录。

* * * * * * * * * * * * * * * * * * * * * * * * * * * * ** exp2_sum.asm SUM subroutine* called by exp2a.c* Input: Array pointer* Output: Return sum result in T0* * * * * * * * * * * * * * * * * * * * * * * * * * * * *.global _sum_summov *AR0+,AC0 ; AC0 = x[1]add *AR0+,AC0 ; AC0 = x[1]+x[2]mov AC0,T0ret ; Return T0.end④编辑如下链接命令文件,取名link.cmd 并保存到c:\ti\myprojects\xxx\Experiment2 \exp2a\目录。

哈理工电技专业DSP实验报告

哈理工电技专业DSP实验报告

哈尔滨理工大学实验报告课程名称:DSP应用技术学院:自动化学院专业班级:电技13-3学生姓名:李万崇学号:1312020308指导教师:马静实验一实验名称CCS基本操作实验时间2016.6.17实验类型地点新主楼C212姓名李万崇学号1312020308班级电技13-3同实验者学号班级一.实验目的:1.掌握Code Composer Studio2.21的安装和配置步骤过程。

2.了解DSP开发系统和计算机与目标系统的连接方法。

3.了解Code Composer Studio软件的操作环境和基本功能,了解TMS320C55xx软件开发过程。

⑴学习创建工程和管理工程的方法。

⑵了解基本的编译和调试功能。

⑶学习使用观察窗口。

⑷了解图形功能的使用。

二.实验原理:*开发TMS320C55xx应用系统一般需要以下几个调试工具来完成:-软件集成开发环境(Code Composer Studio2.21):完成系统的软件开发,进行软件和硬件仿真调试。

它也是硬件调试的辅助手段。

-开发系统(ICETEK5100-USB或ICETEK5100-PP):实现硬件仿真调试时与硬件系统的通信,控制和读取硬件系统的状态和数据。

-评估模块(ICETEK VC5509-A或ICETEK VC5509-C等):提供软件运行和调试的平台和用户系统开发的参照。

*Code Composer Studio2.21主要完成系统的软件开发和调试。

它提供一整套的程序编制、维护、编译、调试环境,能将汇编语言和C语言程序编译连接生成COFF(公共目标文件)格式的可执行文件,并能将程序下载到目标DSP上运行调试。

*用户系统的软件部分可以由CCS建立的工程文件进行管理,工程一般包含以下几种文件:-源程序文件:C语言或汇编语言文件(*.C或*.ASM)-头文件(*.H)-命令文件(*.CMD)-库文件(*.LIB,*.OBJ)三.实验设备:1.PC机一台;2.ICETEK-VC5509-A-USB-EDU实验箱一台。

DSP原理与应用_实验报告

DSP原理与应用_实验报告

《DSP原理与应用》实验报告实验一姓名:学号:同组成员:日期:地点:实验成绩:实验名称:MAPLAB IDE使用基础和跑马灯实验实验内容:1. 熟悉使用MPLAB开发工具开发软件的过程与基本操作。

2. 熟悉使用MPLAB SIM进行程序调试。

3. 了解和掌握I/O端口的使用和编程。

实验要求:1. 建立新的工程,添加源文件、头文件和链接命令文件,编译和软件仿真。

2. 熟悉单步调试、断点设置、Watch窗口和StopWatch等功能。

3. 编写程序使LED指示灯闪烁、轮流点亮。

4. 实现延迟功能。

实验关键代码及注释:实验过程中遇到的问题及解决方法:《DSP原理与应用》实验报告实验二姓名:学号:同组成员:日期:地点:实验成绩:实验名称:跑马灯周期计数实验实验内容:1. 了解和掌握dsPIC的定时器使用和编程;2. 了解和掌握8位移位寄存器CD4094和数码管的使用。

实验要求:1. 编写程序使LED指示灯轮流点亮,准确控制马灯时间间隔为1/5秒;2. 通过软件计算马灯周期,操作CD4094在数码管上显示周期数字,实现数据进位。

实验关键代码及注释:实验过程中遇到的问题及解决方法:《DSP原理与应用》实验报告实验三姓名:学号:同组成员:日期:地点:实验成绩:实验名称:中断编程实验实验内容:1. 了解和掌握dsPIC的定时器中断使用和编程;2. 熟练掌握8位移位寄存器CD4094和数码管的使用。

实验要求:1. 用Timer1中断实现LED指示灯轮流点亮,时间间隔为1/5秒;2. 再实现跑马灯的同时,用Timer2中断使数码管显示秒表,计时格式000.0,即最低位为1/10秒。

实验关键代码及注释:实验过程中遇到的问题及解决方法:《DSP原理与应用》实验报告实验四姓名:学号:同组成员:日期:地点:实验成绩:实验名称:电机控制综合实验实验内容:1. 熟练掌握实验二和实验三所涉及的知识;2. 了解和掌握dsPIC的PWM模块使用和编程;3. 熟练掌握8位串行输出移位寄存器74HC165的使用。

哈工大通信原理实验报告

哈工大通信原理实验报告

H a r b i n I n s t i t u t e o f T e c h n o l o g y通信原理实验报告课程名称:通信原理院系:电子与信息工程学院班级:姓名:学号:指导教师:倪洁实验时间: 2015年 12月哈尔滨工业大学实验二帧同步信号提取实验一、实验目的1.了解帧同步的提取过程。

2.了解同步保护原理。

3.掌握假同步,漏同步,捕捉动态和维持态的概念。

二、实验原理时分复用通信系统,为了正确的传输信息,必须在信息码流中插入一定数量的帧同步码,帧同步码应具有良好的识别特性。

本实验系统帧长为24比特,划分三个时隙,每个时隙长度8比特,在每帧的第一时隙的第2至第8码元插入七位巴克码作为同步吗。

第9至24比特传输两路数据脉冲。

帧结构为:X11100101010101011001100,首位为无定义位。

本实验模块由信号源,巴克码识别器和帧同步保护电路三部分构成,信号源提供时钟脉冲和数字基带脉冲,巴克码识别器包裹移位寄存器、相加器和判决器。

其余部分完成同步保护功能。

三、实验内容1.观察帧同步码无错误时帧同步器的维持状态。

2.观察帧同步码有一位错误时帧同步器的维持态和捕捉态3.观察帧同步器假同步现象和同步保护器。

四、实验步骤1.开关K301接2.3脚。

K302接1.2脚。

2.接通电源,按下按键K1,K2,K300,使电路工作。

3.观察同步器的同步状态将信号源中的SW001,SW002,SW003设置为11110010,10101010,11001100(其中第2-8位为帧同步码),SW301设置为1110,示波器1通道接TP303,2通道接TP302,TP304, TP305,TP306,观察上述信号波形,使帧同步码(SW001的2-8位)措一位,重新做上述观察,此时除了TP303外,个点波形不变,说明同步状态仍在维持。

4.观察同步器的失步状态。

关闭电源,断开K302,在开电源(三个发光二极管全亮)。

DSP实验报告_百度文库(精)

DSP实验报告_百度文库(精)

实验0 实验设备安装才CCS调试环境实验目的:按照实验讲义操作步骤,打开CCS软件,熟悉软件工作环境,了解整个工作环境内容,有助于提高以后实验的操作性和正确性。

实验步骤:以演示实验一为例:1.使用配送的并口电缆线连接好计算机并口与实验箱并口,打开实验箱电源;2.启动CCS,点击主菜单“Project->Open”在目录“C5000QuickStart\sinewave\”下打开工程文件sinewave.pjt,然后点击主菜单“Project->Build”编译,然后点击主菜单“File->Load Program”装载debug目录下的程序sinewave.out;3.打开源文件exer3.asm,在注释行“set breakpoint in CCS !!!”语句的NOP处单击右键弹出菜单,选择“Toggle breakpoint”加入红色的断点,如下图所示;4.点击主菜单“View->Graph->Time/Frequency…”,屏幕会出现图形窗口设置对话框5.双击Start Address,将其改为y0;双击Acquisition Buffer Size,将其改为1;DSP Data Type设置成16-bit signed integer,如下图所示;6.点击主菜单“Windows->Tile Horizontally”,排列好窗口,便于观察7.点击主菜单“Debug->Animate”或按F12键动画运行程序,即可观察到实验结果:心得体会:通过对演示实验的练习,让自己更进一步对CCS软件的运行环境、编译过程、装载过程、属性设置、动画演示、实验结果的观察有一个醒目的了解和熟悉的操作方法。

熟悉了DSP实验箱基本模块。

让我对DSP课程产生了浓厚的学习兴趣,课程学习和实验操作结合为一体的学习体系,使我更好的领悟到DSP课程的实用性和趣味性。

实验二基本算数运算2.1 实验目的和要求加、减、乘、除是数字信号处理中最基本的算术运算。

DSP实验报告

DSP实验报告

哈尔滨工程大学信息与通信工程学院实验名称:DSP原理与应用实验班级:20100813学号:**********学生姓名:**实验一自相关函数实验一.实验目的:熟悉C语言编程和VDSP编译环境。

学会用C语言编程实现自相关函数对正弦信号的应用。

二.实验要求:用VDSP集成环境产生一个正弦信号,然后用自相关函数对其进行处理,观察自相关函数运算后的波形。

自相关函数:自相关函数是信号在时域中特性的平均度量,它用来描述信号在一个时刻的取值与另一时刻取值的依赖关系,其定义式为对于周期信号,积分平均时间T为信号周期。

对于有限时间内的信号,例如单个脉冲,当T趋于无穷大时,该平均值将趋于零,这时自相关函数可用下式计算自相关函数就是信号x(t)和它的时移信号x(t+τ)乘积的平均值,它是时移变量τ的函数。

例如信号的自相关函数为由此可见,正弦(余弦)信号的自相关函数同样是一个余弦函数。

它保留了原信号的频率成分,其频率不变,幅值等于原幅值平方的一半,即等于该频率分量的平均功率,但丢失了相角的信息。

三.实验结果:正弦信号经过自相关后的波形四.实验结论:自相关函数应用在检测信号回声(反射)。

若在宽带信号中存在着带时间延迟的回声,那么该信号的自相关函数将在处也达到峰值(另一峰值在处),这样可根据确定反射体的位置,同时自相关系数在处的值将给出反射信号相对强度的度量。

实验二 包络检波实验一.实验目的:熟悉C 语言编程和VDSP 编译环境。

学会用C 语言编程实现对信号进行包络提取。

二.实验要求:一个低频信号a(t)调制在一个高频信号t 0cos ω上,如图所示,这个信号表示为t t a t y 0cos )()(ω⋅= 低频信号和高频载波是相乘关系,将低频信号a(t)提取出来的过程就是求解包络.1) 将y(t)平方处理, t t a t a t t a t 02202222cos )()(cos )()(y ωω⋅+=⋅=平方后可以看到,变成了低频信号平方分量和一个高频信号之和.这样将信号通过一个低通滤波器就可以得到低频分量了.2) Hilbert变换3) 模拟电容充放电的方法三.实验结果:原始的包络信号:包络检波后的信号:四.实验结论:包络检波的应用在于从调幅波包络中提取调制信号的过程:先对调幅波进行整流,得到波包络变化的脉动电流,再以低通滤波器滤除去高频分量,便得到调制信号。

哈工大通信生产实习报告

哈工大通信生产实习报告

哈尔滨工业大学通信生产实习报告一、实习目的和意义本次生产实习是哈尔滨工业大学通信工程专业的一项重要实践教学活动。

通过实习,我们希望能够深入了解通信原理在实际工程中的应用,掌握通信设备的基本操作和维护方法,提高我们的动手能力和实际问题解决能力,培养我们的工程实践观念和团队合作精神。

二、实习内容和过程在实习期间,我们参观了哈尔滨工业大学通信实验室和某通信设备制造商的生产车间。

在实验室,我们参观了多种通信设备,如无线通信基站、光纤通信设备等,并了解了它们的工作原理和应用场景。

在生产车间,我们了解了通信设备的生产流程,包括原材料采购、加工制造、质量检测等环节,并亲自参与了部分生产操作。

此外,我们还参加了通信设备调试和维护的实践活动。

在指导老师的带领下,我们学习了如何使用通信测试仪器进行设备性能测试,如何分析测试数据,以及如何解决通信故障。

通过这些实践活动,我们不仅掌握了通信设备的基本操作方法,还学会了如何运用所学知识解决实际问题。

三、实习收获和体会通过这次生产实习,我们收获颇丰。

首先,我们深入了解了通信设备的生产过程,认识到理论知识与实际应用之间的联系。

其次,我们通过实际操作,提高了自己的动手能力和实际问题解决能力。

再次,我们学会了如何团队合作,共同完成任务。

最后,我们对自己的职业规划有了更清晰的认识,明确了自己未来的发展方向。

总之,这次生产实习让我们亲身体验到了通信工程的魅力,提高了我们的专业素养,为我们将来的学习和工作打下了坚实的基础。

我们将珍惜这次实习的经历,继续努力学习,为实现自己的职业目标努力奋斗。

四、实习总结本次生产实习是哈尔滨工业大学通信工程专业的一项重要实践教学活动。

通过实习,我们深入了解了通信设备的生产过程,掌握了通信设备的基本操作和维护方法,提高了自己的动手能力和实际问题解决能力。

同时,我们也学会了团队合作,对自己的职业规划有了更清晰的认识。

我们将珍惜这次实习的经历,继续努力学习,为实现自己的职业目标努力奋斗。

DSP-通用异步串行口(UART)实验

DSP-通用异步串行口(UART)实验

班级学号姓名同组人实验日期室温大气压成绩实验六通用异步串行口(UART)实验一、实验目的1、掌握异步串行通信协议;2、掌握2812异步收发器模块的应用。

二、实验设备1、一台装有CCS软件的计算机;2、DSP试验箱的TMS320F2812主控板;3、DSP硬件仿真器。

三、实验原理1、异步串行通信协议在传输数据前,数据线处于高电平状态,这称为表示态。

传输开始后,数据线由高电平转为低电平状态,这称为起始位;起始位后面接着5-8个信息位;信息为后面是校验位;校验位后是停止位“1”。

传输完毕后,可以立即开始下一个字符的传输;否则,数据线再次进入标识态。

上面提到的信息位的位数(5~8位)、停止位的位数(1位、1.5位或2位)、校验的方式(奇偶验、偶校验或不校验)等参数都可以根据不同需要进行设置,但对于同一个传输系统中的首发两端来说,这些参数必须保持一致。

异步串行通信方式中另一个重要的参数是波特率。

在一般的“0”“1”系统中,波特率就是每秒钟传输的位数。

国际上规定了一个标准波特率系列,他们是最常用的波特率。

标准波特率系列为110、300、600、1200、1800、2400、4800、9600和19200。

发送端和接收端必须设置统一的波特率,否则无法正确接收数据。

2、电平转换RS-232-C标准中规定-5V~-15V位逻辑“1”,+5V~+15V位逻辑“0”,因此要用专门的芯片完成TTL电平与RS-232电平的转换,如MAX3232。

3、串行口调试助手该计算机端程序可以监测计算机串口接收和发送数据的情况。

本实验中需要用该程序帮助观察实验结果。

四、实验步骤1、用串口线连接实验箱的 UART 模块与计算机串行口;2、在 CCS 环境中打开本实验的工程Example_sci.pjt,编译,生成输出文件,通过仿真器把执行代码下载到DSP 芯片;3、在计算机上运行串口调试助手程序,设置串口为Com1,波特率为9600,校验为None,停止位为1 位,十六进制显示,以待观察从DSP 往PC 串口发送的数据;4、选择“View”->“memory”,起始地址设为“0x1000”,“Page”项设置为“I/O”,以待观察寄存器的值;5、在串口调试助手程序的发送窗口键入任意字符(如“5A”)以待发送至DSP,并且选择手动发送模式(即不选中自动发送项)和十六进制发送;五、实验总结本实验为通用异步串行接口(UART)实验,运行程序后能通过在串口调试助手程序中,在接收窗口中可以观察正确接收到0X00~0XFF的数据。

DSP技术与应用实验报告

DSP技术与应用实验报告

DSP实验报告姓名:年级:专业:学号:任课教师:目录实验一、CCS入门实验实验二、编写一个以C语言为基础的DSP程序实验三、异步串口通信实验四、A/D及D/A转换实验五、PID算法控制实验实验六、快速傅里叶变换(FFT)算法实验一、CCS入门实验Project/new;输入:volume,按Finish;Project/add files to project;查找范围:C:\CCStudio_v3.3\tutorial\dsk2812\volume1;文件类型:all files;分别添加:Volume.c、Load.asm、Vectors.asm、Volume.cmd;在C:\CCStudio_v3.3\C2000\cgtools\lib中添加:rts2800_ml.lib;将C:\CCStudio_v3.3\tutorial\dsk2812\volume1\volume.h复制到:C:\CCStudio_v3.3\C2000\cgtools\include文件夹中;Project/rebuild all;File/load program;打开C:\CCStudio_v3.3\MyProjects\volume\Debug\volume.out;鼠标双击:volume.c,找到dataIO(),右击,运行toggle software breakpoint;File/data,查找范围:C:\CCStudio_v3.3\tutorial\dsk2812\volume1;文件类型:all files,打开:sina.dat,输入:0x8000、0x2000;View/memory,0x8000;View/graph/time\frequency;如下图波形:频谱实验二、编写一个以C语言为基础的DSP程序一.实验目的1.学习用标准C语言编制程序;了解常用的C语言程序设计方法和组成部分。

2.学习编制连接命令文件,并用来控制代码的连接。

哈尔滨工业大学DSP课程报告

哈尔滨工业大学DSP课程报告

2015年秋季学期《DSP原理及应用》课程课程设计报告院系:航天工程与力学系班号:1218201_____学号:1122110326___XX:高小宁______2016年1月13日审阅教师:考核成绩:________________题目一:结合学习过的DSP基本知识,试论述如果采用DSP为核心器件设计系统,需要考虑哪些性能指标、遵循哪些设计原则?一、运算速度:首先我们要确定数字信号处理的算法,算法确定以后其运算量和完成时间也就大体确定了,根据运算量及其时间要求就可以估算DSP芯片运算速度的下限。

在选择DSP芯片时,各个芯片运算速度的衡量标准主要有:1、MIPS(Millions of Instructions Per Second),百万条指令/秒,一般DSP为20~100MIPS,使用超长指令字的TMS320B2XX 为2400MIPS。

必须指出的是这是定点 DSP芯片运算速度的衡量指标,应注意的是,厂家提供的该指标一般是指峰值指标,因此,系统设计时应留有一定的裕量。

2、MOPS(Millions of Operations Per Second),每秒执行百万操作。

这个指标的问题是什么是一次操作,通常操作包括CPU操作外,还包括地址计算、DMA访问数据传输、I/O操作等。

一般说MOPS越高意味着乘积-累加和运算速度越快。

MOPS可以对DSP 芯片的性能进行综合描述。

3、MFLOPS (Million Floating Point Operations Per Second),百万次浮点操作/秒,这是衡量浮点DSP芯片的重要指标。

例如TMS320C31在主频为40MHz时,处理能力为40MFLOPS, TMS320C6701在指令周期为6ns时,单精度运算可达1GFLOPS。

浮点操作包括浮点乘法、加法、减法、存储等操作。

应注意的是,厂家提供的该指标一般是指峰值指标,因此,系统设计时应注意留有一定的裕量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.串行通信接口设置
CPU进行串行通信时可以采用两种方式,一种是轮询方式,即CPU不断查询串口状态进行接收和发送,缺点是占用CPU时间太多;另一种是中断方式,SCI的接收和发送都可以产生中断信号,这样CPU可以在完成其他一些工作的同时进行串行通信。
串行通信接口波特率计算,内部生成的串行时钟由系统时钟SYSCLK频率和波特率选择寄存器决定。串行通信接口使用16位波特率选择寄存器,数据传输的速度可以被编程为65000多种不同的方式。
for ( i=0;i<16;i++ )
{
do
{
uWork=(*SCICTL2);
} while ( uWork&0x0c0 != 0x0c0 );
(*SCITXBUF)=cString[i];
wait(1024);
}
}
else
{
for ( i=0;i<10;i++ )
{
do
{
uWork=(*SCICTL2);
wait(1024);
for ( i=9;i<16;i++ )
{
do
{
uWork=(*SCICTL2);
} while ( uWork&0x0c0 != 0x0c0 )
(*SCITXBUF)=cString[i];
wait(1024);
}
}
k=0; bReceive=0;
while ( 1 )
{
do
(*SCIHBAUD)=0x02; /*波特率=208H,40MHz */
(*SCILBAUD)=0x08; /* 208h=40*10^6/(9600*8)-1 */
(*SCICTL1)=0x23; /*使能发送和接收,复位SCI */
while ( 1 )
{
if ( bReceive==0 )
{
void wait(int nWait);
char cString[17]={"Hello PC!, Over|" }, cReceive, cBuffer[17], cAnswer[16] = {"Oh, you say"};
int bReceive,nLen;
main()
{
unsigned int uWork;
{
do
{
uWork=(*SCICTL2);
} while ( uWork&0x0c0 != 0x0c0 );
(*SCITXBUF)=cBuffer[i];
wait(1024);
}
do
{
uWork=(*SCICTL2);
} while ( uWork&0x0c0 != 0x0c0 );
(*SCITXBUF)='\"';
*SCSR1=0x81fe;/*打开所有外设,设置时钟频率为40MHz */
uWork=(*MCRA);
uWork|=0x03;/* use SCITXD,SCIRXD */
(*MCRA)=uWork;
(*SCICCR)=0x07;/* 8位字符,1停止位,无校验*/
(*SCICTL1)=0x03;/*使能发送和接收*/
2. ICETEK-LF2407-A板异步串口设计
由于DSP内部包含了异步串行通信控制模块,所以在板上只需加上驱动电路部分即可。驱动电路主要完成将SCI输出的0-3.3V电平转换成异步串口电平的工作。转换电平的工作由MAX232芯片完成,但由于它是5V器件所以它同DSP间的信号线必须有电平转换,此板采用的是74LS245。
(*SCITXBUF)=cString[i];
wait(1024);
}
NotRec=0;
k=0;
}
}
}
}
void interrupt gpSCI(void)/*中断服务程序*/
{
unsigned int uWork,Rec;
uWork=(*PIVR);/*读外设中断向量寄存器*/
switch(uWork)
int i,k;
bReceive=0;
asm(" setc INTM");
asm(" clrc SXM");
asm(" clrc OVM");
*WDCR=0x6f;
*WDKEY=0x5555;
*WDKEY=0xaaaa; /*关闭看门狗中断*/
*SCSR1=0x81fe; /*打开所有外设,设置时钟频率为40MHz */
四.实验程序
/* 2407A板:将JP11和JP14短接到2-3;
使用直连的串口通信电缆;
启动串口调试助手.exe;
PC机发送一个"."为结束标志*/
程序见附页。
五.实验步骤
1.实验准备
⑴.连接设备
关闭计算机和实验箱电源;
检查ICETEK-LF2407-A板上JP6的位置,应连接在1-2位置(靠近DSP芯片端),即设置DSP工作在MP方式;
关闭实验箱上三个开关;如使用PP型仿真器则用附带的并口连线连接计算机并口和仿真器相应接口;
用附带的串行通信电缆连接计算机COM端口和ICETEK-LF2407-A板上P6九针接头。
⑵.开启设备
打开计算机电源;
打开实验箱电源开关,打开ICETEK-LF2407-A板上电源开关,注意板上指示灯DS1灭、DS2和DS3亮;
运行程序后,切换窗口到“串口调试助手”;在“串口调试助手”的接收窗口中可看到DSP通过SCI发送来的“Hello PC!,Over|”字样;在“发送的字符/数据”栏中输入一些要发送到DSP的字符串,以“.”字符结尾;然后单击“手动发送”按钮;DSP在接收到PC机的信息后会自动进行回答。
6.结束程序运行退出。
4.运行“串口调试助手”
利用桌面上“我的电脑”,找到D:\2407EDULab\Lab20-SCI目录中的程序“串口调试助手V2.0B.exe”,双击它启动;设置“串口调试助手”的串行端口为实际连接的计算机COM端口,设置波特率为9600,设置传输方式为8位、无校验、1个停止位。
5.运行程序观察结果
uWork=(*MCRA);
uWork|=0x03; /* use SCITXD,SCIRXD */
(*MCRA)=uWork;
(*SCICCR)=0x07; /* 8位字符,1停止位,无校验*/
(*SCICTL1)=0x03; /*使能发送和接收*/
(*SCICTL2)=0x00; /*禁止接收和发送中断*/
六.实验结果
通过DSP传送到PC机上的信息,可以看出:SCI正确工作。当第一打开时候,串口收到“hello pc!over”,通过串口手动发送一段字母之后,会被返送回来。
七.问题与思考
请考虑用中断方式设计程序完成异步串行通信。
修改的程序见附页。
未修改的程序(查询方式):
#include "2407c.h"
for ( i=0;i<16;i++ )
{
do
{
uWork=(*SCICTL2);
} while ( uWork&0x0c0 != 0x0c0 );
(*SCITXBUF)=cString[i];
wait(1024);
}
while ( 1 )
{
unsigned int uWork;
uWork=(*PIVR);/*读外设中断向量寄存器*/
void wait(int nWait);
char cString[17]={ "Hello PC!,Over|" };
char cReceive,cBuffer[17],cAnswer[16]={"Oh,you say"};
int nLen;
int k=0;
int NotRec=0;
unsigned int flag=0;
main()
{
unsigned int uWork;
int i;
asm(" setc INTM"); /*关中断,进行关键设置时不允许发生中断,以免干扰*/
asm(" clrc SXM");
asm(" clrc OVM");
*WDCR=0x6f;
*WDKEY=0x5555;
*WDKEY=0xaaaa; /*关闭看门狗中断*/
{
case 0x06:/* SCI收*/
if(!NotRec)
{
cReceive=(*SCIRXBUF);
cBuffer[k]=cReceive;
if ( cReceive=='.' )
{
flag = 1 ;
NotRec = 1 ;
cBuffer[k]='\0';
} while ( uWork&0x0c0 != 0x0c0 );
(*SCITXBUF)=cAnswer[i];
wait(1024);
}
do
{
uWork=(*SCICTL2);
} while ( uWork&0x0c0 != 0x0c0 );
(*SCITXBUF)='\"';
for ( i=0;i<nLen;i++ )
{
uWork=(*SCIRXST);
} while ( (uWork&0x40)==0 );
cReceive=(*SCIRXBUF);
cBuffer[k]=cReceive;
相关文档
最新文档